nixos/flake.nix
2024-11-06 14:03:40 +01:00

65 lines
2.1 KiB
Nix
Executable file

{
description = "Master flake for all my setups";
inputs = {
unstable.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "unstable";
hyprland-contrib.url = "github:hyprwm/contrib";
hyprland-contrib.inputs.nixpkgs.follows = "unstable";
};
outputs = { unstable, home-manager, hyprland-contrib, ...}@inputs: {
nixosConfigurations = {
gunther = unstable.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; };
modules = [
./gunther/configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.leonv = import ./gunther/leonv.nix;
home-manager.extraSpecialArgs = { inherit inputs; };
}
];
};
absol = unstable.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; };
modules = [
./absol/configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.leonv = import ./absol/leonv.nix;
home-manager.extraSpecialArgs = { inherit inputs; };
home-manager.backupFileExtension = "backup";
}
];
};
iso = unstable.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; };
modules = [
"${unstable}/nixos/modules/installer/cd-dvd/installation-cd-graphical-calamares-plasma6.nix"
./iso/configuration.nix
];
};
willem = unstable.lib.nixosSystem {
system = "aarch64-linux";
specialArgs = { inherit inputs; };
modules = [ ./willem/configuration.nix ];
};
dafoe = unstable.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; };
modules = [ ./dafoe/configuration.nix ];
};
};
};
}