blob: 99c1df99f9169b0f5b62c8a5a152d771b88be960 [file] [log] [blame]
Skyler Grey252927a2022-10-18 22:18:15 +01001args @ { pkgs
2, lib
3, home
4, username
Skyler Grey48e12a42023-02-13 06:51:56 +00005, utils
Skyler Grey252927a2022-10-18 22:18:15 +01006, ...
Skyler Grey48e12a42023-02-13 06:51:56 +00007}: {
Skyler Grey6aa7c262022-08-20 22:22:03 +01008 config = {
Skyler Grey55f84552022-09-05 11:04:39 +01009 environment = {
10 variables = {
Skyler Greyf68931b2022-10-31 00:13:46 +000011 EDITOR = "${pkgs.neovim}/bin/nvim";
Skyler Grey55f84552022-09-05 11:04:39 +010012 };
13 defaultPackages = [
14 pkgs.perl
15 pkgs.rsync
16 pkgs.strace
17 pkgs.neovim
18 ]; # The basic default packages, although with nvim replacing nano
Skyler Grey289997a2023-01-25 21:31:50 +000019 persistence."/nix/persist".users.${username}.directories = [
20 ".local/share/cspell"
21 ".codeium"
22 ".config/nvim/undo"
23 ];
Skyler Grey6aa7c262022-08-20 22:22:03 +010024 };
Skyler Greya7feb6e2022-08-26 06:51:55 +010025 };
26
27 home = {
28 imports = lib.pipe ./neovim [
29 utils.dirsIn
30 utils.importAll
31 (map (f:
32 if builtins.typeOf f == "lambda"
33 then f args
34 else f))
35 ];
36 programs.neovim = {
37 enable = true;
38 viAlias = true;
39 vimAlias = true;
40 vimdiffAlias = true;
41 };
Skyler Greyf68931b2022-10-31 00:13:46 +000042 home = {
Skyler Greye331d692022-11-02 21:33:09 +000043 packages = with pkgs; [ neovide xclip ];
Skyler Greyf68931b2022-10-31 00:13:46 +000044 sessionVariables = {
45 EDITOR = "${home.programs.neovim.finalPackage}/bin/nvim";
46 };
47 };
Skyler Grey6aa7c262022-08-20 22:22:03 +010048 };
49}