nixos modules for convenient deployment of cloud resources
1{
2 description = "nixos modules for convenient deployment of cloud resources";
3
4 inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
5
6 outputs = inp: let
7 l = inp.nixpkgs.lib;
8 pkgsInstances =
9 l.genAttrs
10 ["x86_64-linux"]
11 (s: inp.nixpkgs.legacyPackages.${s});
12 in {
13 nixosModules = {
14 firewall = ./firewall;
15 firewall-hetzner = ./firewall/hetzner;
16 };
17 checks =
18 l.mapAttrs
19 (_: pkgs: {
20 firewall-hetzner-app = import ./firewall/hetzner/app.nix {
21 inherit pkgs;
22 taggedPorts = {
23 http.allowedTCPPorts = [80 443];
24 ssh.allowedTCPPorts = [22];
25 "bla bla" = {
26 allowedUDPPortRanges = [{from = 1332; to = 8891;}];
27 allowedTCPPorts = [101];
28 allowedUDPPorts = [102];
29 };
30 };
31 id = 1;
32 };
33 })
34 pkgsInstances;
35 makeApps = import ./makeApps.nix;
36 };
37}