Files
nixos/flake.nix
T
beatzaplenty dd80145e4f
Check NixOS configurations / eval-hosts (push) Successful in 47m42s
Update flake.nix
2026-06-30 23:06:26 +00:00

142 lines
3.9 KiB
Nix

{
description = "LAN NixOS configs";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-26.05";
nixos-conf-editor.url = "github:snowfallorg/nixos-conf-editor";
home-manager = {
url = "github:nix-community/home-manager/release-26.05";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, nixos-conf-editor, home-manager, ... } @ inputs:
let
system = "x86_64-linux";
# 🔧 Docker override (pin version here)
# dockerOverlay = final: prev: {
# docker = prev.docker_29;
# docker_cli = prev.docker_29;
# };
in {
nixosConfigurations = {
nixos = nixpkgs.lib.nixosSystem {
inherit system;
modules = [
./hosts/nixos/configuration.nix
./common/hardware-configuration.nix
home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.nixos = import ./hosts/nixos/home.nix;
}
];
specialArgs = { inherit inputs; };
};
docker = nixpkgs.lib.nixosSystem {
inherit system;
# 🔧 create custom pkgs with overlay
pkgs = import nixpkgs {
inherit system;
overlays = [
(final: prev: {
docker = prev.docker_29;
docker_cli = prev.docker_29;
})
];
};
modules = [
./hosts/docker/configuration.nix
./common/hardware-configuration.nix
home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.nixos = import ./common/home.nix;
}
];
};
kuma = nixpkgs.lib.nixosSystem {
inherit system;
modules = [
./hosts/kuma/configuration.nix
./common/hardware-configuration.nix
home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.nixos = import ./common/home.nix;
}
];
};
server = nixpkgs.lib.nixosSystem {
inherit system;
modules = [
./hosts/server/configuration.nix
./common/hardware-configuration.nix
home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.nixos = import ./common/home.nix;
}
];
};
nix-cache = nixpkgs.lib.nixosSystem {
inherit system;
modules = [
./hosts/nix-cache/configuration.nix
./common/hardware-configuration.nix
home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.nixos = import ./common/home.nix;
}
];
};
nix-minimal = nixpkgs.lib.nixosSystem {
inherit system;
modules = [
./hosts/nix-minimal/configuration.nix
./common/hardware-configuration.nix
home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.nixos = import ./common/home.nix;
}
];
};
pxe-boot = nixpkgs.lib.nixosSystem {
inherit system;
modules = [
./hosts/pxe-boot/configuration.nix
./common/hardware-configuration.nix
home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.nixos = import ./common/home.nix;
}
];
};
};
};
}