{ inputs, ... }: let inherit (inputs) home-manager-unstable; dotfilesHome = "/home/love/dotfiles/home.nix"; hasDotfilesHome = builtins.pathExists dotfilesHome; in { mkHost = { nixpkgs, disko, lolcat, nixosModules, system ? "x86_64-linux", hostModules ? [ ], }: nixpkgs.lib.nixosSystem { inherit system; specialArgs = { inputs = inputs // { "lolcat++" = lolcat; }; inherit nixosModules; }; modules = [ disko.nixosModules.disko ] ++ hostModules; }; mkDesktopHost = { nixpkgs, disko, lolcat, nixosModules, system ? "x86_64-linux", hostModules ? [ ], }: nixpkgs.lib.nixosSystem { inherit system; 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; }; }