nix/flake.nix

51 lines
1.2 KiB
Nix

{
description = "nix los hier";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05";
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
home-manager = {
url = "github:nix-community/home-manager/release-24.05";
inputs.nixpkgs.follows = "nixpkgs";
};
agenix = {
url = "github:ryantm/agenix";
inputs.nixpkgs.follows = "nixpkgs";
};
disko = {
url = "github:nix-community/disko";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs =
{
nixpkgs,
agenix,
disko,
...
}@inputs:
let
mkSystem = host: {
"${host}" = nixpkgs.lib.nixosSystem rec {
system = "x86_64-linux";
specialArgs = inputs;
modules = [
(./hosts + "/${host}")
agenix.nixosModules.default
disko.nixosModules.disko
{ environment.systemPackages = [ agenix.packages.${system}.default ]; }
];
};
};
in
{
nixosConfigurations = nixpkgs.lib.mergeAttrsList (
nixpkgs.lib.forEach [
"APPA"
"IROH"
"MOMO"
"T430"
] mkSystem
);
};
}