Files
nix/modules/flake/lib.nix
T
2026-04-15 11:28:48 +02:00

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;
};
}