this repo has no description
nix
at main 56 lines 1.7 kB view raw
1{ lib, ... }: 2let 3 settings = { 4 background = "dark"; 5 expandtab = true; 6 number = true; 7 relativenumber = true; 8 shiftwidth = 4; 9 tabstop = 4; 10 }; 11in 12{ 13 den.aspects.base = { 14 os.programs.vim.enable = true; 15 16 homeManager = 17 { config, pkgs, ... }: 18 let 19 inherit (pkgs) vimPlugins; 20 in 21 { 22 xdg.configFile = { 23 "vim/pack/nix/start/catppuccin-vim".source = vimPlugins.catppuccin-vim; 24 "vim/pack/nix/start/editorconfig-vim".source = vimPlugins.editorconfig-vim; 25 "vim/pack/nix/start/vim-sensible".source = vimPlugins.vim-sensible; 26 "vim/vimrc".text = lib.mkMerge [ 27 '' 28 set background=${settings.background} 29 set ${if settings.expandtab then "" else "no"}expandtab 30 set ${if settings.number then "" else "no"}number 31 set ${if settings.relativenumber then "" else "no"}relativenumber 32 set shiftwidth=${toString settings.shiftwidth} 33 set tabstop=${toString settings.tabstop} 34 '' 35 (builtins.readFile ./vimrc) 36 "colorscheme catppuccin_${config.catppuccin.flavor}" 37 ]; 38 }; 39 programs.vim = { 40 inherit settings; 41 enable = true; 42 plugins = builtins.attrValues { 43 inherit (pkgs.vimPlugins) 44 catppuccin-vim 45 editorconfig-vim 46 vim-sensible 47 ; 48 }; 49 extraConfig = lib.mkMerge [ 50 (builtins.readFile ./vimrc) 51 "colorscheme catppuccin_${config.catppuccin.flavor}" 52 ]; 53 }; 54 }; 55 }; 56}