diff options
Diffstat (limited to 'microvms/nextcloud/default.nix')
| -rw-r--r-- | microvms/nextcloud/default.nix | 115 |
1 files changed, 0 insertions, 115 deletions
diff --git a/microvms/nextcloud/default.nix b/microvms/nextcloud/default.nix deleted file mode 100644 index 94b1fa3..0000000 --- a/microvms/nextcloud/default.nix +++ /dev/null @@ -1,115 +0,0 @@ -{ config, pkgs, ... }: { - - imports = [ - ./oxaproxy.nix - ./secrets.nix - ]; - - # nextcloud goes here - networking.firewall.interfaces.oxaproxy.allowedTCPPorts = [ 8080 ]; - - services.postgresql = { - enable = true; - package = pkgs.postgresql_14; - ensureDatabases = [ "nextcloud" ]; - ensureUsers = [{ - name = "nextcloud"; - ensurePermissions."DATABASE nextcloud" = "ALL PRIVILEGES"; - }]; - }; - - services.redis.servers.nextcloud.enable = true; - - services.nginx = { - enable = true; - recommendedGzipSettings = true; - recommendedOptimisation = true; - virtualHosts."nc.oxapentane.com" = { - extraConfig = '' - # HTTP response headers borrowed from Nextcloud .htaccess - add_header Referrer-Policy "no-referrer" always; - #add_header X-Content-Type-Options "nosniff" always; - add_header X-Download-Options "noopen" always; - #add_header X-Frame-Options "SAMEORIGIN" always; - add_header X-Permitted-Cross-Domain-Policies "none" always; - add_header X-Robots-Tag "none" always; - add_header X-XSS-Protection "1; mode=block" always; - add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always; - - # Remove X-Powered-By, which is an information leak - fastcgi_hide_header X-Powered-By; - ''; - listen = [{ - # We are listening on wireguard interface only - addr = "10.34.45.100"; - port = 8080; - ssl = false; - }]; - }; - }; - - services.nextcloud = { - enable = true; - hostName = "nc.oxapentane.com"; - home = "/var/lib/nextcloud-oxa"; - package = pkgs.nextcloud28; - maxUploadSize = "5000M"; - caching.redis = true; - autoUpdateApps = { - enable = true; - startAt = "07:00:00"; - }; - config = { - overwriteProtocol = "https"; - trustedProxies = [ "10.34.45.1" ]; - - dbtype = "pgsql"; - dbuser = "nextcloud"; - dbhost = "/run/postgresql"; - dbname = "nextcloud"; - adminuser = "admin"; - adminpassFile = config.sops.secrets."nextcloud/adminpass".path; - }; - }; - - systemd.services."nextcloud-setup" = { - requires = [ "postgresql.service" ]; - after = [ "postgresql.service" ]; - }; - - - - - microvm = { - hypervisor = "qemu"; - mem = 4 * 1024; - vcpu = 3; - - shares = [{ - source = "/nix/store"; - mountPoint = "/nix/.ro-store"; - tag = "store"; - proto = "virtiofs"; - socket = "store.socket"; - }] ++ map - (dir: { - source = "/var/lib/microvms/${config.networking.hostName}/${dir}"; - mountPoint = "/${dir}"; - tag = dir; - proto = "virtiofs"; - socket = "${dir}.socket"; - }) [ "etc" "var" "home" ]; - - interfaces = [{ - type = "tap"; - id = "vm-nextcloud"; - mac = "02:00:00:00:00:00"; - }]; - }; - - networking = { - hostName = "nextcloud"; - }; - - system.stateVersion = "22.05"; -} |
