aboutsummaryrefslogtreecommitdiff
path: root/infra/libkookie/configuration/server/nextcloud/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'infra/libkookie/configuration/server/nextcloud/default.nix')
-rw-r--r--infra/libkookie/configuration/server/nextcloud/default.nix44
1 files changed, 44 insertions, 0 deletions
diff --git a/infra/libkookie/configuration/server/nextcloud/default.nix b/infra/libkookie/configuration/server/nextcloud/default.nix
new file mode 100644
index 000000000000..545046916599
--- /dev/null
+++ b/infra/libkookie/configuration/server/nextcloud/default.nix
@@ -0,0 +1,44 @@
+{ config, lib, pkgs, ... }:
+
+{
+ services.nginx.enable = true;
+ services.nginx.virtualHosts."cloud.kookiejar.tech" = {
+ serverAliases = [ "cloud.alarei.kookie.space"];
+ useACMEHost = "alarei.kookie.space";
+ forceSSL = true;
+ };
+
+ # Give nextcloud "core" group
+ users.users.nextcloud.extraGroups = [ "core" ];
+
+ # Enable nextcloud and php settings
+ services.phpfpm.phpPackage = pkgs.php73;
+ services.nextcloud = {
+ enable = true;
+ package = pkgs.nextcloud19;
+ hostName = "cloud.kookiejar.tech";
+ https = true;
+ autoUpdateApps.enable = true;
+ config = {
+ dbtype = "pgsql";
+ dbuser = "nextcloud";
+ dbhost = "/run/postgresql";
+ dbname = "nextcloud";
+ adminpassFile = "/var/lib/nextcloud.admin.pw";
+ adminuser = "spacekookie";
+ };
+ home = "/datacore/cloud";
+ };
+
+ # Setup postgres (currently only used by nextcloud)
+ services.postgresql = {
+ enable = true;
+ ensureDatabases = [ "nextcloud" ];
+ ensureUsers = [
+ { name = "nextcloud";
+ ensurePermissions."DATABASE nextcloud" = "ALL PRIVILEGES";
+ }
+ ];
+ };
+
+}