refactor: move home-manager module to flake to prevent infinite recursion errors when importing modules
This commit is contained in:
parent
76027fb711
commit
f1cf2988f4
3 changed files with 23 additions and 31 deletions
25
flake.nix
25
flake.nix
|
|
@ -22,7 +22,12 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs =
|
outputs =
|
||||||
{ nixpkgs, ... }@inputs:
|
{
|
||||||
|
nixpkgs,
|
||||||
|
home-manager,
|
||||||
|
agenix,
|
||||||
|
...
|
||||||
|
}@inputs:
|
||||||
let
|
let
|
||||||
commonSystem =
|
commonSystem =
|
||||||
{
|
{
|
||||||
|
|
@ -31,7 +36,23 @@
|
||||||
system ? "x86_64-linux",
|
system ? "x86_64-linux",
|
||||||
}:
|
}:
|
||||||
nixpkgs.lib.nixosSystem {
|
nixpkgs.lib.nixosSystem {
|
||||||
modules = [ ./hosts/${hostName}/configuration.nix ];
|
modules = [
|
||||||
|
./hosts/${hostName}/configuration.nix
|
||||||
|
home-manager.nixosModules.home-manager
|
||||||
|
{
|
||||||
|
home-manager = {
|
||||||
|
users.${userName}.imports = [
|
||||||
|
./hosts/${hostName}/home.nix
|
||||||
|
];
|
||||||
|
backupFileExtension = "backup";
|
||||||
|
extraSpecialArgs = {
|
||||||
|
inherit userName;
|
||||||
|
};
|
||||||
|
useGlobalPkgs = true;
|
||||||
|
useUserPackages = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
specialArgs = {
|
specialArgs = {
|
||||||
inherit inputs;
|
inherit inputs;
|
||||||
inherit hostName;
|
inherit hostName;
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,6 @@ in
|
||||||
# keep-sorted start
|
# keep-sorted start
|
||||||
agenix.enable = lib.mkDefault true;
|
agenix.enable = lib.mkDefault true;
|
||||||
fonts.enable = lib.mkDefault true;
|
fonts.enable = lib.mkDefault true;
|
||||||
home-manager.enable = lib.mkDefault true;
|
|
||||||
localisation.enable = lib.mkDefault true;
|
localisation.enable = lib.mkDefault true;
|
||||||
network.enable = lib.mkDefault true;
|
network.enable = lib.mkDefault true;
|
||||||
nh.enable = lib.mkDefault true;
|
nh.enable = lib.mkDefault true;
|
||||||
|
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
hostName,
|
|
||||||
inputs,
|
|
||||||
lib,
|
|
||||||
userName,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
let
|
|
||||||
feature = "home-manager";
|
|
||||||
in
|
|
||||||
{
|
|
||||||
config = lib.mkIf config.${feature}.enable {
|
|
||||||
home-manager = {
|
|
||||||
users.${userName} = import ../../../hosts/${hostName}/home.nix;
|
|
||||||
backupFileExtension = "backup";
|
|
||||||
extraSpecialArgs = {
|
|
||||||
inherit userName;
|
|
||||||
};
|
|
||||||
useGlobalPkgs = true;
|
|
||||||
useUserPackages = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
imports = [ inputs.home-manager.nixosModules.home-manager ];
|
|
||||||
|
|
||||||
options.${feature}.enable = lib.mkEnableOption "enables ${feature}";
|
|
||||||
}
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue