1{
2 pkgs,
3 config,
4 lib,
5 ...
6}:
7let
8 cfg = config.py.programs.neovim;
9in
10{
11 options.py.programs.neovim.enable = lib.mkEnableOption "Neovim Configuration";
12
13 config.programs.neovim = lib.mkIf cfg.enable {
14 enable = true;
15 package = pkgs.py.nvim;
16 viAlias = true;
17 vimAlias = true;
18 vimdiffAlias = true;
19 withRuby = false;
20 withNodeJs = false;
21 withPython3 = false;
22 extraPackages =
23 [
24 pkgs.bottom
25 pkgs.fd
26 pkgs.gcc
27 pkgs.go
28 pkgs.nodejs
29 ]
30 ++ lib.optionals config.py.profiles.gui.enable [
31 pkgs.ffmpegthumbnailer
32 pkgs.fontpreview
33 pkgs.poppler
34 pkgs.ueberzug
35 ];
36 };
37}