diff --git a/systems/LoutreOS/hardware-configuration.nix b/systems/LoutreOS/hardware-configuration.nix index b32d6f1..720b883 100644 --- a/systems/LoutreOS/hardware-configuration.nix +++ b/systems/LoutreOS/hardware-configuration.nix @@ -158,6 +158,11 @@ fsType = "zfs"; }; + fileSystems."/var/lib/nextcloud" = + { device = "loutrepool/var/nextcloud"; + fsType = "zfs"; + }; + fileSystems."/var/lib/private/photoprism" = { device = "loutrepool/var/photoprism"; fsType = "zfs"; diff --git a/systems/LoutreOS/web.nix b/systems/LoutreOS/web.nix index 0d82934..0d3aacd 100644 --- a/systems/LoutreOS/web.nix +++ b/systems/LoutreOS/web.nix @@ -345,6 +345,10 @@ in "challenge.amandoline-creations.fr" = base { "/".alias = "/var/www/amandoline-challenge/"; }; + ${config.services.nextcloud.hostName} = { + forceSSL = true; + enableACME = true; + }; }; }; @@ -381,6 +385,20 @@ in # enable = true; # package = pkgs.mariadb; # }; + + nextcloud = { + enable = true; + package = pkgs.nextcloud29; + hostName = "cloud.nyanlout.re"; + database.createLocally = true; + https = true; + maxUploadSize = "16G"; + config = { + dbtype = "pgsql"; + adminpassFile = "$CREDENTIALS_DIRECTORY/nextcloud_admin.pass"; + }; + }; + }; systemd.services.nginx.serviceConfig = { @@ -397,6 +415,10 @@ in ]; }; + systemd.services.nextcloud-setup.serviceConfig = { + LoadCredential = "nextcloud_admin.pass:/mnt/secrets/nextcloud_admin.pass"; + }; + systemd.services.site-musique = let djangoEnv =(pkgs.python3.withPackages (ps: with ps; [ gunicorn django_3 pillow setuptools ])); in {