From e393a4481bd2f8da8c04c3f22a1b3f505c1fdf2b Mon Sep 17 00:00:00 2001 From: Danilo Reyes Date: Sun, 12 Oct 2025 19:59:46 -0600 Subject: [PATCH] reverted server factory --- modules/factories/mkserver.nix | 1 + modules/servers/atticd.nix | 4 +-- modules/servers/audiobookshelf.nix | 6 ++-- modules/servers/bazarr.nix | 6 ++-- modules/servers/drpp.nix | 4 +-- modules/servers/firefox-syncserver.nix | 6 ++-- modules/servers/flame.nix | 6 ++-- modules/servers/gitea.nix | 4 +-- modules/servers/homepage.nix | 10 ++++-- modules/servers/jellyfin.nix | 3 +- modules/servers/kavita.nix | 6 ++-- modules/servers/lidarr.nix | 4 +-- modules/servers/maloja.nix | 4 +-- modules/servers/mealie.nix | 4 +-- modules/servers/metube.nix | 4 +-- modules/servers/microbin.nix | 4 +-- modules/servers/multi-scrobbler.nix | 6 ++-- modules/servers/nextcloud.nix | 5 +-- modules/servers/nix-serve.nix | 4 +-- modules/servers/ombi.nix | 4 +-- modules/servers/plex-discord-bot.nix | 4 +-- modules/servers/plex.nix | 4 +-- modules/servers/portfolio.nix | 4 +-- modules/servers/prowlarr.nix | 4 +-- modules/servers/qbittorrent.nix | 2 +- modules/servers/radarr.nix | 4 +-- modules/servers/readeck.nix | 4 +-- modules/servers/ryot.nix | 4 +-- modules/servers/shiori.nix | 4 +-- modules/servers/sonarr.nix | 4 +-- modules/servers/stash.nix | 4 +-- modules/servers/synapse.nix | 6 ++-- modules/servers/tranga.nix | 4 +-- modules/servers/vaultwarden.nix | 4 +-- parts/core.nix | 49 -------------------------- 35 files changed, 74 insertions(+), 126 deletions(-) diff --git a/modules/factories/mkserver.nix b/modules/factories/mkserver.nix index 38f348d..47e645a 100644 --- a/modules/factories/mkserver.nix +++ b/modules/factories/mkserver.nix @@ -107,4 +107,5 @@ in proxyReverseFix proxyReversePrivate ; + mkServerOptions = mkOptions; } diff --git a/modules/servers/atticd.nix b/modules/servers/atticd.nix index 3b0e619..7615b85 100644 --- a/modules/servers/atticd.nix +++ b/modules/servers/atticd.nix @@ -1,14 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.atticd; in { - options.my.servers.atticd = inputs.self.lib.mkServerOptions "atticd" "cache" 2343 lib; + options.my.servers.atticd = setup.mkOptions "atticd" "cache" 2343; config = lib.mkIf (cfg.enable && config.my.secureHost) { sops.secrets."private_cache_keys/atticd".sopsFile = ../../secrets/keys.yaml; services.atticd = { diff --git a/modules/servers/audiobookshelf.nix b/modules/servers/audiobookshelf.nix index b9b0698..1bd1c9b 100644 --- a/modules/servers/audiobookshelf.nix +++ b/modules/servers/audiobookshelf.nix @@ -1,16 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.audiobookshelf; in { - options.my.servers.audiobookshelf = - inputs.self.lib.mkServerOptions "audiobookshelf" "audiobooks" 5687 - lib; + options.my.servers.audiobookshelf = setup.mkOptions "audiobookshelf" "audiobooks" 5687; config = lib.mkIf (cfg.enable && config.my.secureHost) { my.servers.audiobookshelf.enableSocket = true; services.audiobookshelf = { diff --git a/modules/servers/bazarr.nix b/modules/servers/bazarr.nix index 3f0369b..0c59891 100644 --- a/modules/servers/bazarr.nix +++ b/modules/servers/bazarr.nix @@ -1,16 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.bazarr; in { - options.my.servers.bazarr = - inputs.self.lib.mkServerOptions "bazarr" "subs" config.services.bazarr.listenPort - lib; + options.my.servers.bazarr = setup.mkOptions "bazarr" "subs" config.services.bazarr.listenPort; config.services.bazarr = lib.mkIf cfg.enable { inherit (cfg) enable; group = "piracy"; diff --git a/modules/servers/drpp.nix b/modules/servers/drpp.nix index 541fb5c..d4e3ea1 100644 --- a/modules/servers/drpp.nix +++ b/modules/servers/drpp.nix @@ -1,14 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.drpp; in { - options.my.servers.drpp = inputs.self.lib.mkServerOptions "drpp" "drpp" 0 lib; + options.my.servers.drpp = setup.mkOptions "drpp" "drpp" 0; config.virtualisation.oci-containers.containers.drpp = lib.mkIf cfg.enable { image = "ghcr.io/phin05/discord-rich-presence-plex:latest"; environment = { diff --git a/modules/servers/firefox-syncserver.nix b/modules/servers/firefox-syncserver.nix index e39329a..9a38cf0 100644 --- a/modules/servers/firefox-syncserver.nix +++ b/modules/servers/firefox-syncserver.nix @@ -1,16 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.firefox-syncserver; in { - options.my.servers.firefox-syncserver = - inputs.self.lib.mkServerOptions "firefox-syncserver" "sync" 4233 - lib; + options.my.servers.firefox-syncserver = setup.mkOptions "firefox-syncserver" "sync" 4233; config = lib.mkIf (cfg.enable && config.my.secureHost) { # sops.secrets.firefox-syncserver.sopsFile = ../../secrets/env.yaml; services.firefox-syncserver = { diff --git a/modules/servers/flame.nix b/modules/servers/flame.nix index fc98487..6f7c0b9 100644 --- a/modules/servers/flame.nix +++ b/modules/servers/flame.nix @@ -1,18 +1,18 @@ { lib, config, - inputs, ... }: let cfg = config.my.servers.flame; cfgS = config.my.servers.flameSecret; enable = (cfg.enable || cfgS.enable) && config.my.secureHost; + setup = import ../factories/mkserver.nix { inherit lib config; }; in { options.my.servers = { - flame = inputs.self.lib.mkServerOptions "flame" "start" 5005 lib; - flameSecret = inputs.self.lib.mkServerOptions "flameSecret" "qampqwn4wprhqny8h8zj" 5007 lib; + flame = setup.mkOptions "flame" "start" 5005; + flameSecret = setup.mkOptions "flameSecret" "qampqwn4wprhqny8h8zj" 5007; }; config = lib.mkIf enable { sops.secrets = { diff --git a/modules/servers/gitea.nix b/modules/servers/gitea.nix index ba23892..4b10e25 100644 --- a/modules/servers/gitea.nix +++ b/modules/servers/gitea.nix @@ -1,11 +1,11 @@ { lib, config, - inputs, pkgs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.gitea; in { @@ -13,7 +13,7 @@ in ../nix/gitea-actions-runners/ryujinx.nix ../nix/gitea-actions-runners/nixos.nix ]; - options.my.servers.gitea = inputs.self.lib.mkServerOptions "gitea" "git" 9083 lib; + options.my.servers.gitea = setup.mkOptions "gitea" "git" 9083; config = lib.mkIf (cfg.enable && config.my.secureHost) { sops.secrets.gitea.sopsFile = ../../secrets/env.yaml; services.gitea = { diff --git a/modules/servers/homepage.nix b/modules/servers/homepage.nix index f35fc72..8a63365 100644 --- a/modules/servers/homepage.nix +++ b/modules/servers/homepage.nix @@ -1,14 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.homepage; in { - options.my.servers.homepage = inputs.self.lib.mkServerOptions "homepage" "home" 8082 lib; + options.my.servers.homepage = setup.mkOptions "homepage" "home" 8082; config = lib.mkIf config.my.secureHost { sops.secrets = lib.mkIf cfg.enable { homepage.sopsFile = ../../secrets/homepage.yaml; @@ -29,7 +29,11 @@ in }; widgets = import ./homepage/widgets.nix; services = import ./homepage/services.nix { inherit lib config; }; - bookmarks = inputs.self.lib.autoImport ./homepage/bookmarks (_: true) |> map import; + bookmarks = + builtins.readDir ./homepage/bookmarks + |> builtins.attrNames + |> builtins.filter (file: builtins.match ".*\\.nix" file != null) + |> map (file: import ./homepage/bookmarks/${file}); }; }; } diff --git a/modules/servers/jellyfin.nix b/modules/servers/jellyfin.nix index 13a0464..1de6171 100644 --- a/modules/servers/jellyfin.nix +++ b/modules/servers/jellyfin.nix @@ -8,6 +8,7 @@ let cfg = config.my.servers.jellyfin; inherit (inputs.jawz-scripts.packages.x86_64-linux) sub-sync; + setup = import ../factories/mkserver.nix { inherit lib config; }; sub-sync-path = [ pkgs.nix pkgs.bash @@ -21,7 +22,7 @@ let ]; in { - options.my.servers.jellyfin = inputs.self.lib.mkServerOptions "jellyfin" "flix" 8096 lib; + options.my.servers.jellyfin = setup.mkOptions "jellyfin" "flix" 8096; config = lib.mkIf (cfg.enable && config.my.secureHost) { environment.systemPackages = [ pkgs.jellyfin-ffmpeg diff --git a/modules/servers/kavita.nix b/modules/servers/kavita.nix index 55600d3..24fca7e 100644 --- a/modules/servers/kavita.nix +++ b/modules/servers/kavita.nix @@ -1,16 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.kavita; in { - options.my.servers.kavita = - inputs.self.lib.mkServerOptions "kavita" "library" config.services.kavita.settings.Port - lib; + options.my.servers.kavita = setup.mkOptions "kavita" "library" config.services.kavita.settings.Port; config = lib.mkIf (cfg.enable && config.my.secureHost) { sops.secrets.kavita-token = { owner = config.users.users.kavita.name; diff --git a/modules/servers/lidarr.nix b/modules/servers/lidarr.nix index 58c7b01..cd7e9f3 100644 --- a/modules/servers/lidarr.nix +++ b/modules/servers/lidarr.nix @@ -1,14 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.lidarr; in { - options.my.servers.lidarr = inputs.self.lib.mkServerOptions "lidarr" "music" 8686 lib; + options.my.servers.lidarr = setup.mkOptions "lidarr" "music" 8686; config.virtualisation.oci-containers.containers.lidarr = lib.mkIf cfg.enable { autoStart = true; image = "linuxserver/lidarr:version-2.13.3.4711"; diff --git a/modules/servers/maloja.nix b/modules/servers/maloja.nix index 21b3192..e0526e9 100644 --- a/modules/servers/maloja.nix +++ b/modules/servers/maloja.nix @@ -1,14 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.maloja; in { - options.my.servers.maloja = inputs.self.lib.mkServerOptions "maloja" "maloja" 42010 lib; + options.my.servers.maloja = setup.mkOptions "maloja" "maloja" 42010; config = lib.mkIf (cfg.enable && config.my.secureHost) { sops.secrets.maloja.sopsFile = ../../secrets/env.yaml; virtualisation.oci-containers.containers.maloja = { diff --git a/modules/servers/mealie.nix b/modules/servers/mealie.nix index f3865d7..eef34ef 100644 --- a/modules/servers/mealie.nix +++ b/modules/servers/mealie.nix @@ -1,14 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.mealie; in { - options.my.servers.mealie = inputs.self.lib.mkServerOptions "mealie" "mealie" 9925 lib; + options.my.servers.mealie = setup.mkOptions "mealie" "mealie" 9925; config = lib.mkIf (cfg.enable && config.my.secureHost) { sops.secrets.mealie.sopsFile = ../../secrets/env.yaml; services.mealie = { diff --git a/modules/servers/metube.nix b/modules/servers/metube.nix index 02a3f19..7cf3e97 100644 --- a/modules/servers/metube.nix +++ b/modules/servers/metube.nix @@ -1,14 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.metube; in { - options.my.servers.metube = inputs.self.lib.mkServerOptions "metube" "bajameesta" 8881 lib; + options.my.servers.metube = setup.mkOptions "metube" "bajameesta" 8881; config.virtualisation.oci-containers.containers.metube = lib.mkIf cfg.enable { image = "ghcr.io/alexta69/metube:latest"; ports = [ "${toString cfg.port}:8081" ]; diff --git a/modules/servers/microbin.nix b/modules/servers/microbin.nix index 0313d73..333888f 100644 --- a/modules/servers/microbin.nix +++ b/modules/servers/microbin.nix @@ -1,14 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.microbin; in { - options.my.servers.microbin = inputs.self.lib.mkServerOptions "microbin" "copy" 8086 lib; + options.my.servers.microbin = setup.mkOptions "microbin" "copy" 8086; config.services.microbin = lib.mkIf (cfg.enable && config.my.secureHost) { inherit (cfg) enable; settings = { diff --git a/modules/servers/multi-scrobbler.nix b/modules/servers/multi-scrobbler.nix index 2d9b942..ee3df9c 100644 --- a/modules/servers/multi-scrobbler.nix +++ b/modules/servers/multi-scrobbler.nix @@ -1,16 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.multi-scrobbler; in { - options.my.servers.multi-scrobbler = - inputs.self.lib.mkServerOptions "multi-scrobbler" "scrobble" 9078 - lib; + options.my.servers.multi-scrobbler = setup.mkOptions "multi-scrobbler" "scrobble" 9078; config = lib.mkIf (cfg.enable && config.my.secureHost) { sops.secrets.multi-scrobbler.sopsFile = ../../secrets/env.yaml; virtualisation.oci-containers.containers.multi-scrobbler = { diff --git a/modules/servers/nextcloud.nix b/modules/servers/nextcloud.nix index 1431b34..8a97373 100644 --- a/modules/servers/nextcloud.nix +++ b/modules/servers/nextcloud.nix @@ -6,6 +6,7 @@ ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; commonProxyConfig = '' proxy_set_header Host $host; ''; @@ -34,8 +35,8 @@ let in { options.my.servers = { - nextcloud = inputs.self.lib.mkServerOptions "nextcloud" "cloud" 80 lib; - collabora = inputs.self.lib.mkServerOptions "collabora" "collabora" 9980 lib; + nextcloud = setup.mkOptions "nextcloud" "cloud" 80; + collabora = setup.mkOptions "collabora" "collabora" 9980; go-vod.enable = lib.mkEnableOption "Go-VOD video transcoding service"; }; config = lib.mkIf (cfg.enable && config.my.servers.postgres.enable && config.my.secureHost) { diff --git a/modules/servers/nix-serve.nix b/modules/servers/nix-serve.nix index fdceba8..74a932a 100644 --- a/modules/servers/nix-serve.nix +++ b/modules/servers/nix-serve.nix @@ -1,15 +1,15 @@ { lib, - inputs, config, pkgs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.nix-serve; in { - options.my.servers.nix-serve = inputs.self.lib.mkServerOptions "nix-serve" "cache" 5000 lib; + options.my.servers.nix-serve = setup.mkOptions "nix-serve" "cache" 5000; config = lib.mkIf (cfg.enable && config.my.secureHost) { sops.secrets."private_cache_keys/miniserver".sopsFile = ../../secrets/keys.yaml; services.nix-serve = { diff --git a/modules/servers/ombi.nix b/modules/servers/ombi.nix index 11050d8..390ada9 100644 --- a/modules/servers/ombi.nix +++ b/modules/servers/ombi.nix @@ -1,14 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.ombi; in { - options.my.servers.ombi = inputs.self.lib.mkServerOptions "ombi" "requests" 3425 lib; + options.my.servers.ombi = setup.mkOptions "ombi" "requests" 3425; config.services.ombi = lib.mkIf cfg.enable { inherit (cfg) enable port; }; diff --git a/modules/servers/plex-discord-bot.nix b/modules/servers/plex-discord-bot.nix index 9a8175d..d45d84c 100644 --- a/modules/servers/plex-discord-bot.nix +++ b/modules/servers/plex-discord-bot.nix @@ -1,15 +1,15 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.plex-discord-bot; name = "plex-discord-bot"; in { - options.my.servers.plex-discord-bot = inputs.self.lib.mkServerOptions name name 0 lib; + options.my.servers.plex-discord-bot = setup.mkOptions name name 0; config.virtualisation.oci-containers.containers.plex-discord-bot = lib.mkIf cfg.enable { image = "ghcr.io/phin05/discord-rich-presence-plex:latest"; environment = { diff --git a/modules/servers/plex.nix b/modules/servers/plex.nix index 2b89770..931bae7 100644 --- a/modules/servers/plex.nix +++ b/modules/servers/plex.nix @@ -1,14 +1,14 @@ { lib, - inputs, config, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.plex; in { - options.my.servers.plex = inputs.self.lib.mkServerOptions "plex" "plex" 32400 lib; + options.my.servers.plex = setup.mkOptions "plex" "plex" 32400; config.services = lib.mkIf (cfg.enable && config.my.secureHost) { plex = { inherit (cfg) enable; diff --git a/modules/servers/portfolio.nix b/modules/servers/portfolio.nix index c987c09..cc5b8e9 100644 --- a/modules/servers/portfolio.nix +++ b/modules/servers/portfolio.nix @@ -1,14 +1,14 @@ { config, lib, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.websites.portfolio; in { - options.my.websites.portfolio = inputs.self.lib.mkServerOptions "portfolio" "portfolio" 0 lib; + options.my.websites.portfolio = setup.mkOptions "portfolio" "portfolio" 0; config.services.nginx.virtualHosts."danilo-reyes.com" = lib.mkIf cfg.enableProxy { forceSSL = true; enableACME = true; diff --git a/modules/servers/prowlarr.nix b/modules/servers/prowlarr.nix index e11bcb3..705846f 100644 --- a/modules/servers/prowlarr.nix +++ b/modules/servers/prowlarr.nix @@ -1,14 +1,14 @@ { lib, - inputs, config, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.prowlarr; in { - options.my.servers.prowlarr = inputs.self.lib.mkServerOptions "prowlarr" "indexer" 9696 lib; + options.my.servers.prowlarr = setup.mkOptions "prowlarr" "indexer" 9696; config = lib.mkIf cfg.enable { users.users.prowlarr = { group = "piracy"; diff --git a/modules/servers/qbittorrent.nix b/modules/servers/qbittorrent.nix index b55ddb9..b0ee1de 100644 --- a/modules/servers/qbittorrent.nix +++ b/modules/servers/qbittorrent.nix @@ -1,8 +1,8 @@ { + inputs, lib, config, pkgs, - inputs, ... }: let diff --git a/modules/servers/radarr.nix b/modules/servers/radarr.nix index 16156ad..49cea50 100644 --- a/modules/servers/radarr.nix +++ b/modules/servers/radarr.nix @@ -1,14 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.radarr; in { - options.my.servers.radarr = inputs.self.lib.mkServerOptions "radarr" "movies" 7878 lib; + options.my.servers.radarr = setup.mkOptions "radarr" "movies" 7878; config = lib.mkIf cfg.enable { services.radarr = { inherit (cfg) enable; diff --git a/modules/servers/readeck.nix b/modules/servers/readeck.nix index 04e5a28..754799f 100644 --- a/modules/servers/readeck.nix +++ b/modules/servers/readeck.nix @@ -1,14 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.readeck; in { - options.my.servers.readeck = inputs.self.lib.mkServerOptions "readeck" "laters" 9546 lib; + options.my.servers.readeck = setup.mkOptions "readeck" "laters" 9546; config = lib.mkIf (cfg.enable && config.my.secureHost) { sops.secrets.readeck.sopsFile = ../../secrets/env.yaml; services.readeck = { diff --git a/modules/servers/ryot.nix b/modules/servers/ryot.nix index 995eb9a..cfa358e 100644 --- a/modules/servers/ryot.nix +++ b/modules/servers/ryot.nix @@ -1,14 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.ryot; in { - options.my.servers.ryot = inputs.self.lib.mkServerOptions "ryot" "tracker" 8765 lib; + options.my.servers.ryot = setup.mkOptions "ryot" "tracker" 8765; config = lib.mkIf (cfg.enable && config.my.servers.postgres.enable && config.my.secureHost) { sops.secrets.ryot.sopsFile = ../../secrets/env.yaml; virtualisation.oci-containers.containers.ryot = { diff --git a/modules/servers/shiori.nix b/modules/servers/shiori.nix index 0ba0e92..104db5d 100644 --- a/modules/servers/shiori.nix +++ b/modules/servers/shiori.nix @@ -1,14 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.shiori; in { - options.my.servers.shiori = inputs.self.lib.mkServerOptions "shiori" "bookmarks" 4368 lib; + options.my.servers.shiori = setup.mkOptions "shiori" "bookmarks" 4368; config = lib.mkIf (cfg.enable && config.my.servers.postgres.enable && config.my.secureHost) { sops.secrets.shiori.sopsFile = ../../secrets/env.yaml; services.shiori = { diff --git a/modules/servers/sonarr.nix b/modules/servers/sonarr.nix index efd0db0..0b30915 100644 --- a/modules/servers/sonarr.nix +++ b/modules/servers/sonarr.nix @@ -1,14 +1,14 @@ { lib, config, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.sonarr; in { - options.my.servers.sonarr = inputs.self.lib.mkServerOptions "sonarr" "series" 8989 lib; + options.my.servers.sonarr = setup.mkOptions "sonarr" "series" 8989; config.services.sonarr = lib.mkIf cfg.enable { inherit (cfg) enable; group = "piracy"; diff --git a/modules/servers/stash.nix b/modules/servers/stash.nix index 949ffee..f0cb917 100644 --- a/modules/servers/stash.nix +++ b/modules/servers/stash.nix @@ -1,11 +1,11 @@ { lib, - inputs, config, pkgs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.stash; cfgS = config.services.stash; stashPythonFHS = pkgs.buildFHSEnv { @@ -28,7 +28,7 @@ let }; in { - options.my.servers.stash = inputs.self.lib.mkServerOptions "stash" "xxx" 9999 lib; + options.my.servers.stash = setup.mkOptions "stash" "xxx" 9999; config = lib.mkIf (cfg.enable && config.my.secureHost) { sops.secrets = { "stash/password".sopsFile = ../../secrets/secrets.yaml; diff --git a/modules/servers/synapse.nix b/modules/servers/synapse.nix index cfca71e..0c6e7f2 100644 --- a/modules/servers/synapse.nix +++ b/modules/servers/synapse.nix @@ -1,11 +1,11 @@ { lib, - inputs, config, pkgs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.synapse; cfgE = config.my.servers.element; domain = "wedsgk5ac2qcaf9yb.click"; @@ -19,8 +19,8 @@ let in { options.my.servers = { - synapse = inputs.self.lib.mkServerOptions "synapse" "pYLemuAfsrzNBaH77xSu" 8008 lib; - element = inputs.self.lib.mkServerOptions "element" "55a608953f6d64c199" 5345 lib; + synapse = setup.mkOptions "synapse" "pYLemuAfsrzNBaH77xSu" 8008; + element = setup.mkOptions "element" "55a608953f6d64c199" 5345; }; config = lib.mkIf (cfg.enable && config.my.secureHost) { my.servers = { diff --git a/modules/servers/tranga.nix b/modules/servers/tranga.nix index bf5fbd2..dded247 100644 --- a/modules/servers/tranga.nix +++ b/modules/servers/tranga.nix @@ -1,14 +1,14 @@ { config, lib, - inputs, ... }: let + setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.tranga; in { - options.my.servers.tranga = inputs.self.lib.mkServerOptions "tranga" "tranga" 9555 lib; + options.my.servers.tranga = setup.mkOptions "tranga" "tranga" 9555; config = lib.mkIf cfg.enable { virtualisation.oci-containers.containers = { tranga-api = { diff --git a/modules/servers/vaultwarden.nix b/modules/servers/vaultwarden.nix index 3e6614b..07fdbbc 100644 --- a/modules/servers/vaultwarden.nix +++ b/modules/servers/vaultwarden.nix @@ -1,15 +1,15 @@ { lib, - inputs, config, pkgs, ... }: let cfg = config.my.servers.vaultwarden; + setup = import ../factories/mkserver.nix { inherit lib config; }; in { - options.my.servers.vaultwarden = inputs.self.lib.mkServerOptions "vaultwarden" "vault" 8222 lib; + options.my.servers.vaultwarden = setup.mkOptions "vaultwarden" "vault" 8222; config = lib.mkIf (cfg.enable && config.my.servers.postgres.enable && config.my.secureHost) { sops.secrets.vaultwarden.sopsFile = ../../secrets/env.yaml; services.vaultwarden = { diff --git a/parts/core.nix b/parts/core.nix index d669d4b..07e9bac 100644 --- a/parts/core.nix +++ b/parts/core.nix @@ -55,55 +55,6 @@ in |> builtins.attrNames |> builtins.filter (file: builtins.match ".*\\.nix" file != null && filterFn file) |> map (file: dir + "/${file}"); - mkServerOptions = name: subdomain: port: lib: { - enable = lib.mkEnableOption "this server service"; - enableCron = lib.mkEnableOption "enable cronjob"; - enableProxy = lib.mkEnableOption "enable reverse proxy"; - port = lib.mkOption { - type = lib.types.int; - default = port; - }; - name = lib.mkOption { - type = lib.types.str; - default = name; - }; - domain = lib.mkOption { - type = lib.types.str; - default = "servidos.lat"; - }; - host = lib.mkOption { - type = lib.types.str; - default = "${subdomain}.servidos.lat"; - }; - hostName = lib.mkOption { - type = lib.types.str; - default = "miniserver"; - }; - url = lib.mkOption { - type = lib.types.str; - default = "https://${subdomain}.servidos.lat"; - }; - ip = lib.mkOption { - type = lib.types.str; - default = "127.0.0.1"; - }; - local = lib.mkOption { - type = lib.types.str; - default = "http://127.0.0.1:${toString port}"; - }; - isLocal = lib.mkOption { - type = lib.types.bool; - default = true; - }; - enableSocket = lib.mkOption { - type = lib.types.bool; - default = false; - }; - certPath = lib.mkOption { - type = lib.types.nullOr lib.types.path; - default = null; - }; - }; proxy = locations: { inherit locations; forceSSL = true;