Skip to content

Variants

nvix exports three pre-built Neovim binaries. Each is a nixvim package assembled from plugin modules.


bare

Minimal setup for servers, quick edits, and ISOs.

Module What it does
common Options, keymaps, clipboard (OSC52 over SSH), icons, colorscheme (kanagawa), which-key, flash, comment, surround, autopairs, trim, direnv, gx, tmux-navigator, smart-splits, cord (Discord presence), remote-nvim, codesnap, visual-multi, lz-n
buffer Bufferline (tabs), harpoon file navigation
ux Colorizer, dressing (better UI), lastplace, fidget (LSP notifications), windows.nvim
snacks Snacks.nvim: dashboard, explorer, picker, lazygit, bigfile, indent, words, image, notifier, todo-comments, neoscroll

core (default)

Everything in bare, plus:

Module What it does
noice UI replacement for cmdline, messages, notifications
git Gitsigns, diffview, git-conflict
lualine Statusline (transparent, global)
firenvim Neovim in browser textareas (opt-in, takeover = never)
leetcode LeetCode solver (custom fork)
treesitter Treesitter highlighting, context, mini.ai, sleuth
blink-cmp Completion engine (blink.cmp + luasnip), Copilot integration
lang Language servers: Nix, Python, Rust, Lua, Shell, TOML, Typst, Haskell, Web (TS, HTML, CSS, Tailwind, Svelte, JSON, ESLint, Biome), Markdown (obsidian, render-markdown, glow, markdown-preview, img-clip), HTTP (kulala)
lsp All lspconfig servers (auto-enabled, package = null → use system PATH), lspsaga, trouble, tiny-inline-diagnostic, nvim-ufo (folding), conform.nvim (formatter)
autosession Session persistence with git-branch awareness
ai Copilot (suggestions + chatgpt plugin)

full

Everything in core, plus:

Module What it does
tex Vimtex, texlab (LSP), texpresso (live preview), full texlive scheme

Module composition

# packages/default.nix
bareModules = [ common buffer ux snacks ];
coreModules = bareModules ++ [ noice git lualine firenvim leetcode
  treesitter blink-cmp lang lsp autosession ai ];
fullModules = coreModules ++ [ tex ];

Each list is passed to nixvim.legacyPackages.makeNixvimWithModule, which assembles a wrapped nvim binary.