38 lines
819 B
Nix
38 lines
819 B
Nix
{
|
|
description = "Homelab NixOS Flake";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
|
|
# Disko
|
|
disko = {
|
|
url = "github:nix-community/disko";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
};
|
|
|
|
outputs = { nixpkgs, disko, ... }: let
|
|
nodes = [
|
|
"homelab-0"
|
|
"homelab-1"
|
|
"homelab-2"
|
|
];
|
|
in {
|
|
nixosConfigurations = builtins.listToAttrs (map (name: {
|
|
name = name;
|
|
value = nixpkgs.lib.nixosSystem {
|
|
specialArgs = {
|
|
meta = { hostname = name; };
|
|
};
|
|
system = "x86_64-linux";
|
|
modules = [
|
|
# Modules
|
|
disko.nixosModules.disko
|
|
./hardware-configuration.nix
|
|
./disko-config.nix
|
|
./configuration.nix
|
|
];
|
|
};
|
|
}) nodes);
|
|
};
|
|
}
|