Packages / lazygit
APT repository · deb.freshdeb.com/lazygitprinted 28 Oct 2026, 02:32 UTC
lazygit
lazygit, a terminal UI for git commands. Bookworm, jammy and noble don't package it at all. One release line for Debian 12 and 13, Ubuntu 22.04, 24.04 and 26.04 on amd64 and arm64.
latest 0.66.2github.com/jesseduffield/lazygitupstream sourcepackaging
Componentmain
follows every upstream release, minors and majors included. Currently 0.66.2.
Not published yet. The first lazygit release is being built. These commands will work once it lands at deb.freshdeb.com/lazygit; the versions shown are the ones package.yaml will publish.
1Trust the signing key (once per machine)
sudo install -d -m 0755 /etc/apt/keyrings curl -fsSL https://deb.freshdeb.com/freshdeb-archive-keyring.gpg \ | sudo tee /etc/apt/keyrings/freshdeb-archive-keyring.gpg >/dev/null
Fingerprint 3BBD F03A 9C0B F890 F8CA 9510 7595 CC55 468F 3161. How to verify.
2Add the source
sudo tee /etc/apt/sources.list.d/freshdeb-lazygit.sources >/dev/null <<EOF
Types: deb
URIs: https://deb.freshdeb.com/lazygit
Suites: $(. /etc/os-release && echo $VERSION_CODENAME)
Components: main
Signed-By: /etc/apt/keyrings/freshdeb-archive-keyring.gpg
EOFWith auto, the shell reads the codename from /etc/os-release on the machine you paste this into.
3Install
sudo apt update && sudo apt install lazygit
apt policy lazygit # expect 0.66.2-1+freshdeb~…Already on the distribution's lazygit? The freshdeb version sorts higher, so apt upgrade moves you over in place. Config and data stay where Debian put them.
Compared with Debian's package
Debian's packaging decides where things go: package names, paths, users, services and how upgrades behave. The build follows upstream's own release builds wherever Debian's differs.
- Build
- Upstream's release build: pinned Go toolchain,
CGO_ENABLED=0, modules verified againstgo.sum, and upstream's version stamps (--versionshows the commit and build date). Upstream's unit tests gate the build. - Debian's build
- Against Debian-packaged Go libraries, some of them Debian's own forks, that only exist in unstable.
- Updates
- lazygit's self-update stays off. apt updates it.
- Layout
- Debian's:
/usr/bin/lazygitand its man page, written for 0.57, solazygit --helplists the newer options.
Packing list
Every release line of lazygit and the distributions it's built for. Each line is its own APT component and only gets the releases it follows (main: every upstream release, minors and majors included). After upstream end of life it stops building but stays installable. Hatched cells have no build: usually that distribution already ships the same or a newer version itself.
| Line | Component | Current | bookwormDebian 12 | trixieDebian 13 | jammyUbuntu 22.04 | nobleUbuntu 24.04 | resoluteUbuntu 26.04 | Support |
|---|---|---|---|---|---|---|---|---|
| main | main | 0.66.2 | built: 0.66.2-1 | built: 0.66.2-1 | built: 0.66.2-1 | built: 0.66.2-1 | built: 0.66.2-1 | – |
Versions follow <upstream>-<revision>+freshdeb~<distro>, distro being deb12, deb13, ubuntu22.04, ubuntu24.04 or ubuntu26.04, for amd64 and arm64. Published versions are never rebuilt or replaced.
Contents
- lazygit
- Simple terminal UI for git commands
Origin
- Upstream
- github.com/jesseduffield/lazygitrelease tags pinned to commit hashes
- Debian packaging
- salsa.debian.org/go-team/packages/lazygitimported unmodified at bbd0028 (0.57.0+ds1-1, unstable)
- Our changes
- overlays under
overlays/for bookworm, trixie, jammy, noble, resolute. - Built for
- bookworm, trixie, jammy, noble, resoluteamd64, arm64, built natively
- Notes
- packaging notes · package.yaml · report an issue
Also in Developer tools
- composer2.10.3Dependency manager for PHP, as upstream's composer.pharmain
- git2.56.0Distributed version control systemmain
- golang1.27.3Go compiler and tools, as the default go, one line per supported minor1.27latest1.26
- neovim0.12.6Vim-based text editor, with its bundled LuaJIT and tree-sitter parsersmain