From 67ab901f19a79571995a0dad6ea06d37e0ae4aea Mon Sep 17 00:00:00 2001 From: dusk Date: Mon, 15 Sep 2025 15:52:43 +0300 Subject: [PATCH] feat(wolumonde): add clickee proxy --- _sources/generated.json | 44 ++++++++++++++++------- _sources/generated.nix | 38 +++++++++++++------- hosts/wolumonde/modules/blog.nix | 7 ---- hosts/wolumonde/modules/clickee-proxy.nix | 27 ++++++++++++++ nvfetcher.toml | 4 +++ pkgs-set/pkgs/clickee-proxy.nix | 1 + secrets/clickeeProxyConfig.age | 18 ++++++++++ secrets/clickerAuth.age | 17 --------- secrets/secrets.nix | 2 +- 9 files changed, 109 insertions(+), 49 deletions(-) create mode 100644 hosts/wolumonde/modules/clickee-proxy.nix create mode 100644 pkgs-set/pkgs/clickee-proxy.nix create mode 100644 secrets/clickeeProxyConfig.age delete mode 100644 secrets/clickerAuth.age diff --git a/_sources/generated.json b/_sources/generated.json index b1513df..8410a78 100644 --- a/_sources/generated.json +++ b/_sources/generated.json @@ -40,6 +40,26 @@ }, "version": "104a7d21a69c96a1eadf9bcd2807b7dcc968434b" }, + "clickee-proxy": { + "cargoLocks": null, + "date": "2025-09-15", + "extract": null, + "name": "clickee-proxy", + "passthru": null, + "pinned": false, + "src": { + "deepClone": false, + "fetchSubmodules": false, + "leaveDotGit": false, + "name": null, + "rev": "a60247a8d92e1802298fc197034d0b7b54cd90b7", + "sha256": "sha256-sMLvbvnhGGt+LpKmD3e/iPcEtUd6Yu+92DTlEwHxZCI=", + "sparseCheckout": [], + "type": "git", + "url": "https://tangled.sh/@poor.dog/clickee-proxy" + }, + "version": "a60247a8d92e1802298fc197034d0b7b54cd90b7" + }, "gomod2nix": { "cargoLocks": null, "date": "2025-08-24", @@ -63,7 +83,7 @@ }, "home": { "cargoLocks": null, - "date": "2025-09-11", + "date": "2025-09-15", "extract": null, "name": "home", "passthru": null, @@ -75,12 +95,12 @@ "name": null, "owner": "nix-community", "repo": "home-manager", - "rev": "9eab59f3e71ea3a725e4817d8dcf0da0824ad19d", - "sha256": "sha256-OrythrqccPKtuVt0mj26rr83Qo3Ljb4ZmwLdPGjzjMU=", + "rev": "11cc5449c50e0e5b785be3dfcb88245232633eb8", + "sha256": "sha256-Mv16aegXLulgyDunijP6SPFJNm8lSXb2w3Q0X+vZ9TY=", "sparseCheckout": [], "type": "github" }, - "version": "9eab59f3e71ea3a725e4817d8dcf0da0824ad19d" + "version": "11cc5449c50e0e5b785be3dfcb88245232633eb8" }, "limbusart": { "cargoLocks": null, @@ -138,7 +158,7 @@ }, "nixos-wsl": { "cargoLocks": null, - "date": "2025-09-12", + "date": "2025-09-15", "extract": null, "name": "nixos-wsl", "passthru": null, @@ -150,12 +170,12 @@ "name": null, "owner": "nix-community", "repo": "NixOS-WSL", - "rev": "42666441c3ddf34a8583a77f07a2c7cae32513c3", - "sha256": "sha256-ZzoQXe7GV7QX3B3Iw59BogmrtHSP5Ig7MAPPD0cOFW4=", + "rev": "134e117c969f42277f1c5e60c8fbcac103c2c454", + "sha256": "sha256-B+MT526k5th4x22h213/CgzdkKWIaeaa0+Y0uuCkH/I=", "sparseCheckout": [], "type": "github" }, - "version": "42666441c3ddf34a8583a77f07a2c7cae32513c3" + "version": "134e117c969f42277f1c5e60c8fbcac103c2c454" }, "nsid-tracker": { "cargoLocks": null, @@ -179,7 +199,7 @@ }, "tangled": { "cargoLocks": null, - "date": "2025-09-11", + "date": "2025-09-14", "extract": null, "name": "tangled", "passthru": null, @@ -189,13 +209,13 @@ "fetchSubmodules": false, "leaveDotGit": false, "name": null, - "rev": "acce4932c10307047c5710855bb97fa08132f08d", - "sha256": "sha256-3qQxSkJyotDf6WKau1DimetbKvXf4/jgTSZgcBErVyM=", + "rev": "708fbcf042177edb51e0c7cf53d4186eceb2c36c", + "sha256": "sha256-1Bg0qm86uaE2q4whS9lthUTh1hfUWRCHWBP+aO25yE8=", "sparseCheckout": [], "type": "git", "url": "https://tangled.sh/@tangled.sh/core" }, - "version": "acce4932c10307047c5710855bb97fa08132f08d" + "version": "708fbcf042177edb51e0c7cf53d4186eceb2c36c" }, "tangled-sqlite-lib": { "cargoLocks": null, diff --git a/_sources/generated.nix b/_sources/generated.nix index efcabda..97e570d 100644 --- a/_sources/generated.nix +++ b/_sources/generated.nix @@ -27,6 +27,20 @@ }; date = "2025-09-03"; }; + clickee-proxy = { + pname = "clickee-proxy"; + version = "a60247a8d92e1802298fc197034d0b7b54cd90b7"; + src = fetchgit { + url = "https://tangled.sh/@poor.dog/clickee-proxy"; + rev = "a60247a8d92e1802298fc197034d0b7b54cd90b7"; + fetchSubmodules = false; + deepClone = false; + leaveDotGit = false; + sparseCheckout = [ ]; + sha256 = "sha256-sMLvbvnhGGt+LpKmD3e/iPcEtUd6Yu+92DTlEwHxZCI="; + }; + date = "2025-09-15"; + }; gomod2nix = { pname = "gomod2nix"; version = "47d628dc3b506bd28632e47280c6b89d3496909d"; @@ -41,15 +55,15 @@ }; home = { pname = "home"; - version = "9eab59f3e71ea3a725e4817d8dcf0da0824ad19d"; + version = "11cc5449c50e0e5b785be3dfcb88245232633eb8"; src = fetchFromGitHub { owner = "nix-community"; repo = "home-manager"; - rev = "9eab59f3e71ea3a725e4817d8dcf0da0824ad19d"; + rev = "11cc5449c50e0e5b785be3dfcb88245232633eb8"; fetchSubmodules = false; - sha256 = "sha256-OrythrqccPKtuVt0mj26rr83Qo3Ljb4ZmwLdPGjzjMU="; + sha256 = "sha256-Mv16aegXLulgyDunijP6SPFJNm8lSXb2w3Q0X+vZ9TY="; }; - date = "2025-09-11"; + date = "2025-09-15"; }; limbusart = { pname = "limbusart"; @@ -89,15 +103,15 @@ }; nixos-wsl = { pname = "nixos-wsl"; - version = "42666441c3ddf34a8583a77f07a2c7cae32513c3"; + version = "134e117c969f42277f1c5e60c8fbcac103c2c454"; src = fetchFromGitHub { owner = "nix-community"; repo = "NixOS-WSL"; - rev = "42666441c3ddf34a8583a77f07a2c7cae32513c3"; + rev = "134e117c969f42277f1c5e60c8fbcac103c2c454"; fetchSubmodules = false; - sha256 = "sha256-ZzoQXe7GV7QX3B3Iw59BogmrtHSP5Ig7MAPPD0cOFW4="; + sha256 = "sha256-B+MT526k5th4x22h213/CgzdkKWIaeaa0+Y0uuCkH/I="; }; - date = "2025-09-12"; + date = "2025-09-15"; }; nsid-tracker = { pname = "nsid-tracker"; @@ -115,17 +129,17 @@ }; tangled = { pname = "tangled"; - version = "acce4932c10307047c5710855bb97fa08132f08d"; + version = "708fbcf042177edb51e0c7cf53d4186eceb2c36c"; src = fetchgit { url = "https://tangled.sh/@tangled.sh/core"; - rev = "acce4932c10307047c5710855bb97fa08132f08d"; + rev = "708fbcf042177edb51e0c7cf53d4186eceb2c36c"; fetchSubmodules = false; deepClone = false; leaveDotGit = false; sparseCheckout = [ ]; - sha256 = "sha256-3qQxSkJyotDf6WKau1DimetbKvXf4/jgTSZgcBErVyM="; + sha256 = "sha256-1Bg0qm86uaE2q4whS9lthUTh1hfUWRCHWBP+aO25yE8="; }; - date = "2025-09-11"; + date = "2025-09-14"; }; tangled-sqlite-lib = { pname = "tangled-sqlite-lib"; diff --git a/hosts/wolumonde/modules/blog.nix b/hosts/wolumonde/modules/blog.nix index 92f8f11..6733fdc 100644 --- a/hosts/wolumonde/modules/blog.nix +++ b/hosts/wolumonde/modules/blog.nix @@ -76,14 +76,7 @@ in }; }; - age.secrets.clickerAuth = { - file = ../../../secrets/clickerAuth.age; - }; - services.nginx.virtualHosts."poor.dog" = { locations."/".return = "301 https://gaze.systems$request_uri"; - locations."/click" = { - proxyPass = "http://100.64.0.1:8668"; - }; }; } diff --git a/hosts/wolumonde/modules/clickee-proxy.nix b/hosts/wolumonde/modules/clickee-proxy.nix new file mode 100644 index 0000000..e97ca33 --- /dev/null +++ b/hosts/wolumonde/modules/clickee-proxy.nix @@ -0,0 +1,27 @@ +{config, terra, ...}: let + port = 7145; +in { + age.secrets.clickeeProxyConfig = { + file = ../../../secrets/clickeeProxyConfig.age; + }; + + systemd.services.clickee-proxy = { + description = "clickee-proxy"; + wantedBy = [ "multi-user.target" ]; + after = [ "network.target" ]; + environment = { + PORT = toString port; + }; + serviceConfig = { + DynamicUser = true; + ExecStart = "${terra.clickee-proxy}/bin/clickee-proxy"; + Restart = "on-failure"; + RestartSec = 5; + EnvironmentFile = config.age.secrets.clickeeProxyConfig.path; + }; + }; + + services.nginx.virtualHosts."poor.dog" = { + locations."/click".proxyPass = "http://localhost:${toString port}"; + }; +} diff --git a/nvfetcher.toml b/nvfetcher.toml index 48c5396..2e6db3c 100644 --- a/nvfetcher.toml +++ b/nvfetcher.toml @@ -28,6 +28,10 @@ fetch.git = "https://tangled.sh/@poor.dog/nixos-cloud-resources" src.git = "https://git.gaze.systems/90008/limbusart.git" fetch.git = "https://git.gaze.systems/90008/limbusart.git" +[clickee-proxy] +src.git = "https://tangled.sh/@poor.dog/clickee-proxy" +fetch.git = "https://tangled.sh/@poor.dog/clickee-proxy" + [nsid-tracker] src.git = "https://tangled.sh/@poor.dog/nsid-tracker" fetch.git = "https://tangled.sh/@poor.dog/nsid-tracker" diff --git a/pkgs-set/pkgs/clickee-proxy.nix b/pkgs-set/pkgs/clickee-proxy.nix new file mode 100644 index 0000000..b093d31 --- /dev/null +++ b/pkgs-set/pkgs/clickee-proxy.nix @@ -0,0 +1 @@ +{ callPackage, inputs, ... }: callPackage "${inputs.clickee-proxy}/default.nix" { } diff --git a/secrets/clickeeProxyConfig.age b/secrets/clickeeProxyConfig.age new file mode 100644 index 0000000..4d180c9 --- /dev/null +++ b/secrets/clickeeProxyConfig.age @@ -0,0 +1,18 @@ +age-encryption.org/v1 +-> ssh-rsa Abmvag +rXYBEqyppa1vII17UfkCgvrF2bOcmRx5efeK/lH3v2/EPEeQSqitwe/k7B2sKqjQ +YdKmqpC/aVxhytNsOBxrp4g5kfSg22QVQ8ritVdZh+KsoGDQj1LHJPjzLRog3Ggp +NpcljIR7ErzGxlZxlNmI91WN3h4tF2OCiLlGlgK6VRAQizz2utB5Ra1yAiDL8g6y ++C92cQyvFNmC6oaZKy6vu0IFPoVs0hJnH7tP5F74aOeDulHYtLk7Y989U6aVd+o6 +XVERl5a4viL4mpyVwJcDL9AiaiASJo7Tchp6RCYhf9NJ5lfTEAFMVSiGx4IfdHI2 +I5NgwAyfqrZZiigqhEk437FtoJSNfjBG9m5g68LXjRwHxz2mLlxN0JWtRt+jHRPJ +Efz8oZ1rpvz+p4nIdjE7OstrsG2gL0BwhHd1sCnUB7vBT3mhobjXBhbjfoB25nNH +q9faLbW0fgPGDMU8fAR4rXKFJqigPYBjN+dQBxL0KBdvzH1VCZJ+Ol0lXkaUkqf1 +sp+v+Bw6DAbvyG6iwZKRRVn5i/R+i/H5+dUJdZ9uPCV6MImirmbkkJ9WGOsWL+17 +13FcZXqNoxuXd1gjZ48MjRd1+pyesAh2bAuUhXHc6czCNis6jnBYP/aZSfKVc1Mu +E0O45Gu6OAYTaEBMyCPLxainpAk2Y9A8vI5qSZfGx+Q +-> ssh-ed25519 KjIL7g s1mIT4Zxav+sFyx1jB/8ZnKCRqBsoeU/p4uqlKYXKFU +Rit1N3HT4enextQXjfT80rJOGkRayEvY301MAQgx5aQ +--- TnERkg6v0kCILlDDq8itt1r0gk1gj1IFQLa5kMEeA9I +�}�z®��mF��S�po# k�9�w��F��Lj�`7��D�qm�L��i:���nu���l�� +�y�+��ۋ\}',�y��S��(s�ꇽJ8e�d|�I1�C{�`�B��RAC�N���)���v�� \ No newline at end of file diff --git a/secrets/clickerAuth.age b/secrets/clickerAuth.age deleted file mode 100644 index 0f50dc9..0000000 --- a/secrets/clickerAuth.age +++ /dev/null @@ -1,17 +0,0 @@ -age-encryption.org/v1 --> ssh-rsa Abmvag -M2C/GI7Ri+2/UOFCRsHVXl/PdUV5wYVobAkEOpoyWe72w6ZavC1FVHf16FbkXf5w -uGlrzgZ3mbzGgagKFWu72sOb4YfHH4Z3OB6UX7e7ard+W3fgMnggK884OGmEDZUv -GebIu0yyfUlDKJDZBoTOfNEE0RIUgjcimNb4M37NsWAwN+MVK9jSMAKRy/hZoxU/ -Od8VL4hIb9DVvpKLK1WFmneEKD/aB2ufHk24nP0JtUY4HhvDccHxMyvlo9+cF4qV -k9vyP2YYpYDwC72lFyVTFgm3MwXuyxMgPr0mf4mIUfAxAYJCAcqmBxIEYmCRpe4r -2oRBhePWN18WENeQAmUpLMEacx/Q9JnCwqMCt7MqGVMMm6daBPF8eBtiM6adzvfY -Df9BTrx1RqRUJOivuDE7CQ+2Zjq9uoaqhcF/6MZqsQTNfnWe8sx/Q/WsyTOL/nb2 -PID0XD24+B9RFX4u+3jfkvhigXfKAitJuNLJYmUEu8ENMb6UHfHz8m/6XuSvTM+W -6u+XY9OGIT6SE5d6yIlv5L6ODViEC7AfPttOhBbCnNiKn1XSxjelbrfuRfxpCNy/ -XKe/NIhn/++5QIZvtTJ6IuTPiVr/4TMHa9cwOwq6kGsg53O57oNQbY56Ht4HptjJ -T/ASxWwSAALCKjXpKs/vIyy4oeMyE/iZv4uCMpq0QDQ --> ssh-ed25519 KjIL7g wUQcCTnha37X5gRAyaNY87bGBNhnwIdGvWv6jeAPRFc -Wv67Ho0D63zOYCjlq92fbXV4QOh8/bTHSxGkRjXjZlw ---- bZA2irveCmubxAztt+yJrEt/uBU94EDZ9aIP/4Zk3B8 -�b��}G��f�wb����[�u�C����ۇp8��w�Tr�L��U'!C !�+�(��p�Z"7����/�<�-���q��+�:z��m)(&b����l� \ No newline at end of file diff --git a/secrets/secrets.nix b/secrets/secrets.nix index aa3bbca..eff7191 100644 --- a/secrets/secrets.nix +++ b/secrets/secrets.nix @@ -33,7 +33,7 @@ in yusdacra wolumonde ]; - "clickerAuth.age".publicKeys = [ + "clickeeProxyConfig.age".publicKeys = [ yusdacra wolumonde ]; -- 2.51.2