91 lines
2.2 KiB
Nix
91 lines
2.2 KiB
Nix
# Yanked from fufexan!
|
|
{
|
|
self,
|
|
inputs,
|
|
homeImports,
|
|
...
|
|
}: {
|
|
flake.nixosConfigurations = let
|
|
# shorten paths
|
|
inherit (inputs.nixpkgs.lib) nixosSystem;
|
|
mod = "${self}/system";
|
|
|
|
# get the basic config to build on top of
|
|
inherit (import "${self}/system") adampad cnix toothpc;
|
|
|
|
# get these into the module system
|
|
specialArgs = {inherit inputs self;};
|
|
in {
|
|
cnix = nixosSystem {
|
|
inherit specialArgs;
|
|
modules =
|
|
cnix
|
|
++ [
|
|
./cnix
|
|
"${mod}/boot/lanzaboote"
|
|
"${mod}/etc/bluetooth"
|
|
"${mod}/etc/graphics/amd"
|
|
"${mod}/etc/logitech"
|
|
"${mod}/etc/network/cnix"
|
|
"${mod}/etc/xserver/amd"
|
|
"${mod}/nix/nh/cnix"
|
|
{
|
|
home-manager = {
|
|
users.cnst.imports = homeImports."cnst@cnix";
|
|
extraSpecialArgs = specialArgs;
|
|
};
|
|
}
|
|
|
|
# inputs.agenix.nixosModules.default
|
|
inputs.chaotic.nixosModules.default
|
|
];
|
|
};
|
|
toothpc = nixosSystem {
|
|
inherit specialArgs;
|
|
modules =
|
|
toothpc
|
|
++ [
|
|
./toothpc
|
|
"${mod}/boot/lanzaboote"
|
|
"${mod}/etc/graphics/nvidia"
|
|
"${mod}/etc/logitech"
|
|
"${mod}/etc/network/toothpc"
|
|
"${mod}/etc/xserver/nvidia"
|
|
"${mod}/nix/nh/toothpc"
|
|
{
|
|
home-manager = {
|
|
users.toothpick.imports = homeImports."toothpick@toothpc";
|
|
extraSpecialArgs = specialArgs;
|
|
};
|
|
}
|
|
|
|
# inputs.agenix.nixosModules.default
|
|
inputs.chaotic.nixosModules.default
|
|
];
|
|
};
|
|
adampad = nixosSystem {
|
|
inherit specialArgs;
|
|
modules =
|
|
adampad
|
|
++ [
|
|
./adampad
|
|
"${mod}/boot"
|
|
"${mod}/etc/bluetooth"
|
|
"${mod}/etc/graphics/amd"
|
|
"${mod}/etc/network/adampad"
|
|
"${mod}/etc/xserver/amd"
|
|
"${mod}/nix/nh/adampad"
|
|
{
|
|
home-manager = {
|
|
users.adam.imports = homeImports."adam@adampad";
|
|
extraSpecialArgs = specialArgs;
|
|
};
|
|
}
|
|
|
|
# inputs.agenix.nixosModules.default
|
|
inputs.chaotic.nixosModules.default
|
|
];
|
|
};
|
|
};
|
|
}
|