2026-02-01 19:43:03 +02:00
|
|
|
{
|
|
|
|
|
description = "NixOS installation ISO with Lix";
|
|
|
|
|
|
|
|
|
|
inputs = {
|
|
|
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.11";
|
2026-02-03 09:52:52 +02:00
|
|
|
nix-index-database = {
|
|
|
|
|
url = "github:nix-community/nix-index-database";
|
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
|
};
|
2026-02-03 13:07:02 +02:00
|
|
|
nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=latest";
|
2026-02-01 19:49:22 +02:00
|
|
|
lix-module.url = "git+https://git.lix.systems/lix-project/nixos-module?ref=release-2.93";
|
2026-02-01 19:43:03 +02:00
|
|
|
lix-module.inputs.nixpkgs.follows = "nixpkgs";
|
2026-02-01 20:12:00 +02:00
|
|
|
lanzaboote.url = "github:nix-community/lanzaboote";
|
|
|
|
|
lanzaboote.inputs.nixpkgs.follows = "nixpkgs";
|
2026-02-04 11:09:16 +02:00
|
|
|
flox.url = "github:flox/flox";
|
2026-02-01 19:43:03 +02:00
|
|
|
};
|
|
|
|
|
|
2026-02-04 11:09:16 +02:00
|
|
|
outputs =
|
|
|
|
|
inputs@{ self, nixpkgs, ... }:
|
2026-02-01 19:43:03 +02:00
|
|
|
let
|
|
|
|
|
lib = nixpkgs.lib;
|
|
|
|
|
hostFiles = builtins.attrNames (builtins.readDir ./hosts);
|
2026-02-04 11:09:16 +02:00
|
|
|
hostNames = lib.filter (
|
|
|
|
|
name: lib.hasSuffix ".nix" name && !(lib.hasSuffix "-hardware.nix" name) && name != "iso.nix"
|
|
|
|
|
) hostFiles;
|
|
|
|
|
mkHost =
|
|
|
|
|
name:
|
|
|
|
|
lib.nixosSystem {
|
|
|
|
|
system = "x86_64-linux";
|
|
|
|
|
specialArgs = { inherit inputs; };
|
|
|
|
|
modules = [ (./hosts + "/${name}.nix") ];
|
|
|
|
|
};
|
|
|
|
|
in
|
|
|
|
|
{
|
|
|
|
|
nixosConfigurations = lib.genAttrs (map (lib.removeSuffix ".nix") hostNames) mkHost // {
|
|
|
|
|
installer = nixpkgs.lib.nixosSystem {
|
|
|
|
|
system = "x86_64-linux";
|
|
|
|
|
specialArgs = { inherit inputs; };
|
|
|
|
|
modules = [ ./hosts/iso.nix ];
|
2026-02-01 22:06:30 +02:00
|
|
|
};
|
2026-02-04 11:09:16 +02:00
|
|
|
};
|
2026-02-01 19:43:03 +02:00
|
|
|
|
2026-02-04 11:09:16 +02:00
|
|
|
packages.x86_64-linux.install-iso = self.nixosConfigurations.installer.config.system.build.isoImage;
|
2026-02-01 19:43:03 +02:00
|
|
|
packages.x86_64-linux.default = self.packages.x86_64-linux.install-iso;
|
|
|
|
|
};
|
|
|
|
|
}
|