katzen-cafe/flake.nix
2024-01-25 10:05:22 +01:00

82 lines
2 KiB
Nix

{
inputs = {
nixpkgsOld.url = "github:NixOS/nixpkgs/nixos-22.11";
nixpkgs.url = "github:NixOS/nixpkgs/nixos-23.11";
nixpkgsUnstable.url = "github:NixOS/nixpkgs/nixos-unstable";
#nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
arion.url = "github:hercules-ci/arion";
mms.url = "github:mkaito/nixos-modded-minecraft-servers";
simple-nixos-mailserver.url = "gitlab:simple-nixos-mailserver/nixos-mailserver/nixos-23.05";
conduit = {
url = "gitlab:famedly/conduit";
};
};
outputs = {
self,
nixpkgsOld,
nixpkgs,
nixpkgsUnstable,
...
} @ inputs: let
hostPkgs = import nixpkgs {system = "x86_64-linux";};
in {
devShell."x86_64-linux" = with hostPkgs;
mkShell {
buildInputs = [colmena pass];
};
colmena = {
meta = {
nixpkgs = import nixpkgs {
system = "aarch64-linux";
overlays = [];
};
specialArgs = {
inherit inputs nixpkgsUnstable;
pkgsUnstable = import nixpkgsUnstable {
system = "aarch64-linux";
overlays = [];
};
pkgsOld = import nixpkgsOld {
system = "aarch64-linux";
overlays = [];
};
};
};
katzencafe = {
name,
nodes,
pkgs,
pkgsUnstable,
inputs,
...
}: {
deployment = {
targetHost = "katzen.cafe";
buildOnTarget = true;
};
imports = [
./modules/base-stuff.nix
./modules/proxy.nix
./modules/postgres.nix
./modules/jitsi.nix
./modules/containers
./modules/conduit.nix
./modules/keycloak.nix
./modules/forgejo.nix
./modules/mumble.nix
./modules/modded-mc.nix
./modules/monitoring.nix
./modules/mailserver.nix
./modules/vaultwarden.nix
./modules/hedgedoc.nix
./modules/invidious.nix
];
system.stateVersion = "22.11";
};
};
};
}