diff options
Diffstat (limited to 'nixops/modules/websites/ftp/temp.nix')
-rw-r--r-- | nixops/modules/websites/ftp/temp.nix | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/nixops/modules/websites/ftp/temp.nix b/nixops/modules/websites/ftp/temp.nix new file mode 100644 index 0000000..1033121 --- /dev/null +++ b/nixops/modules/websites/ftp/temp.nix | |||
@@ -0,0 +1,41 @@ | |||
1 | { lib, pkgs, config, myconfig, mylibs, ... }: | ||
2 | let | ||
3 | cfg = config.services.myWebsites.Temp; | ||
4 | varDir = "/var/lib/ftp/temp.immae.eu"; | ||
5 | env = myconfig.env.websites.temp; | ||
6 | in { | ||
7 | options.services.myWebsites.Temp = { | ||
8 | production = { | ||
9 | enable = lib.mkEnableOption "enable Temp' website"; | ||
10 | }; | ||
11 | }; | ||
12 | |||
13 | config = lib.mkIf cfg.production.enable { | ||
14 | security.acme.certs."eldiron".extraDomains."temp.immae.eu" = null; | ||
15 | |||
16 | services.myWebsites.production.modules = [ "headers" ]; | ||
17 | services.myWebsites.production.vhostConfs.temp = { | ||
18 | certName = "eldiron"; | ||
19 | hosts = [ "temp.immae.eu" ]; | ||
20 | root = varDir; | ||
21 | extraConfig = [ | ||
22 | '' | ||
23 | Use Apaxy "${varDir}" "title" | ||
24 | <FilesMatch ".+"> | ||
25 | Header set Content-Disposition attachment | ||
26 | </FilesMatch> | ||
27 | <Directory "${varDir}"> | ||
28 | Options -Indexes | ||
29 | AllowOverride None | ||
30 | Require all granted | ||
31 | </Directory> | ||
32 | |||
33 | <DirectoryMatch "${varDir}/(.+)"> | ||
34 | Options Indexes | ||
35 | </DirectoryMatch> | ||
36 | '' | ||
37 | ]; | ||
38 | }; | ||
39 | }; | ||
40 | } | ||
41 | |||