From d5b44c8825810eebaa17d7663a8f3651fd4729f4 Mon Sep 17 00:00:00 2001 From: Jimbo Date: Fri, 3 Jan 2025 18:32:00 -0500 Subject: [PATCH] Add Seafile but fuck this stupid cock sucking bullshit --- .../services/server/fileserver/default.nix | 1 + .../server/fileserver/seafile/default.nix | 12 ++++++++++++ .../server/fileserver/seafile/nginx/default.nix | 17 +++++++++++++++++ 3 files changed, 30 insertions(+) create mode 100644 modules/system/services/server/fileserver/seafile/default.nix create mode 100644 modules/system/services/server/fileserver/seafile/nginx/default.nix diff --git a/modules/system/services/server/fileserver/default.nix b/modules/system/services/server/fileserver/default.nix index c10f4f6..3ff4afc 100644 --- a/modules/system/services/server/fileserver/default.nix +++ b/modules/system/services/server/fileserver/default.nix @@ -3,5 +3,6 @@ imports = [ ./nfs ./samba + ./seafile ]; } diff --git a/modules/system/services/server/fileserver/seafile/default.nix b/modules/system/services/server/fileserver/seafile/default.nix new file mode 100644 index 0000000..c43d614 --- /dev/null +++ b/modules/system/services/server/fileserver/seafile/default.nix @@ -0,0 +1,12 @@ +{ config, ... }: +{ + imports = [ ./nginx ]; + + services.seafile = { + enable = config.system.server.enable; + adminEmail = "jimbo@${config.domains.p2}"; + initialAdminPassword = config.secrets.mainAccPass; + ccnetSettings.General.SERVICE_URL = "https://sync.${config.domains.p2}"; + seafileSettings.fileserver.host = "unix:/run/seafile/server.sock"; + }; +} diff --git a/modules/system/services/server/fileserver/seafile/nginx/default.nix b/modules/system/services/server/fileserver/seafile/nginx/default.nix new file mode 100644 index 0000000..3146ab1 --- /dev/null +++ b/modules/system/services/server/fileserver/seafile/nginx/default.nix @@ -0,0 +1,17 @@ +{ lib, config, ... }: +{ + services.nginx.virtualHosts."sync.${config.domains.p2}" = lib.mkIf config.services.seafile.enable { + enableACME = true; + forceSSL = true; + locations = { + "/" = { + proxyPass = "http://unix:/run/seahub/gunicorn.sock"; + proxyWebsockets = true; + }; + "/seafhttp" = { + proxyPass = "http://unix:/run/seafile/server.sock"; + proxyWebsockets = true; + }; + }; + }; +}