63 lines
1.2 KiB
Nix
63 lines
1.2 KiB
Nix
{
|
|
inputs,
|
|
lib,
|
|
system,
|
|
specialArgs,
|
|
dots,
|
|
user ? "rayandrew",
|
|
...
|
|
}:
|
|
let
|
|
mkNixosConfiguration =
|
|
host:
|
|
{
|
|
pkgs ? (
|
|
import inputs.nixpkgs {
|
|
inherit system;
|
|
config.allowUnfree = true;
|
|
}
|
|
),
|
|
}:
|
|
lib.nixosSystem {
|
|
inherit pkgs;
|
|
|
|
specialArgs = specialArgs // {
|
|
inherit host user dots;
|
|
};
|
|
|
|
modules = [
|
|
inputs.disko.nixosModules.default
|
|
./${host}
|
|
./${host}/hardware.nix
|
|
../nixos
|
|
{
|
|
home-manager = {
|
|
useGlobalPkgs = true;
|
|
useUserPackages = true;
|
|
|
|
extraSpecialArgs = specialArgs // {
|
|
inherit host user system dots;
|
|
};
|
|
|
|
users.${user} = {
|
|
imports = [
|
|
# inputs.nix-index-database.hmModules.nix-index
|
|
./${host}/home.nix
|
|
../home
|
|
];
|
|
};
|
|
};
|
|
}
|
|
# alias for home-manager
|
|
(lib.mkAliasOptionModule [ "hm" ] [
|
|
"home-manager"
|
|
"users"
|
|
user
|
|
])
|
|
inputs.home-manager.nixosModules.home-manager
|
|
];
|
|
};
|
|
in
|
|
{
|
|
pickwick = mkNixosConfiguration "pickwick" { };
|
|
}
|