]> git.immae.eu Git - perso/Immae/Config/Nix.git/blame - modules/private/websites/immae/release.nix
Add specification for the private config file as a module.
[perso/Immae/Config/Nix.git] / modules / private / websites / immae / release.nix
CommitLineData
ab8f306d 1{ lib, pkgs, config, ... }:
ce493c5d 2let
f8026b6e
IB
3 cfg = config.myServices.websites.immae.release;
4 varDir = "/var/lib/ftp/release.immae.eu";
ab8f306d 5 env = config.myEnv.websites.release;
ce493c5d 6in {
f8026b6e 7 options.myServices.websites.immae.release.enable = lib.mkEnableOption "enable Release' website";
ce493c5d 8
f8026b6e 9 config = lib.mkIf cfg.enable {
9eae2b47 10 services.webstats.sites = [ { name = "release.immae.eu"; } ];
ce493c5d 11
29f8cb85 12 services.websites.env.production.vhostConfs.release = {
ce493c5d 13 certName = "eldiron";
7df420c2 14 addToCerts = true;
ce493c5d
IB
15 hosts = [ "release.immae.eu" ];
16 root = varDir;
17 extraConfig = [
18 ''
19 Use Stats release.immae.eu
20
21 Use Apaxy "${varDir}" "title .duplicity-ignore"
22 <Directory "${varDir}">
23 Use LDAPConnect
24 Options Indexes
25 AllowOverride All
26 Require all granted
27 </Directory>
28
29 <Directory "${varDir}/packages">
30 Use LDAPConnect
31 Options Indexes FollowSymlinks
32 AllowOverride None
33 Require all granted
34 </Directory>
35 ''
36 ];
37 };
38 };
39}