Skip to content

Commit c0b3fce

Browse files
author
Dennis P
committed
docs: update installation
1 parent 3843d70 commit c0b3fce

5 files changed

Lines changed: 124 additions & 10 deletions

File tree

.github/workflows/release.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,9 @@ jobs:
125125
path: artifacts
126126
merge-multiple: true
127127

128+
- name: Copy install script to artifacts
129+
run: cp install.sh artifacts/install.sh
130+
128131
- name: Generate checksums (SHA-256)
129132
run: |
130133
cd artifacts

README.md

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -34,24 +34,35 @@ Ships as a **single self-contained Rust binary** with an optional interactive [r
3434

3535
## Installation
3636

37-
### Prebuilt binary (recommended)
37+
### One-line installer — Linux & macOS
3838

39-
Download the latest binary for your platform from [GitHub Releases](https://github.com/thinkgrid-labs/diffmind/releases):
39+
```bash
40+
curl -fsSL https://github.com/thinkgrid-labs/diffmind/releases/latest/download/install.sh | bash
41+
```
42+
43+
Auto-detects your OS and CPU (Intel or Apple Silicon), downloads the right binary, and installs to `/usr/local/bin`. Pin a specific version:
44+
45+
```bash
46+
VERSION=v0.6.0 curl -fsSL https://github.com/thinkgrid-labs/diffmind/releases/latest/download/install.sh | bash
47+
```
48+
49+
### Windows
50+
51+
Download `diffmind-x86_64-pc-windows-msvc.zip` from [GitHub Releases](https://github.com/thinkgrid-labs/diffmind/releases), extract it, and place `diffmind.exe` on your `PATH`.
52+
53+
### Manual download
4054

4155
| Platform | Asset |
4256
| ------------------- | ------------------------------------------- |
57+
| macOS Apple Silicon | `diffmind-aarch64-apple-darwin.tar.gz` |
58+
| macOS Intel | `diffmind-x86_64-apple-darwin.tar.gz` |
4359
| Linux x86_64 | `diffmind-x86_64-unknown-linux-gnu.tar.gz` |
4460
| Linux ARM64 | `diffmind-aarch64-unknown-linux-gnu.tar.gz` |
45-
| macOS x86_64 | `diffmind-x86_64-apple-darwin.tar.gz` |
46-
| macOS Apple Silicon | `diffmind-aarch64-apple-darwin.tar.gz` |
4761
| Windows x86_64 | `diffmind-x86_64-pc-windows-msvc.zip` |
4862

4963
```bash
50-
# Linux / macOS example
51-
tar -xzf diffmind-x86_64-unknown-linux-gnu.tar.gz
64+
tar -xzf diffmind-<target>.tar.gz
5265
sudo mv diffmind /usr/local/bin/
53-
54-
# Verify
5566
diffmind --version
5667
```
5768

apps/tui-cli/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "diffmind"
3-
version = "0.6.0"
3+
version = "0.6.1"
44
edition = "2021"
55
description = "Local-first AI code review agent — powered by on-device inference"
66

install.sh

Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
#!/usr/bin/env bash
2+
# diffmind installer
3+
# Usage:
4+
# curl -fsSL https://github.com/thinkgrid-labs/diffmind/releases/latest/download/install.sh | bash
5+
#
6+
# Options (env vars):
7+
# VERSION — pin a specific release tag, e.g. VERSION=v0.6.0
8+
# INSTALL_DIR — override install location (default: /usr/local/bin)
9+
10+
set -euo pipefail
11+
12+
REPO="thinkgrid-labs/diffmind"
13+
BIN="diffmind"
14+
INSTALL_DIR="${INSTALL_DIR:-/usr/local/bin}"
15+
VERSION="${VERSION:-latest}"
16+
17+
# ── Detect platform ──────────────────────────────────────────────────────────
18+
19+
OS=$(uname -s)
20+
ARCH=$(uname -m)
21+
22+
case "$OS" in
23+
Darwin)
24+
case "$ARCH" in
25+
x86_64) TARGET="x86_64-apple-darwin" ;;
26+
arm64|aarch64) TARGET="aarch64-apple-darwin" ;;
27+
*) echo "error: unsupported macOS architecture: $ARCH" >&2; exit 1 ;;
28+
esac
29+
;;
30+
Linux)
31+
case "$ARCH" in
32+
x86_64) TARGET="x86_64-unknown-linux-gnu" ;;
33+
aarch64) TARGET="aarch64-unknown-linux-gnu" ;;
34+
*) echo "error: unsupported Linux architecture: $ARCH" >&2; exit 1 ;;
35+
esac
36+
;;
37+
*)
38+
echo "error: unsupported OS '$OS'." >&2
39+
echo " For Windows, download the .zip from:" >&2
40+
echo " https://github.com/$REPO/releases/latest" >&2
41+
exit 1
42+
;;
43+
esac
44+
45+
# ── Resolve download URL ─────────────────────────────────────────────────────
46+
47+
if [ "$VERSION" = "latest" ]; then
48+
BASE_URL="https://github.com/$REPO/releases/latest/download"
49+
else
50+
BASE_URL="https://github.com/$REPO/releases/download/$VERSION"
51+
fi
52+
53+
ARCHIVE="${BIN}-${TARGET}.tar.gz"
54+
URL="${BASE_URL}/${ARCHIVE}"
55+
56+
# ── Download & extract ───────────────────────────────────────────────────────
57+
58+
TMP=$(mktemp -d)
59+
trap 'rm -rf "$TMP"' EXIT
60+
61+
echo " Detected $OS / $ARCH$TARGET"
62+
echo " Fetching $URL"
63+
echo ""
64+
65+
if ! curl -fSL --progress-bar "$URL" -o "$TMP/$ARCHIVE"; then
66+
echo "" >&2
67+
echo "error: download failed. Check that version '$VERSION' exists at:" >&2
68+
echo " https://github.com/$REPO/releases" >&2
69+
exit 1
70+
fi
71+
72+
tar -xzf "$TMP/$ARCHIVE" -C "$TMP"
73+
74+
if [ ! -f "$TMP/$BIN" ]; then
75+
echo "error: binary '$BIN' not found in archive" >&2
76+
exit 1
77+
fi
78+
79+
chmod +x "$TMP/$BIN"
80+
81+
# ── Install ──────────────────────────────────────────────────────────────────
82+
83+
if [ -w "$INSTALL_DIR" ]; then
84+
mv "$TMP/$BIN" "$INSTALL_DIR/$BIN"
85+
else
86+
echo " Installing to $INSTALL_DIR (sudo required)"
87+
sudo mv "$TMP/$BIN" "$INSTALL_DIR/$BIN"
88+
fi
89+
90+
# ── Done ─────────────────────────────────────────────────────────────────────
91+
92+
echo ""
93+
echo " ✓ diffmind installed → $INSTALL_DIR/$BIN"
94+
echo ""
95+
"$INSTALL_DIR/$BIN" --version
96+
echo ""
97+
echo " Next steps:"
98+
echo " diffmind download # download AI model (one-time setup)"
99+
echo " diffmind --branch main # review your current branch"
100+
echo ""

packages/core-engine/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "core-engine"
3-
version = "0.6.0"
3+
version = "0.6.1"
44
edition = "2021"
55
description = "diffmind shared AI engine core"
66

0 commit comments

Comments
 (0)