default.nix 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. { inputs
  2. , lib
  3. , pkgs
  4. , ...
  5. }:
  6. let
  7. # Define `recursiveUpdateMany` if not present
  8. recursiveUpdateMany = sets: lib.fold lib.attrsets.recursiveUpdate { } sets;
  9. # Merge all plugin configurations directly from imports
  10. nixvim = recursiveUpdateMany [
  11. {
  12. enable = true;
  13. defaultEditor = true;
  14. vimdiffAlias = true;
  15. extraPlugins = with pkgs; [
  16. (vimUtils.buildVimPlugin rec {
  17. pname = "nord.nvim";
  18. version = "1.1.0";
  19. src = fetchFromGitHub {
  20. owner = "gbprod";
  21. repo = "nord.nvim";
  22. rev = "v${version}";
  23. sha256 = "sha256-gSAXDXhxoigWl6qMAJ0yX59bnkOehVA1MADMeHoTHDo=";
  24. };
  25. meta.homepage = "https://github.com/gbprod/nord.nvim";
  26. })
  27. vimPlugins.vim-tmux-focus-events
  28. ];
  29. extraConfigLua = ''
  30. require("nord").setup({
  31. transparent = true,
  32. })
  33. vim.cmd.colorscheme("nord")
  34. '';
  35. }
  36. (import ./keymaps.nix)
  37. (import ./options.nix)
  38. (import ./plugins.nix)
  39. ];
  40. in
  41. {
  42. imports = [
  43. inputs.nixvim.homeManagerModules.nixvim
  44. ];
  45. programs.nixvim = nixvim;
  46. }