This repository has no description
1.1 kB
38 lines
1{ config, pkgs, ... }:
2{
3 services.nextcloud = {
4 enable = true;
5 hostName = "c.lassul.us";
6 package = pkgs.nextcloud30;
7 database.createLocally = true;
8 config.dbtype = "pgsql";
9 config.adminpassFile = "/var/lib/nextcloud/admin.pass";
10 https = true;
11 };
12
13 services.nginx.virtualHosts.${config.services.nextcloud.hostName} = {
14 forceSSL = true;
15 enableACME = true;
16 };
17
18 systemd.services.nextcloud-setup.serviceConfig.ExecStartPre = [
19 "+${pkgs.writers.writeDash "install_admin_pw" ''
20 mkdir -p /var/lib/nextcloud
21 chown nextcloud:nextcloud /var/lib/nextcloud
22 install -o nextcloud -g nextcloud -Dm0600 \
23 ${config.clan.core.facts.services.nextcloud.secret.nextcloud_adminpass.path} \
24 /var/lib/nextcloud/admin.pass
25 ''}"
26 ];
27
28 clan.core.facts.services."nextcloud" = {
29 secret."nextcloud_adminpass" = { };
30 generator.path = with pkgs; [ coreutils ];
31 generator.prompt = ''
32 please enter the admin password for nextcloud_adminpass:
33 '';
34 generator.script = ''
35 echo "$prompt_value" > "$secrets"/adminpass
36 '';
37 };
38}