68 lines
1.5 KiB
Nix
68 lines
1.5 KiB
Nix
{
|
|
inputs,
|
|
...
|
|
}:
|
|
let
|
|
inherit (inputs) home-manager-unstable;
|
|
dotfilesHome = "/home/love/dotfiles/home.nix";
|
|
hasDotfilesHome = builtins.pathExists dotfilesHome;
|
|
in
|
|
{
|
|
mkHost =
|
|
{
|
|
nixpkgs,
|
|
disko,
|
|
lolcat,
|
|
nixosModules,
|
|
hostModules ? [ ],
|
|
}:
|
|
nixpkgs.lib.nixosSystem {
|
|
system = "x86_64-linux";
|
|
specialArgs = {
|
|
inputs = inputs // {
|
|
"lolcat++" = lolcat;
|
|
};
|
|
inherit nixosModules;
|
|
};
|
|
modules = [ disko.nixosModules.disko ] ++ hostModules;
|
|
};
|
|
|
|
mkDesktopHost =
|
|
{
|
|
nixpkgs,
|
|
disko,
|
|
lolcat,
|
|
nixosModules,
|
|
hostModules ? [ ],
|
|
}:
|
|
nixpkgs.lib.nixosSystem {
|
|
system = "x86_64-linux";
|
|
specialArgs = {
|
|
inputs = inputs // {
|
|
"lolcat++" = lolcat;
|
|
};
|
|
inherit nixosModules;
|
|
};
|
|
modules = [
|
|
disko.nixosModules.disko
|
|
home-manager-unstable.nixosModules.home-manager
|
|
{
|
|
home-manager.useGlobalPkgs = true;
|
|
home-manager.useUserPackages = true;
|
|
home-manager.backupFileExtension = "hm-backup";
|
|
home-manager.users.love =
|
|
if hasDotfilesHome then
|
|
import (/. + dotfilesHome)
|
|
else
|
|
{
|
|
home.username = "love";
|
|
home.homeDirectory = "/home/love";
|
|
home.stateVersion = "25.11";
|
|
programs.home-manager.enable = true;
|
|
};
|
|
}
|
|
]
|
|
++ hostModules;
|
|
};
|
|
}
|