Packages / neovim / Debian 12

Install guide · Debian 12 (bookworm)printed 27 Oct 2026, 07:25 UTC

Install Neovim 0.12 on Debian 12

Debian 12 ships Neovim 0.7.2. The current release is 0.12.6. freshdeb builds it for bookworm from upstream's release with Debian's packaging, so it replaces the distribution's package in place and updates with apt upgrade like the rest of the system.

Debian 12 ships
0.7.20.7.2-7
main
0.12.6follows every upstream release, minors and majors included. Currently 0.12.6.
Built for
amd64 and arm64, natively

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 for bookworm

sudo tee /etc/apt/sources.list.d/freshdeb-neovim.sources >/dev/null <<EOF
Types: deb
URIs: https://deb.freshdeb.com/neovim
Suites: bookworm
Components: main
Signed-By: /etc/apt/keyrings/freshdeb-archive-keyring.gpg
EOF

3Install

sudo apt update && sudo apt install neovim
apt policy neovim   # expect 0.12.6-1+freshdeb~deb12

Already on Debian 12's Neovim? The same command upgrades it: the freshdeb version sorts higher. What's different from Debian's package.

Upgrading from Neovim 0.7.2

What changed between Debian 12's 0.7.2 and 0.12.6 that you may notice. Configuration and data stay where Debian put them.

Since 0.10
A new default color scheme (:colorscheme vim brings back the old one), and termguicolors is on when the terminal supports 24-bit color.
Since 0.11
Diagnostics no longer show as virtual text by default (vim.diagnostic.config({ virtual_text = true }) turns it back on), and new default LSP mappings start with gr (grn, grr, gri, gra), next to gO.
Since 0.12
<C-R> in Insert mode inserts a register literally, like a paste. <C-R>=@x gives the old behaviour.
Also
Your configuration in ~/.config/nvim carries over. Upstream's news lists every change.

Going back to 0.7.2

Delete /etc/apt/sources.list.d/freshdeb-neovim.sources, run sudo apt update, then sudo apt install neovim=0.7.2-7: apt asks before it downgrades. Name the other neovim packages you installed with their Debian 12 version too.

Why a package

Upstream's AppImage and tarball are the same bundled build, but they don't update with apt and don't put nvim in /usr/bin. This package does both, and keeps Debian's split into neovim and neovim-runtime.

Neovim elsewhere

Maintained by Blendbyte

Blendbyte builds cloud infrastructure, web apps, and developer tools. We've been shipping software to production for 20+ years.

These packages run in our own stack, which is why we keep them maintained. Issues and PRs get read. Good ones get merged.

Also from Blendbytenginx-modules.com: pre-built nginx dynamic modules (Brotli, GeoIP2, ModSecurity and more) for nginx.org's nginx, on the same Debian and Ubuntu releases.

Tindra: self-hosted error tracking and monitoring that works with Sentry SDKs. Packaged here, like everything else.