From be04a00cf57590f8c2d01d036727efdf29bcbd2a Mon Sep 17 00:00:00 2001 From: Tyler Starr Date: Thu, 9 Nov 2023 15:44:24 -0800 Subject: [PATCH] Add dufs for webdav shares --- provision/hosts/torus/configuration.nix | 17 ++++++++++------ provision/hosts/torus/obsidian-vault.nix | 20 +++++++++++++++++++ provision/hosts/torus/share.nix | 20 +++++++++++++++++++ provision/modules/services/default.nix | 2 +- provision/modules/services/seafile-server.nix | 15 -------------- 5 files changed, 52 insertions(+), 22 deletions(-) create mode 100644 provision/hosts/torus/obsidian-vault.nix create mode 100644 provision/hosts/torus/share.nix delete mode 100644 provision/modules/services/seafile-server.nix diff --git a/provision/hosts/torus/configuration.nix b/provision/hosts/torus/configuration.nix index 3e805bc5..476c5f01 100644 --- a/provision/hosts/torus/configuration.nix +++ b/provision/hosts/torus/configuration.nix @@ -5,6 +5,8 @@ ./wireguard-server.nix ./samba-server.nix ./syncthing.nix + ./obsidian-vault.nix + ./share.nix ]; nix = { @@ -114,17 +116,21 @@ "rss.tstarr.us" = (SSL // { locations."/".proxyPass = "http://localhost:8081/"; }); - "wiki.tstarr.us" = (SSL // { - locations."/".proxyPass = "http://localhost:8082/"; - }); "rssbridge.tstarr.us" = (SSL // { locations."/".proxyPass = "http://localhost:3000/"; }); "media.tstarr.us" = (SSL // { locations."/".proxyPass = "http://localhost:8096/"; }); - "wiki.tstarr.us" = (SSL // { - locations."/".proxyPass = "http://localhost:4567/"; + "vault.tstarr.us" = (SSL // { + locations."/".proxyPass = "http://localhost:5000/"; + extraConfig = '' + auth_pam "Password Required"; + auth_pam_service_name "nginx"; + ''; + }); + "share.tstarr.us" = (SSL // { + locations."/".proxyPass = "http://localhost:5001/"; extraConfig = '' auth_pam "Password Required"; auth_pam_service_name "nginx"; @@ -140,7 +146,6 @@ }; services = { jellyfin.enable = true; - seafile-server.enable = true; }; system = { terminal.enable = true; diff --git a/provision/hosts/torus/obsidian-vault.nix b/provision/hosts/torus/obsidian-vault.nix new file mode 100644 index 00000000..ce0b1517 --- /dev/null +++ b/provision/hosts/torus/obsidian-vault.nix @@ -0,0 +1,20 @@ +{ config, lib, pkgs, user, ... }: +{ + networking.firewall.allowedTCPPorts = [ 5000 ]; + networking.firewall.allowedUDPPorts = [ 5000 ]; + + environment.systemPackages = with pkgs; [ dufs ]; + + systemd.services.obsidian-vault = { + description = "Start dufs containing obsidian vault (vulcan)"; + wantedBy = [ "default.target" ]; + + restartIfChanged = true; + + serviceConfig = { + Type = "simple"; + Restart = "always"; + ExecStart = "${pkgs.dufs}/bin/dufs -p 5000 -A /engi/apps/dufs/vault"; + }; + }; +} diff --git a/provision/hosts/torus/share.nix b/provision/hosts/torus/share.nix new file mode 100644 index 00000000..36503515 --- /dev/null +++ b/provision/hosts/torus/share.nix @@ -0,0 +1,20 @@ +{ config, lib, pkgs, user, ... }: +{ + networking.firewall.allowedTCPPorts = [ 5001 ]; + networking.firewall.allowedUDPPorts = [ 5001 ]; + + environment.systemPackages = with pkgs; [ dufs ]; + + systemd.services.share = { + description = "Start dufs for quick sharing of files"; + wantedBy = [ "default.target" ]; + + restartIfChanged = true; + + serviceConfig = { + Type = "simple"; + Restart = "always"; + ExecStart = "${pkgs.dufs}/bin/dufs -p 5001 -A /engi/apps/dufs/share"; + }; + }; +} diff --git a/provision/modules/services/default.nix b/provision/modules/services/default.nix index d419cdab..bd6cf36b 100644 --- a/provision/modules/services/default.nix +++ b/provision/modules/services/default.nix @@ -1,4 +1,4 @@ { ... }: { - imports = [ ./seafile-server.nix ./samba-client.nix ./jellyfin.nix ./virt-manager.nix ./peripherals.nix ]; + imports = [ ./samba-client.nix ./jellyfin.nix ./virt-manager.nix ./peripherals.nix ]; } diff --git a/provision/modules/services/seafile-server.nix b/provision/modules/services/seafile-server.nix deleted file mode 100644 index 1e18c55a..00000000 --- a/provision/modules/services/seafile-server.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ config, lib, pkgs, pkgs-unstable, user, ... }: - -let - cfg = config.modules.services.seafile-server; -in { - options.modules.services.seafile-server.enable = lib.mkEnableOption "seafile-server"; - config = lib.mkIf cfg.enable { - services.seafile = { - enable = true; - adminEmail = "starrtyler88@gmail.com"; - initialAdminPassword = "dude"; - ccnetSettings.General.SERVICE_URL = "https://wiki.tstarr.us"; - }; - }; -}