2023-07-10 15:30:51 +02:00
|
|
|
{
|
|
|
|
inputs = {
|
2023-07-13 22:46:07 +02:00
|
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
2023-07-26 01:09:38 +02:00
|
|
|
nixos-generators = {
|
|
|
|
url = "github:nix-community/nixos-generators";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
2023-07-10 15:30:51 +02:00
|
|
|
};
|
|
|
|
|
2023-07-26 01:09:38 +02:00
|
|
|
outputs = { self, nixpkgs, nixos-generators, ... }: {
|
2023-07-16 02:00:44 +02:00
|
|
|
hosts = {
|
|
|
|
nitter = {
|
|
|
|
site = "vs";
|
2023-07-10 15:30:51 +02:00
|
|
|
};
|
2023-07-16 02:00:44 +02:00
|
|
|
nixos-coturn = {
|
|
|
|
site = "vs";
|
|
|
|
};
|
|
|
|
tor-relay = {
|
|
|
|
site = "vs";
|
|
|
|
};
|
|
|
|
jackett = {
|
|
|
|
site = "vs";
|
2023-07-10 15:30:51 +02:00
|
|
|
};
|
2023-07-24 01:12:36 +02:00
|
|
|
hydra = {
|
|
|
|
site = "vs";
|
|
|
|
};
|
2023-07-20 06:29:15 +02:00
|
|
|
web-public-2 = {
|
|
|
|
site = "vs";
|
|
|
|
};
|
2023-07-16 02:00:44 +02:00
|
|
|
};
|
2023-07-10 15:30:51 +02:00
|
|
|
|
2023-07-16 02:00:44 +02:00
|
|
|
generateColmenaHost = name: host : {
|
|
|
|
deployment = {
|
|
|
|
targetHost = "${name}.${host.site}.grzb.de";
|
|
|
|
targetUser = "colmena-deploy";
|
2023-07-10 15:30:51 +02:00
|
|
|
};
|
2023-07-15 23:29:19 +02:00
|
|
|
|
2023-07-16 02:00:44 +02:00
|
|
|
imports = [
|
|
|
|
./configuration/common
|
|
|
|
./configuration/proxmox-vm
|
2023-07-26 01:09:38 +02:00
|
|
|
./configuration/proxmox-vm/hardware-configuration.nix
|
2023-07-16 02:00:44 +02:00
|
|
|
./hosts/${name}
|
|
|
|
];
|
|
|
|
};
|
|
|
|
|
|
|
|
colmena = {
|
|
|
|
meta = {
|
|
|
|
nixpkgs = import nixpkgs {
|
|
|
|
system = "x86_64-linux";
|
2023-07-15 23:29:19 +02:00
|
|
|
};
|
|
|
|
};
|
2023-07-16 02:00:44 +02:00
|
|
|
} // builtins.mapAttrs (self.generateColmenaHost) self.hosts;
|
2023-07-18 17:23:46 +02:00
|
|
|
|
|
|
|
hydraJobs = {
|
|
|
|
nixConfigurations.nitter = let system = "x86_64-linux";
|
|
|
|
in nixpkgs.lib.nixosSystem {
|
|
|
|
inherit system;
|
|
|
|
modules = [
|
|
|
|
./configuration/common
|
|
|
|
./configuration/proxmox-vm
|
|
|
|
./hosts/nitter
|
|
|
|
];
|
|
|
|
};
|
|
|
|
};
|
2023-07-26 01:09:38 +02:00
|
|
|
|
|
|
|
# Generate a base VM image for Proxmox with `nix build .#base-proxmox`
|
|
|
|
packages.x86_64-linux = {
|
|
|
|
base-proxmox = nixos-generators.nixosGenerate {
|
|
|
|
system = "x86_64-linux";
|
|
|
|
modules = [
|
|
|
|
./configuration/common
|
|
|
|
./configuration/nixos-generators
|
|
|
|
./configuration/proxmox-vm
|
|
|
|
];
|
|
|
|
format = "proxmox";
|
|
|
|
};
|
|
|
|
};
|
2023-07-10 15:30:51 +02:00
|
|
|
};
|
|
|
|
}
|