diff --git a/modules/config/default.nix b/modules/config/default.nix index c4665a3..746948e 100755 --- a/modules/config/default.nix +++ b/modules/config/default.nix @@ -56,7 +56,6 @@ let subdomain = stringType; label = stringType; name = stringType; - short = stringType; hostname = stringType; tags = listType; domains = genOptions stringType "url"; diff --git a/modules/config/instances/config/audiobookshelf.nix b/modules/config/instances/config/audiobookshelf.nix index 71d11d3..b548863 100755 --- a/modules/config/instances/config/audiobookshelf.nix +++ b/modules/config/instances/config/audiobookshelf.nix @@ -14,7 +14,6 @@ in { label = audiobookshelfLabel; name = audiobookshelfName; - short = "Books"; sops = { path0 = "${sopsPath}/${audiobookshelfName}"; }; diff --git a/modules/config/instances/config/forgejo.nix b/modules/config/instances/config/forgejo.nix index d9f84a2..d769152 100755 --- a/modules/config/instances/config/forgejo.nix +++ b/modules/config/instances/config/forgejo.nix @@ -15,7 +15,6 @@ in { label = label; name = name; - short = label; email = { address0 = "noreply@${domain3}"; }; diff --git a/modules/config/instances/config/glance.nix b/modules/config/instances/config/glance.nix index 1bf45de..9d76723 100755 --- a/modules/config/instances/config/glance.nix +++ b/modules/config/instances/config/glance.nix @@ -15,7 +15,6 @@ in { label = label; name = name; - short = label; email = { address0 = "noreply@${domain0}"; }; diff --git a/modules/config/instances/config/jellyfin.nix b/modules/config/instances/config/jellyfin.nix index e002298..31c1b48 100755 --- a/modules/config/instances/config/jellyfin.nix +++ b/modules/config/instances/config/jellyfin.nix @@ -13,7 +13,6 @@ in { label = label; name = name; - short = "Jelly"; sops = { path0 = "${sopsPath}/${name}"; }; @@ -34,8 +33,8 @@ in path1 = "${servicePath}/${label}/cache"; }; ports = { - port0 = 8096; # Jellyfin HTTP - port1 = 5055; # Jellyseer + port0 = 5055; # Jellyseer + port1 = 8096; # Jellyfin HTTP port2 = 8920; # Jellyfin HTTPS }; ssl = { diff --git a/modules/config/instances/config/mastodon.nix b/modules/config/instances/config/mastodon.nix index 639d4a3..cf7095a 100755 --- a/modules/config/instances/config/mastodon.nix +++ b/modules/config/instances/config/mastodon.nix @@ -15,7 +15,6 @@ in { label = label; name = name; - short = "Mast"; email = { address0 = "noreply@${domain3}"; }; diff --git a/modules/config/instances/config/matrix.nix b/modules/config/instances/config/matrix.nix index aa26cce..a3efe24 100755 --- a/modules/config/instances/config/matrix.nix +++ b/modules/config/instances/config/matrix.nix @@ -11,7 +11,6 @@ in { label = label; name = name; - short = label; sops = { path0 = "${sopsPath}/${name}"; }; diff --git a/modules/config/instances/config/nextcloud.nix b/modules/config/instances/config/nextcloud.nix index cf5c873..233a213 100755 --- a/modules/config/instances/config/nextcloud.nix +++ b/modules/config/instances/config/nextcloud.nix @@ -14,7 +14,6 @@ in { label = label; name = name; - short = "Next"; email = { address0 = "noreply@${name}.${domain0}"; }; diff --git a/modules/config/instances/config/ollama.nix b/modules/config/instances/config/ollama.nix index 4e463f0..643f7ab 100755 --- a/modules/config/instances/config/ollama.nix +++ b/modules/config/instances/config/ollama.nix @@ -14,7 +14,6 @@ in { label = label; name = name; - short = label; sops = { path0 = "${sopsPath}/${name}"; }; diff --git a/modules/config/instances/config/opencloud.nix b/modules/config/instances/config/opencloud.nix index 530313f..179a3d0 100755 --- a/modules/config/instances/config/opencloud.nix +++ b/modules/config/instances/config/opencloud.nix @@ -15,7 +15,6 @@ in { label = label; name = name; - short = "Cloud"; email = { address0 = "noreply@${domain0}"; }; diff --git a/modules/config/instances/config/owncast.nix b/modules/config/instances/config/owncast.nix index 41d692d..5d7f072 100755 --- a/modules/config/instances/config/owncast.nix +++ b/modules/config/instances/config/owncast.nix @@ -15,7 +15,6 @@ in { label = label; name = name; - short = "Cast"; sops = { path0 = "${sopsPath}/${name}"; }; diff --git a/modules/config/instances/config/peertube.nix b/modules/config/instances/config/peertube.nix index e5c3018..93b0a73 100755 --- a/modules/config/instances/config/peertube.nix +++ b/modules/config/instances/config/peertube.nix @@ -15,7 +15,6 @@ in { label = label; name = name; - short = "Peer"; email = { address0 = "noreply@${domain3}"; }; diff --git a/modules/config/instances/config/searx.nix b/modules/config/instances/config/searx.nix index 50579ce..087f75b 100755 --- a/modules/config/instances/config/searx.nix +++ b/modules/config/instances/config/searx.nix @@ -15,7 +15,6 @@ in { label = label; name = name; - short = "Sear"; email = { address0 = "noreply@${domain0}"; }; diff --git a/modules/config/instances/config/syncthing.nix b/modules/config/instances/config/syncthing.nix index db583c0..22badb1 100755 --- a/modules/config/instances/config/syncthing.nix +++ b/modules/config/instances/config/syncthing.nix @@ -14,7 +14,6 @@ in { label = label; name = name; - short = "Sync"; sops = { path0 = "${sopsPath}/${name}"; }; diff --git a/modules/config/instances/config/synology.nix b/modules/config/instances/config/synology.nix index b4ee41e..0af590d 100755 --- a/modules/config/instances/config/synology.nix +++ b/modules/config/instances/config/synology.nix @@ -11,7 +11,6 @@ in { label = label; name = name; - short = "Nas"; tags = [ name "dsm" diff --git a/modules/config/instances/config/upRootNutrition.nix b/modules/config/instances/config/upRootNutrition.nix index 2531f51..5748123 100755 --- a/modules/config/instances/config/upRootNutrition.nix +++ b/modules/config/instances/config/upRootNutrition.nix @@ -12,7 +12,6 @@ in { label = label; name = name; - short = "upRoot"; email = { address0 = "nick@${domain3}"; }; diff --git a/modules/config/instances/config/vaultwarden.nix b/modules/config/instances/config/vaultwarden.nix index f1400ac..a2bf140 100755 --- a/modules/config/instances/config/vaultwarden.nix +++ b/modules/config/instances/config/vaultwarden.nix @@ -14,7 +14,6 @@ in { label = label; name = name; - short = "Vault"; email = { address0 = "noreply@${name}.${domain0}"; }; diff --git a/modules/config/instances/config/web.nix b/modules/config/instances/config/web.nix index f725831..beedbf9 100755 --- a/modules/config/instances/config/web.nix +++ b/modules/config/instances/config/web.nix @@ -6,12 +6,10 @@ let domain2 domain3 ; - label = "Router"; in { - label = label; name = "router"; - short = label; + label = "Router"; domains = { url0 = domain0; url1 = domain1; diff --git a/modules/home/gui/apps/browsers/floorp/config/bookmarks/config/development.nix b/modules/home/gui/apps/browsers/floorp/config/bookmarks/config/development.nix index f7ba28a..d428930 100755 --- a/modules/home/gui/apps/browsers/floorp/config/bookmarks/config/development.nix +++ b/modules/home/gui/apps/browsers/floorp/config/bookmarks/config/development.nix @@ -84,26 +84,5 @@ in ]; keyword = "Hack"; } - { - name = "Elm-Land Server"; - url = "http://localhost:1234"; - tags = [ - "elm-land" - "elm" - "land" - ]; - keyword = "Website"; - } - { - name = "Namecheap"; - url = "https://www.namecheap.com"; - tags = [ - "namecheap" - "name" - "cheap" - "dns" - ]; - keyword = "Name"; - } ]; } diff --git a/modules/home/gui/apps/browsers/floorp/config/bookmarks/config/flake/selfHosted.nix b/modules/home/gui/apps/browsers/floorp/config/bookmarks/config/flake/selfHosted.nix index 3f4d85f..48f7fe3 100755 --- a/modules/home/gui/apps/browsers/floorp/config/bookmarks/config/flake/selfHosted.nix +++ b/modules/home/gui/apps/browsers/floorp/config/bookmarks/config/flake/selfHosted.nix @@ -1,5 +1,11 @@ { flake, ... }: let + inherit (flake.config.people) + user0 + ; + inherit (flake.config.people.users.${user0}) + aliases + ; inherit (flake.config.machines.devices) synology ceres @@ -9,78 +15,140 @@ let instances ; - makeBookmarks = - { - suffix, - urlTemplate, - services, - }: - builtins.map (name: { - name = "${instances.${name}.label} ${suffix}"; - url = urlTemplate name; - tags = instances.${name}.tags; - keyword = instances.${name}.short; - }) (builtins.map (service: instances.${service}.name) services); - - bookmarkConfigs = - let - port = name: toString instances.${name}.ports.port0; - in - [ - { - suffix = "(Remote)"; - urlTemplate = name: "https://${instances.${name}.domains.url0}"; - services = [ - "audiobookshelf" - "forgejo" - "glance" - "jellyfin" - "mastodon" - "ollama" - "opencloud" - "owncast" - "peertube" - "searx" - "vaultwarden" - ]; - } - { - suffix = "(Desktop)"; - urlTemplate = "http://${mars.ip.address0}:${port}"; - services = [ - "ollama" - "syncthing" - ]; - } - { - suffix = "(Server)"; - urlTemplate = "http://${ceres.ip.address0}:${port}"; - services = [ - "jellyfin" - ]; - } - { - suffix = "(Synology)"; - urlTemplate = "http://${synology.ip.address0}:${port}"; - services = [ - "syncthing" - ]; - } - ]; - - generatedBookmarks = builtins.concatLists (builtins.map makeBookmarks bookmarkConfigs); - - flatBookmarks = [ - { - name = instances.web.label; - url = "http://${instances.web.localhost.address2}"; - tags = instances.web.tags; - keyword = instances.web.label; - } - ]; in { name = "Self Hosted"; toolbar = false; - bookmarks = flatBookmarks ++ generatedBookmarks; + bookmarks = [ + { + name = "Elm-Land Server"; + url = "http://localhost:1234"; + tags = [ + "elm-land" + "elm" + "land" + ]; + keyword = "Website"; + } + { + name = instances.opencloud.label; + url = "https://${instances.opencloud.domains.url0}"; + tags = [ + + ]; + keyword = "Cloud"; + } + { + name = instances.forgejo.label; + url = "https://${instances.forgejo.domains.url0}"; + tags = [ + + ]; + keyword = instances.forgejo.label; + } + { + name = "${instances.jellyfin.label} (Internet)"; + url = "https://${instances.jellyfin.domains.url0}"; + tags = [ ]; + keyword = instances.jellyfin.label; + } + { + name = "${instances.jellyfin.label} (Local)"; + url = "http://${ceres.ip.address0}:${toString instances.jellyfin.ports.port1}"; + tags = [ ]; + keyword = instances.jellyfin.label; + } + { + name = instances.mastodon.label; + url = "https://${instances.mastodon.domains.url0}"; + tags = [ + + ]; + keyword = instances.mastodon.label; + } + { + name = "Namecheap"; + url = "https://www.namecheap.com"; + tags = [ + "namecheap" + "name" + "cheap" + "dns" + ]; + keyword = "Name"; + } + { + name = instances.nextcloud.label; + url = "https://${instances.nextcloud.domains.url0}"; + tags = [ + + ]; + keyword = instances.nextcloud.label; + } + { + name = "${instances.glance.label} (Local)"; + url = "https://${instances.glance.domains.url0}"; + tags = [ + + ]; + keyword = instances.glance.label; + } + { + name = "${instances.ollama.label} (Server)"; + url = "https://${instances.ollama.domains.url0}"; + tags = [ ]; + keyword = instances.ollama.label; + } + { + name = "${instances.ollama.label} (Desktop)"; + url = "http://${mars.ip.address0}:${toString instances.ollama.ports.port0}"; + tags = [ ]; + keyword = instances.ollama.label; + } + { + name = "Router"; + url = "http://${instances.web.localhost.address2}"; + tags = [ + ]; + keyword = "Router"; + } + { + name = "${instances.searx.label} (Internet)"; + url = "https://${instances.searx.domains.url0}"; + tags = [ + + ]; + keyword = instances.searx.label; + } + { + name = "${instances.syncthing.label} (${instances.synology.label})"; + url = "http://${synology.ip.address0}:${toString instances.syncthing.ports.port0}"; + tags = [ + ]; + keyword = instances.syncthing.label; + } + { + name = "${instances.syncthing.label} (Desktop)"; + url = "http://localhost:${toString instances.syncthing.ports.port0}"; + tags = [ + ]; + keyword = instances.syncthing.label; + } + { + name = instances.synology.label; + url = "https://${synology.ip.address0}:${toString instances.synology.ports.port0}"; + tags = [ + + ]; + keyword = instances.synology.label; + } + { + name = instances.vaultwarden.label; + url = "https://${instances.vaultwarden.domains.url0}"; + tags = [ + + ]; + keyword = instances.vaultwarden.label; + } + ]; } diff --git a/modules/nixos/services/jellyfin/default.nix b/modules/nixos/services/jellyfin/default.nix index 37720a7..c4ade14 100755 --- a/modules/nixos/services/jellyfin/default.nix +++ b/modules/nixos/services/jellyfin/default.nix @@ -25,7 +25,7 @@ in redir /.well-known/carddav /remote.php/dav/ 301 redir /.well-known/caldav /remote.php/dav/ 301 - reverse_proxy ${localhost}:${toString service.ports.port0} + reverse_proxy ${localhost}:${toString service.ports.port1} tls ${service.ssl.cert} ${service.ssl.key} '';