grimm-nix-server/flake.nix

56 lines
1.8 KiB
Nix
Raw Normal View History

2023-12-26 17:48:59 +01:00
# /etc/nixos/flake.nix
{
description = "flake for grimmauld-nixos-server";
inputs = {
agenix.url = "github:ryantm/agenix";
nixpkgs = {
url = "github:NixOS/nixpkgs/nixos-unstable";
};
2024-01-28 10:34:03 +01:00
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-23.11";
2023-12-27 12:20:29 +01:00
nixos-matrix-modules = {
url = "git+https://github.com/dali99/nixos-matrix-modules?submodules=1";
flake = true;
};
nixos-mailserver = {
2024-02-03 11:51:15 +01:00
# url = "git+https://gitlab.com/simple-nixos-mailserver/nixos-mailserver";
url = "git+https://gitlab.com/Grimmauld/nixos-mailserver?ref=Grimmauld-master-patch-84178";
flake = true;
};
2023-12-26 17:48:59 +01:00
};
2024-01-28 10:34:03 +01:00
outputs = { nixos-mailserver, nixos-matrix-modules, self, nixpkgs-stable, nixpkgs, agenix, ... } @ inputs: let
2023-12-26 17:48:59 +01:00
system = "x86_64-linux";
2024-01-28 10:34:03 +01:00
stable = import nixpkgs-stable { inherit system; config.allowUnfree = true; };
2023-12-26 17:48:59 +01:00
in {
nixosConfigurations = {
grimmauld-nixos-server = nixpkgs.lib.nixosSystem {
inherit system;
2024-01-28 10:34:03 +01:00
specialArgs = { inherit inputs stable; };
2023-12-26 17:48:59 +01:00
modules = [
./configuration.nix
2023-12-29 12:51:41 +01:00
./modules/matrix.nix
./modules/puffer.nix
./modules/gitea.nix
./modules/grafana.nix
2023-12-30 13:48:12 +01:00
./modules/nextcloud.nix
2023-12-30 13:09:30 +01:00
./modules/prometheus.nix
2023-12-29 12:51:41 +01:00
./modules/letsencrypt.nix
# ./modules/mjolnir.nix
2023-12-29 12:51:41 +01:00
./modules/fail2ban.nix
./modules/email.nix
./modules/discord-matrix-bridge.nix
2023-12-30 16:02:18 +01:00
./modules/mastodon.nix
2024-01-28 10:34:03 +01:00
./modules/folding.nix
2024-02-03 11:51:15 +01:00
./modules/toolchains.nix
# ./modules/ptero.nix
2023-12-26 17:48:59 +01:00
agenix.nixosModules.default
nixos-mailserver.nixosModules.default
2023-12-27 12:20:29 +01:00
nixos-matrix-modules.nixosModules.default
2023-12-26 17:48:59 +01:00
{ environment.systemPackages = [ agenix.packages.${system}.default ]; }
];
};
};
};
}