Installation
ProGit is in public beta (v0.8.0). Pre-built binaries are available for Linux x86_64 via three install rails. Other platforms can build from source.
One-line installer (Linux / macOS)
Section titled “One-line installer (Linux / macOS)”curl -fsSL https://progit.dev/install.sh | shInstalls to ~/.local/bin (or /usr/local/bin if writable). Downloads the signed binary from the sovereign Forgejo, verifies the minisign signature when minisign is available.
Options:
# Specific versioncurl -fsSL .../install.sh | sh -s -- --version v0.8.0-beta
# Custom install directorycurl -fsSL .../install.sh | sh -s -- --dir ~/.cargo/bin
# Force overwrite existing installcurl -fsSL .../install.sh | sh -s -- --forceHomebrew (macOS / Linux)
Section titled “Homebrew (macOS / Linux)”brew install sovereign-society/tap/progitArch Linux (AUR)
Section titled “Arch Linux (AUR)”paru -S progit-bin# oryay -S progit-binBuild from Source
Section titled “Build from Source”For platforms without pre-built binaries (aarch64, macOS, Windows — coming soon), or if you prefer to compile yourself:
Prerequisites
Section titled “Prerequisites”| Tool | Minimum | Notes |
|---|---|---|
| Rust | 1.85+ | Install via rustup.rs |
| Git | Any | To clone the repo |
Optional for AI features: Ollama running locally.
# 1. Clonegit clone https://git.sovereign-society.org/ProGit/progit.gitcd progit
# 2. Build (release, optimised for size)cargo build --release
# 3. Install to PATHsudo cp target/release/prog /usr/local/bin/progThe binary is called prog. Default build is under 7 MB.
With OS keyring support
Section titled “With OS keyring support”To store forge tokens in your system keyring (GNOME Keyring / KWallet) instead of environment variables:
cargo build --release --features keyring-secretssudo cp target/release/prog /usr/local/bin/progWith sovereign data plane (opt-in)
Section titled “With sovereign data plane (opt-in)”The sovereign git data plane adds ~3 MB and enables local git hosting via gix. Most users don’t need this — the default binary syncs to GitHub/GitLab/Forgejo over HTTP.
cargo build --release --features forge-backendVerify
Section titled “Verify”prog --versionExpected output:
prog 0.8.0-betaToken configuration (for forge sync)
Section titled “Token configuration (for forge sync)”ProGit reads tokens from environment variables — no credentials stored in config files:
export PROGIT_TOKEN="your-token" # generic (tried first)export GITLAB_TOKEN="your-token" # GitLab / self-hostedexport FORGEJO_TOKEN="your-token" # Forgejo / GiteaAdd to ~/.bashrc or ~/.zshrc to persist across sessions.
Updating
Section titled “Updating”Pre-built binary:
curl -fsSL https://progit.dev/install.sh | sh -s -- --force# or: brew upgrade progit# or: paru -S progit-binFrom source:
cd progitgit pullcargo build --releasesudo cp target/release/prog /usr/local/bin/progTroubleshooting
Section titled “Troubleshooting”prog: command not found
Section titled “prog: command not found”/usr/local/bin or ~/.local/bin isn’t in your PATH:
echo 'export PATH="$PATH:$HOME/.local/bin"' >> ~/.zshrcsource ~/.zshrcBuild fails with linker errors
Section titled “Build fails with linker errors”Install build essentials:
# Debian / Ubuntusudo apt install build-essential pkg-config libssl-dev
# Archsudo pacman -S base-devel openssl
# Fedorasudo dnf install gcc openssl-develRust is out of date
Section titled “Rust is out of date”rustup update stableSignature verification failed
Section titled “Signature verification failed”The binary signature didn’t match. This could indicate a tampered download. Report to [email protected].
Next Steps
Section titled “Next Steps”- Quick Start — create your first issue in 60 seconds
- Configuration — themes, sync, plugins
- Keybindings — full keyboard reference