From f8026b6e4c869aa108f6361c8ccd50890657994d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Isma=C3=ABl=20Bouya?= Date: Sat, 18 May 2019 10:49:00 +0200 Subject: Move personal websites to modules --- modules/private/websites/papa/surveillance.nix | 49 ++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 modules/private/websites/papa/surveillance.nix (limited to 'modules/private/websites/papa') diff --git a/modules/private/websites/papa/surveillance.nix b/modules/private/websites/papa/surveillance.nix new file mode 100644 index 0000000..8e7cd9d --- /dev/null +++ b/modules/private/websites/papa/surveillance.nix @@ -0,0 +1,49 @@ +{ lib, pkgs, config, myconfig, ... }: +let + cfg = config.myServices.websites.papa.surveillance; + varDir = "/var/lib/ftp/papa"; +in { + options.myServices.websites.papa.surveillance.enable = lib.mkEnableOption "enable Papa surveillance's website"; + + config = lib.mkIf cfg.enable { + security.acme.certs."ftp".extraDomains."surveillance.maison.bbc.bouya.org" = null; + + services.cron = { + systemCronJobs = let + script = pkgs.writeScript "cleanup-papa" '' + #!${pkgs.stdenv.shell} + d=$(date -d "7 days ago" +%Y%m%d) + for i in /var/lib/ftp/papa/*/20[0-9][0-9][0-9][0-9][0-9][0-9]; do + if [ "$d" -gt $(basename $i) ]; then + rm -rf "$i" + fi + done + ''; + in + [ + '' + 0 6 * * * wwwrun ${script} + '' + ]; + }; + + services.websites.production.vhostConfs.papa = { + certName = "papa"; + certMainHost = "surveillance.maison.bbc.bouya.org"; + hosts = [ "surveillance.maison.bbc.bouya.org" ]; + root = varDir; + extraConfig = [ + '' + Use Apaxy "${varDir}" "title .duplicity-ignore" + + Use LDAPConnect + Options Indexes + AllowOverride None + Require ldap-group cn=surveillance.maison.bbc.bouya.org,cn=httpd,ou=services,dc=immae,dc=eu + + '' + ]; + }; + }; +} + -- cgit v1.2.3