Skip to content

Installation

The fastest install on Linux and macOS, downloads the latest prebuilt binary from GitHub Releases and drops it into ~/.local/bin.

Terminal window
curl -fsSL https://nayji7.github.io/gitoui/install.sh | sh

The installer:

  • Picks the correct binary for your (os, arch) from the latest GitHub Release.
  • Verifies the tarball checksum.
  • Installs to $HOME/.local/bin/gitoui by default.
  • Adds the install directory to your shell PATH if it isn’t already there (prints the line to add if it can’t edit your rc file).
Variable / flagEffect
INSTALL_DIR=...Override the install directory.
GITOUI_VERSION=vX.YPin to a specific tag instead of latest.
NO_COLOR=1Disable ANSI colors in the installer output.
--ascii (or GITOUI_ASCII=1)Force ASCII banner when piping the output.
  1. Check the binary is on your PATH:

    Terminal window
    gitoui --version
  2. cd into any git repo:

    Terminal window
    cd ~/my/repo
  3. Launch:

    Terminal window
    gitoui

    If your terminal supports a graph image protocol (Ghostty / Kitty / iTerm2 / Sixel) you should see the commit graph painted inline. Otherwise it falls back to Unicode glyphs.

First-launch splash, G logomark, gitoui wordmark, and the commit graph

For the best experience, use a Nerd Font - a monospace font patched with extra glyphs for developer icons. Without one, GitHub icons in PR/Issues headers render as blank boxes.

Good choices:

  • JetBrains Mono Nerd Font - excellent box-drawing rendering, ligatures, very readable
  • FiraCode Nerd Font - ligatures, good Unicode coverage
  • Hack Nerd Font - clean and sober, good at small sizes
  • CascadiaCode Nerd Font - Microsoft’s monospace, good emoji support
  • MesloLGS Nerd Font - classic, recommended by Powerlevel10k

Any Nerd Font variant works. Install one, set it as your terminal’s font, and all UI glyphs (graph nodes, spinners, GitHub icons) will render correctly.

gitoui checks crates.io for a newer release once a day at startup. When one is available, you’ll see a prompt:

  • y, runs the update right away (cargo install --force if you installed via cargo, otherwise re-runs install.sh) and re-launches the new binary.
  • n, skips this time. The prompt comes back tomorrow.
  • N, disables the automatic check entirely. Writes [core.option] check_updates = false to your config file so future launches stay silent. To revert, just remove that line from ~/.config/gitoui/config.toml and the check kicks back in on the next launch.

The script and cargo install are both idempotent, you can also trigger an update manually at any time:

Terminal window
gitoui --update # prompt now, regardless of cache / opt-out
curl -fsSL https://nayji7.github.io/gitoui/install.sh | sh
cargo install gitoui --force --locked

gitoui --no-update-check skips the daily check for a single launch without touching your config.

gitoui doesn’t write anywhere except your config dir:

Terminal window
rm ~/.local/bin/gitoui # binary
rm -rf ~/.config/gitoui # config + cached avatars + themes