diff options
Diffstat (limited to 'systems/eldiron/websites/immae/release.nix')
-rw-r--r-- | systems/eldiron/websites/immae/release.nix | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/systems/eldiron/websites/immae/release.nix b/systems/eldiron/websites/immae/release.nix new file mode 100644 index 0000000..4882bac --- /dev/null +++ b/systems/eldiron/websites/immae/release.nix | |||
@@ -0,0 +1,40 @@ | |||
1 | { lib, pkgs, config, ... }: | ||
2 | let | ||
3 | cfg = config.myServices.websites.immae.release; | ||
4 | varDir = "/var/lib/ftp/release.immae.eu"; | ||
5 | in { | ||
6 | options.myServices.websites.immae.release.enable = lib.mkEnableOption "enable Release' website"; | ||
7 | |||
8 | config = lib.mkIf cfg.enable { | ||
9 | myServices.dns.zones."immae.eu".subdomains.release = with config.myServices.dns.helpers; | ||
10 | ips servers.eldiron.ips.production; | ||
11 | services.webstats.sites = [ { name = "release.immae.eu"; } ]; | ||
12 | |||
13 | security.acme.certs.immae.extraDomainNames = [ "release.immae.eu" ]; | ||
14 | services.websites.env.production.vhostConfs.immae_release = { | ||
15 | certName = "immae"; | ||
16 | hosts = [ "release.immae.eu" ]; | ||
17 | root = varDir; | ||
18 | extraConfig = [ | ||
19 | '' | ||
20 | Use Stats release.immae.eu | ||
21 | |||
22 | Use Apaxy "${varDir}" "title .duplicity-ignore" | ||
23 | <Directory "${varDir}"> | ||
24 | Use LDAPConnect | ||
25 | Options Indexes | ||
26 | AllowOverride All | ||
27 | Require all granted | ||
28 | </Directory> | ||
29 | |||
30 | <Directory "${varDir}/packages"> | ||
31 | Use LDAPConnect | ||
32 | Options Indexes FollowSymlinks | ||
33 | AllowOverride None | ||
34 | Require all granted | ||
35 | </Directory> | ||
36 | '' | ||
37 | ]; | ||
38 | }; | ||
39 | }; | ||
40 | } | ||