nix-infra/flake.nix

73 lines
1.5 KiB
Nix
Raw Normal View History

2023-12-17 13:33:15 +00:00
{
inputs = {
nixpkgs.url = "nixpkgs/nixos-23.11";
nixpkgs-unstable.url = "nixpkgs/nixpkgs-unstable";
home-manager = {
url = "github:nix-community/home-manager/release-23.11";
inputs.nixpkgs.follows = "nixpkgs";
};
};
2024-03-24 18:02:25 +00:00
outputs = inputs @ {
self,
nixpkgs,
nixpkgs-unstable,
home-manager,
...
}: let
system = "x86_64-linux";
in {
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.alejandra;
colmena = {
meta = {
nixpkgs = import nixpkgs {
system = "x86_64-linux";
overlays = [];
2024-03-24 18:02:23 +00:00
};
2024-03-24 18:02:25 +00:00
};
2024-03-24 18:02:25 +00:00
bengal = {
name,
nodes,
pkgs,
...
}: {
imports = [
./hosts/${name}/configuration.nix
./modules/common
(import "${home-manager}/nixos")
];
2024-03-24 18:02:24 +00:00
2024-03-24 18:02:25 +00:00
deployment = {
targetUser = "sammy";
allowLocalDeployment = true;
2024-03-24 18:02:24 +00:00
};
2024-03-24 18:02:23 +00:00
};
2024-03-24 18:02:25 +00:00
maine-coon = {
name,
nodes,
pkgs,
...
}: {
imports = [
./hosts/${name}/configuration.nix
./modules/common
2024-03-24 18:02:23 +00:00
(import "${home-manager}/nixos")
];
2024-03-24 18:02:25 +00:00
deployment = {
targetHost = "maine-coon";
allowLocalDeployment = true;
};
2024-03-24 18:02:23 +00:00
};
2023-12-17 13:33:15 +00:00
};
2024-03-24 18:02:25 +00:00
nixosConfigurations.test = nixpkgs.lib.nixosSystem {
inherit system;
modules = [
./hosts/test-vm/configuration.nix
(import "${home-manager}/nixos")
];
};
};
2023-12-17 13:33:15 +00:00
}