refactor: home modules

This commit is contained in:
Ryan Yin
2024-03-13 13:32:13 +08:00
parent 5234fd7279
commit 093866a2aa
8 changed files with 32 additions and 27 deletions

View File

@@ -1,7 +1,8 @@
{ {
lib,
inputs, inputs,
darwin-modules, darwin-modules,
home-module ? null, home-modules ? [],
myvars, myvars,
system, system,
genSpecialArgs, genSpecialArgs,
@@ -25,14 +26,18 @@ in
# discard all the default paths, and only use the one from this flake. # discard all the default paths, and only use the one from this flake.
nix.nixPath = lib.mkForce ["/etc/nix/inputs"]; nix.nixPath = lib.mkForce ["/etc/nix/inputs"];
}) })
]
++ (
lib.optionals ((lib.lists.length home-modules) > 0)
[
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.darwinModules.home-manager home-manager.extraSpecialArgs = specialArgs;
{ home-manager.users."${myvars.username}".imports = home-modules;
home-manager.useGlobalPkgs = true; }
home-manager.useUserPackages = true; ]
);
home-manager.extraSpecialArgs = specialArgs;
home-manager.users."${myvars.username}" = home-module;
}
];
} }

View File

@@ -4,7 +4,7 @@
system, system,
genSpecialArgs, genSpecialArgs,
nixos-modules, nixos-modules,
home-module ? null, home-modules ? [],
myvars, myvars,
... ...
}: let }: let
@@ -26,7 +26,7 @@ in
} }
] ]
++ ( ++ (
lib.optionals (home-module != null) lib.optionals ((lib.lists.length home-modules) > 0)
[ [
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
{ {
@@ -34,7 +34,7 @@ in
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = specialArgs; home-manager.extraSpecialArgs = specialArgs;
home-manager.users."${myvars.username}" = home-module; home-manager.users."${myvars.username}".imports = home-modules;
} }
] ]
); );

View File

@@ -22,7 +22,7 @@
"hosts/darwin-${name}" "hosts/darwin-${name}"
]) ])
++ []; ++ [];
home-module.imports = map mylib.relativeToRoot [ home-modules = map mylib.relativeToRoot [
"hosts/darwin-${name}/home.nix" "hosts/darwin-${name}/home.nix"
"home/darwin" "home/darwin"
]; ];

View File

@@ -23,7 +23,7 @@
]) ])
++ []; ++ [];
home-module.imports = map mylib.relativeToRoot [ home-modules = map mylib.relativeToRoot [
"hosts/darwin-${name}/home.nix" "hosts/darwin-${name}/home.nix"
"home/darwin" "home/darwin"
]; ];

View File

@@ -20,7 +20,7 @@
# host specific # host specific
"hosts/12kingdoms-${name}" "hosts/12kingdoms-${name}"
]; ];
home-module.imports = map mylib.relativeToRoot [ home-modules = map mylib.relativeToRoot [
# common # common
"home/linux/desktop.nix" "home/linux/desktop.nix"
# host specific # host specific
@@ -38,11 +38,11 @@
} }
] ]
++ base-modules.nixos-modules; ++ base-modules.nixos-modules;
home-module.imports = home-modules =
[ [
{modules.desktop.i3.enable = true;} {modules.desktop.i3.enable = true;}
] ]
++ base-modules.home-module.imports; ++ base-modules.home-modules;
}; };
modules-hyprland = { modules-hyprland = {
@@ -55,11 +55,11 @@
} }
] ]
++ base-modules.nixos-modules; ++ base-modules.nixos-modules;
home-module.imports = home-modules =
[ [
{modules.desktop.hyprland.enable = true;} {modules.desktop.hyprland.enable = true;}
] ]
++ base-modules.home-module.imports; ++ base-modules.home-modules;
}; };
in { in {
nixosConfigurations = { nixosConfigurations = {

View File

@@ -20,7 +20,7 @@
# host specific # host specific
"hosts/idols-${name}" "hosts/idols-${name}"
]; ];
home-module.imports = map mylib.relativeToRoot [ home-modules = map mylib.relativeToRoot [
# common # common
"home/linux/desktop.nix" "home/linux/desktop.nix"
# host specific # host specific
@@ -38,11 +38,11 @@
} }
] ]
++ base-modules.nixos-modules; ++ base-modules.nixos-modules;
home-module.imports = home-modules =
[ [
{modules.desktop.i3.enable = true;} {modules.desktop.i3.enable = true;}
] ]
++ base-modules.home-module.imports; ++ base-modules.home-modules;
}; };
modules-hyprland = { modules-hyprland = {
@@ -55,11 +55,11 @@
} }
] ]
++ base-modules.nixos-modules; ++ base-modules.nixos-modules;
home-module.imports = home-modules =
[ [
{modules.desktop.hyprland.enable = true;} {modules.desktop.hyprland.enable = true;}
] ]
++ base-modules.home-module.imports; ++ base-modules.home-modules;
}; };
in { in {
nixosConfigurations = { nixosConfigurations = {

View File

@@ -28,7 +28,7 @@
++ [ ++ [
{modules.secrets.server.operation.enable = true;} {modules.secrets.server.operation.enable = true;}
]; ];
home-module.imports = map mylib.relativeToRoot [ home-modules = map mylib.relativeToRoot [
"home/linux/server.nix" "home/linux/server.nix"
]; ];
}; };

View File

@@ -27,7 +27,7 @@
++ [ ++ [
{modules.secrets.server.kubernetes.enable = true;} {modules.secrets.server.kubernetes.enable = true;}
]; ];
home-module.imports = map mylib.relativeToRoot [ home-modules = map mylib.relativeToRoot [
"home/linux/server.nix" "home/linux/server.nix"
]; ];
}; };