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 =
|
||||
{ nixpkgs, ... }@inputs:
|
||||
{
|
||||
nixpkgs,
|
||||
home-manager,
|
||||
agenix,
|
||||
...
|
||||
}@inputs:
|
||||
let
|
||||
commonSystem =
|
||||
{
|
||||
|
|
@ -31,7 +36,23 @@
|
|||
system ? "x86_64-linux",
|
||||
}:
|
||||
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 = {
|
||||
inherit inputs;
|
||||
inherit hostName;
|
||||
|
|
|
|||
|
|
@ -13,7 +13,6 @@ in
|
|||
# keep-sorted start
|
||||
agenix.enable = lib.mkDefault true;
|
||||
fonts.enable = lib.mkDefault true;
|
||||
home-manager.enable = lib.mkDefault true;
|
||||
localisation.enable = lib.mkDefault true;
|
||||
network.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