diff --git a/.gitignore b/.gitignore index e43eb3b..6e08949 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,6 @@ +# nix-direnv /.direnv # files decrypted by vscode-sops +# + make_vpn_keys.sh .decrypted~* - -/tmp diff --git a/flake.lock b/flake.lock index 2a28134..86fffd4 100644 --- a/flake.lock +++ b/flake.lock @@ -9,11 +9,11 @@ ] }, "locked": { - "lastModified": 1778568789, - "narHash": "sha256-QyqWm2DL1UilvzsiM7e3iUBZFFj/RW05ANAnuXwuzXw=", + "lastModified": 1780814687, + "narHash": "sha256-C1ZwX25IeWb25xqu+mYbZPmRDfS7DA5VZElC2NAOcxU=", "ref": "refs/heads/main", - "rev": "2848aca5ea6082fbaae16ffa413577c118a16713", - "revCount": 83, + "rev": "e01b1e8b0afb2d45f6580ef1a4c60476fc031ee6", + "revCount": 86, "type": "git", "url": "https://git.min.rip/min/breeze.git" }, @@ -37,21 +37,6 @@ "type": "github" } }, - "crane_2": { - "locked": { - "lastModified": 1734808813, - "narHash": "sha256-3aH/0Y6ajIlfy7j52FGZ+s4icVX0oHhqBzRdlOeztqg=", - "owner": "ipetkov", - "repo": "crane", - "rev": "72e2d02dbac80c8c86bf6bf3e785536acf8ee926", - "type": "github" - }, - "original": { - "owner": "ipetkov", - "repo": "crane", - "type": "github" - } - }, "deploy-rs": { "inputs": { "flake-compat": "flake-compat", @@ -61,11 +46,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1766051518, - "narHash": "sha256-znKOwPXQnt3o7lDb3hdf19oDo0BLP4MfBOYiWkEHoik=", + "lastModified": 1781627888, + "narHash": "sha256-5yHuAh9k7rT7rtf3uRaXkiUyYvQE9oaCgzhprLm2mr8=", "owner": "serokell", "repo": "deploy-rs", - "rev": "d5eff7f948535b9c723d60cd8239f8f11ddc90fa", + "rev": "6d3087eedff75a715b40c0e124ba15d2dd7bec28", "type": "github" }, "original": { @@ -81,11 +66,11 @@ ] }, "locked": { - "lastModified": 1768923567, - "narHash": "sha256-GVJ0jKsyXLuBzRMXCDY6D5J8wVdwP1DuQmmvYL/Vw/Q=", + "lastModified": 1781152676, + "narHash": "sha256-RxWs5ND31KzTG7wvMM+PMfUjyNpmIEr999lqNARaM5o=", "owner": "nix-community", "repo": "disko", - "rev": "00395d188e3594a1507f214a2f15d4ce5c07cb28", + "rev": "ff8702b4de27f72b4c78573dfb89ec74e36abdf1", "type": "github" }, "original": { @@ -115,11 +100,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1768135262, - "narHash": "sha256-PVvu7OqHBGWN16zSi6tEmPwwHQ4rLPU9Plvs8/1TUBY=", + "lastModified": 1778716662, + "narHash": "sha256-m1Yf0wZ8j1OHjTc2UwHwyQRSnNeSgLJOd7q5Y45hzi4=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "80daad04eddbbf5a4d883996a73f3f542fa437ac", + "rev": "f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb", "type": "github" }, "original": { @@ -146,24 +131,6 @@ "type": "github" } }, - "flake-utils_2": { - "inputs": { - "systems": "systems_3" - }, - "locked": { - "lastModified": 1731533236, - "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, "impermanence": { "locked": { "lastModified": 1737831083, @@ -182,11 +149,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1769089682, - "narHash": "sha256-9yA/LIuAVQq0lXelrZPjLuLVuZdm03p8tfmHhnDIkms=", + "lastModified": 1781509190, + "narHash": "sha256-uJZs9Di8I6ciTp6jiojj0HzlNpBkud8ax5aT/O5aJkw=", "owner": "nixos", "repo": "nixpkgs", - "rev": "078d69f03934859a181e81ba987c2bb033eebfc5", + "rev": "d6df3513510aa548c83868fd22bfddd0a8c0a0d4", "type": "github" }, "original": { @@ -198,11 +165,11 @@ }, "nixpkgs-lib": { "locked": { - "lastModified": 1765674936, - "narHash": "sha256-k00uTP4JNfmejrCLJOwdObYC9jHRrr/5M/a/8L2EIdo=", + "lastModified": 1777168982, + "narHash": "sha256-GOkGPcboWE9BmGCRMLX3worL4EMnsnG8MyKmXNeYuhQ=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "2075416fcb47225d9b68ac469a5c4801a9c4dd85", + "rev": "f5901329dade4a6ea039af1433fb087bd9c1fe14", "type": "github" }, "original": { @@ -219,32 +186,9 @@ "flake-parts": "flake-parts", "impermanence": "impermanence", "nixpkgs": "nixpkgs", - "sim-breeze": "sim-breeze", "sops-nix": "sops-nix" } }, - "sim-breeze": { - "inputs": { - "crane": "crane_2", - "flake-utils": "flake-utils_2", - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1740803896, - "narHash": "sha256-l7r91rD5iM5Vuagoqs0aIgYW68lIEHTf3oPIRoVm5Og=", - "ref": "refs/heads/main", - "rev": "ab744ebb5024dc391a03774571a2cb09bc225a11", - "revCount": 74, - "type": "git", - "url": "ssh://git@git.min.rip/min/sim-breeze.git" - }, - "original": { - "type": "git", - "url": "ssh://git@git.min.rip/min/sim-breeze.git" - } - }, "sops-nix": { "inputs": { "nixpkgs": [ @@ -252,11 +196,11 @@ ] }, "locked": { - "lastModified": 1768863606, - "narHash": "sha256-1IHAeS8WtBiEo5XiyJBHOXMzECD6aaIOJmpQKzRRl64=", + "lastModified": 1780547341, + "narHash": "sha256-Gq8KNx5A7hBB3uGJaj6eQfLDIz5YdLu92gqBcvHvoUo=", "owner": "Mic92", "repo": "sops-nix", - "rev": "c7067be8db2c09ab1884de67ef6c4f693973f4a2", + "rev": "9ed65852b6257fbeae4355bc24ecfea307ca759a", "type": "github" }, "original": { @@ -295,21 +239,6 @@ "type": "github" } }, - "systems_3": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, "utils": { "inputs": { "systems": "systems_2" diff --git a/flake.nix b/flake.nix index 32d97bc..768ef11 100644 --- a/flake.nix +++ b/flake.nix @@ -1,5 +1,5 @@ { - description = "computer systems infrastructure"; + description = "my system configs^_^"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11"; @@ -19,9 +19,6 @@ breeze.url = "git+https://git.min.rip/min/breeze.git"; breeze.inputs.nixpkgs.follows = "nixpkgs"; - - sim-breeze.url = "git+ssh://git@git.min.rip/min/sim-breeze.git"; - sim-breeze.inputs.nixpkgs.follows = "nixpkgs"; }; outputs = inputs: diff --git a/nixos/hosts/silver/default.nix b/nixos/hosts/silver/default.nix index 0527198..a95e28d 100644 --- a/nixos/hosts/silver/default.nix +++ b/nixos/hosts/silver/default.nix @@ -16,7 +16,6 @@ inputs.disko.nixosModules.disko inputs.impermanence.nixosModules.impermanence inputs.breeze.nixosModules.${system}.breeze - inputs.sim-breeze.nixosModules.${system}.sim-breeze ./configuration.nix ]; } diff --git a/nixos/hosts/silver/services/default.nix b/nixos/hosts/silver/services/default.nix index 5b1b384..7d8565f 100644 --- a/nixos/hosts/silver/services/default.nix +++ b/nixos/hosts/silver/services/default.nix @@ -4,7 +4,6 @@ _: { ./breeze.nix ./min-rip.nix ./gitea.nix - ./sim-breeze.nix ./synapse.nix ./nebula.nix ./prometheus.nix diff --git a/nixos/hosts/silver/services/sim-breeze.nix b/nixos/hosts/silver/services/sim-breeze.nix deleted file mode 100644 index d93f7c3..0000000 --- a/nixos/hosts/silver/services/sim-breeze.nix +++ /dev/null @@ -1,67 +0,0 @@ -{config, ...}: let - httpIntPort = 14012; - dom = "simul.lol"; -in { - # xray depends on nginx config in this file - imports = [ - ./xray.nix - ]; - - sops.secrets."svc-sim-breeze-upload_key" = { - owner = "sim-breeze"; - group = "sim-breeze"; - }; - - services.nginx.virtualHosts.${dom} = { - forceSSL = true; - enableACME = true; - - quic = true; - - locations."/" = { - proxyPass = "http://127.0.0.1:${toString httpIntPort}"; - extraConfig = '' - add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always; - - # advertise http3 - add_header Alt-Svc 'h3=":$server_port"; ma=86400'; - ''; - }; - - extraConfig = let - cloudflarePem = ../../../keys/cloudflare.pem; - in '' - ssl_client_certificate ${cloudflarePem}; - ssl_verify_client on; - ''; - }; - - systemd.tmpfiles.rules = [ - "d /srv/uploads-sim 0750 sim-breeze sim-breeze - -" - ]; - - services.sim-breeze = { - enable = true; - uploadKeyFile = config.sops.secrets."svc-sim-breeze-upload_key".path; - - settings = { - engine = { - base_url = "https://${dom}"; - max_upload_len = 2147483648; - max_temp_lifetime = 43200; - max_strip_len = 16777216; - - disk.save_path = "/srv/uploads-sim"; - cache = { - max_length = 268435456; - upload_lifetime = 1800; - scan_freq = 60; - mem_capacity = 4294967296; - }; - }; - - http.listen_on = "127.0.0.1:${toString httpIntPort}"; - logger.level = "info"; - }; - }; -} diff --git a/nixos/hosts/silver/services/xray.nix b/nixos/hosts/silver/services/xray.nix deleted file mode 100644 index 01d3eaa..0000000 --- a/nixos/hosts/silver/services/xray.nix +++ /dev/null @@ -1,45 +0,0 @@ -{ - config, - lib, - ... -}: let - httpIntPort = 14060; - dom = "simul.lol"; - user = "xray"; - group = "xray"; -in { - # depends upon sim-breeze.nix - services.nginx.virtualHosts.${dom} = { - locations."/streaming" = { - proxyPass = "http://127.0.0.1:${toString httpIntPort}"; - proxyWebsockets = true; - }; - }; - - sops.secrets."svc-xray-settings" = { - sopsFile = ../../../../secrets/silver/xray.json; - format = "json"; - name = "svc-xray-settings.json"; # xray needs .json extension - key = ""; # extract whole file. not nonexistent key `svc-xray-settings` - - owner = user; - inherit group; - }; - - services.xray = { - enable = true; - settingsFile = config.sops.secrets."svc-xray-settings".path; - }; - - # assign user/group to xray - users.users.${user} = { - isSystemUser = true; - inherit group; - }; - users.groups.${group} = {}; - systemd.services.xray.serviceConfig = { - User = user; - Group = group; - DynamicUser = lib.mkForce false; - }; -} diff --git a/secrets/silver/default.yaml b/secrets/silver/default.yaml index 3786a0b..2e07e8e 100644 --- a/secrets/silver/default.yaml +++ b/secrets/silver/default.yaml @@ -1,10 +1,8 @@ root-pw: ENC[AES256_GCM,data:VCaP0E5A/UV1LLHotZK2B6AcfXZtQhi13t0wguv8tfoljwSbzcuYIhOMDIbL0BLPcaJRA7S//LhCDmQszfs/NNH5bcRBIoxPjUjKJ+V3ip/mEFWj1LypMIOWlKt1jOAtdMpmbK3uygGUNg==,iv:SOsaoox+J3rPTmw1MUJDwbFxexPVUYoIMfJo7YRTBvw=,tag:6R+Z1gsX37zgLyMz//wZvw==,type:str] user-pw: ENC[AES256_GCM,data:5qJ/TLLdHyQVTftN882UJZ/FPAbHUGQkw1eXqajCt2Aw2wca5D7lWhwccix79Ws1DCK/w7cQjn48ys20faODQbcXO0TkQl6GYPqD+z3j2HETWuFgZqh0yW3pl/L1S5w4Jk2bALEJ7FXthg==,iv:9BETCLg4b2uE4QezblY6Krofvuieaqd3Cbk3ucpR58E=,tag:BeyHB28CqxiZa+KWjnv5Fw==,type:str] -svc-nodemusicbot-env: ENC[AES256_GCM,data:XoTn7WuFbfs8P+MvoMLfwpvUJ4IGGRMhdG1HXdmXGiI9s6ZTlipnIL70MYlih5kKn/wSBR2QDd9i6AErbz3hDUAkCh0tBuiZTDuSctUU0X2PCnrBnbg=,iv:ayrHgGO0zCl7apVKjMGI1MbtkN8V3j6dT0Mv07/KoYQ=,tag:TdAussU7bBg+jxpLufR1sw==,type:str] svc-vcnotifier-env: ENC[AES256_GCM,data:8DwT17Aosvu7/Q2ecbir/t9HOtanPlFeBgLOzxtcv2BpCIGTEHqbVk9pegKQKc7lGhj5OrVg4HvNnQNEdEu5fLqB2XpMV8ltS7PL1wEz,iv:CfnXvb2wSRwQAURSLUrV4jofGnFOE6PQan7KPPhERjI=,tag:ve1Dh+63N4B6W7ZtvbDCFA==,type:str] svc-breeze-upload_key: ENC[AES256_GCM,data:qNNH4/Q0rk2lsMImzpVe54+DbSAOiGjo,iv:rX9zvcPt6qSbPs6sKYO0T8EVaHU/u9QDoT/ISHdQSV4=,tag:kivJyeJGtuBP0l54qJ0t9w==,type:str] svc-breeze-deletion_secret: ENC[AES256_GCM,data:foilGTV7493fl7f/ZnN1bO7f4YLGapXlIzRLXUTyEkolOB9yiizhD0X5ayozWIHCBMMkFxf61hB16L2mSu+YwA==,iv:h7+UcfalppFqbDIWGHrSkPT4jYVUKPzyZwqVTwOrMoI=,tag:DAXFYBUP7keOi3ymXE+96Q==,type:str] -svc-sim-breeze-upload_key: ENC[AES256_GCM,data:qm93iBzGhqp7IuZ01uZ6PyL5bL45+W0oOeDyQRGEzZw=,iv:5F7BV5Sg6GUxIGQychaEZSeG7xDFF+JdRL83PJULWJA=,tag:W/Q8vGaPoLNnj1Wyvc9Cnw==,type:str] svc-synapse-synapse-config: ENC[AES256_GCM,data:r8ZYi67CfftGheassCFiLOVcFUho+sNNe0XCkyQETHT6Q/w2jqO9eAVA2EDJyK4Vk3S4MP6ppcGxwocMmTYzkAjmtwf6a7GzUyh14+Lj5VTybvIKOze0wuLlsEUUYgU=,iv:HTnPaS5/ZvdJIMKiTfPffZmemp5IGTo/mIWrpafk/Fk=,tag:2HusbhzmxqsTMz5/78WCRA==,type:str] svc-gitea-runner-env: ENC[AES256_GCM,data:M2hV8YM03dcBcgpJqbpiW6RGlhDvkfF/ExF+J1GF+39GnOsBWwPKteM5EAUB2Wrl/zRFifgfNLLdYgSEWhJsT1cBLhI3vwE5,iv:9/nvC3sS6XcLxgeKrEg/AaFhptXCm3uvGgSUMAz4p5Y=,tag:A1MnoJP6aekXuWHhlONnkw==,type:str] svc-nebula-key: ENC[AES256_GCM,data:cxNlWEzpzUG78XnuzXXo/LX0FixPe82IzBjat9+tEhf81qnVJVpafdGDbyqL1PLx3cncjqzeV/ntiTLOaBra8WCPrgC0YJ161JNPGjdrOt1pFT4C2E2Wjv0G3qONhxSUQ8BSht4QxOu+Sy0OMu8gKiRsAwvtJMDYsMy0J5CM,iv:+5OnTzeAYBcUQIf8zU9BHizgGy07KAUujMPALr52YZw=,tag:MrDn7z6MnW/c0MM+zIgAUg==,type:str] @@ -48,7 +46,7 @@ sops: NVREcHJGWWIvY0Z1OGt4cGN6am1RaXMKAnlb8FOJ1wO5qtcmej57s7rhWjv5wqIn nCUJX0R7s0/KH3aj98bX/4hQg2ZAw1l+xViOOIfwfRnzLWeyaAnk5A== -----END AGE ENCRYPTED FILE----- - lastmodified: "2026-01-24T00:50:27Z" - mac: ENC[AES256_GCM,data:NH6rNg1HYF8R9tNwSWTRy382QWnrENrJYFaSZs+UvH1XX7swljmJFqtPpMCo1TqyquzInzEPqsidwwY14HUCNuEugr9D/mN1r8Yv1pbNTE2kjoXRQJ0tlfi6DrT+xoLKnO0lgMCYVd1pdSZwQ35/4LefcvL+nVmv81AyoDYOCvw=,iv:MI1pZ2dZhrCWkJJFe8ubkt0mlqlWA7O+s2OTE+u2dDg=,tag:CSmJP9nfd1AsbZUPWGM34Q==,type:str] + lastmodified: "2026-06-17T00:01:05Z" + mac: ENC[AES256_GCM,data:fKI37IgUDkrVbAS+p4bXapXGGA+b+aalBWX+FdHBSXux2Hy8PJ23WtsM9z8b4vImHLAenu/p3c6CvtegshhDyFvFWqmMQ4HXYWArvB/aXbjenKtK2DmZQyWiJBSFxz+M1HbIUg5YSMm5Av/WZnnwX23QVghURe6bYb1z5hJNIyU=,iv:v5KXM9SMJoBp9T32DkrwqOKCXMrvK1K8wWW9DmePtU0=,tag:PyZzjDF9AG7uTuAt+kjatA==,type:str] unencrypted_suffix: _unencrypted - version: 3.11.0 + version: 3.12.1 diff --git a/secrets/silver/xray.json b/secrets/silver/xray.json deleted file mode 100644 index 4b7efc3..0000000 --- a/secrets/silver/xray.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "log": { - "loglevel": "ENC[AES256_GCM,data:mbQi7zKBog==,iv:1Xxb95L7iloljmHdBsYY50rCoQyrRu7AeU1sCN/tyzw=,tag:62F9cRuxJTyrTJ4OG09aUQ==,type:str]" - }, - "inbounds": [ - { - "listen": "ENC[AES256_GCM,data:HtY8ByxZ3vkM,iv:ZXYZ0es7pFOA/RGQQvCNRU23i7n7AGza1pqP4KvAoS0=,tag:GScJnzymZJ6uUlhwmppfaQ==,type:str]", - "port": "ENC[AES256_GCM,data:+qHgc8o=,iv:Ya3KrZzLjcb7uVAXFhscjFMD6yJXnyt/AakRk2SS6eA=,tag:DA+69lIbzm+z6ev7kfpSVA==,type:float]", - "protocol": "ENC[AES256_GCM,data:R6dhbB0=,iv:TwVobIOIZG3qXM3UylX2yAc04U77rh+XROwqH0fcXTw=,tag:xktgDmPYjxA1TP27w4dFyg==,type:str]", - "settings": { - "clients": [ - { - "id": "ENC[AES256_GCM,data:sW/OrfmvvIoUCesh6o6i13ii42ppMlULMCHm7dGNR60THrL+,iv:5o1ebsFvFz7FV/7bfEZWpjoTGpCGWpvS6c7JPlpCJuU=,tag:hTXbENZLcD4pUNfvPe9axA==,type:str]", - "email": "ENC[AES256_GCM,data:5ecahRH9zjXwQ3UshHJciCs=,iv:wt9ikuL6g2Pqrew0S9zs8z4Sn6TjIxuCIW7NNAZ6R/g=,tag:pcSreGlfKzsMJmFX1k8DdQ==,type:str]" - } - ], - "decryption": "ENC[AES256_GCM,data:THm0tQ==,iv:fcCansdqlMqfyaa4qoLeXVyV+QGEm7hfPr6L84VL0wc=,tag:TnO5Wu7KlwK+qB77xOGSjQ==,type:str]" - }, - "streamSettings": { - "network": "ENC[AES256_GCM,data:bU4N8q8sCJc67uo=,iv:S4nLjgnVn18Lw3vTqZewu2H735WCKB6HXpuySWHax/U=,tag:zwLcQYneVvZYaim381H1CA==,type:str]", - "httpupgradeSettings": { - "path": "ENC[AES256_GCM,data:/r2IHJSgagkshA==,iv:eb+CVVjsE1bWzhxd4a0u6lM3J65AqZ3wOeHdm7AQrgU=,tag:hblCpH7Vnqir6uZHO7AdYA==,type:str]" - } - } - } - ], - "outbounds": [ - { - "protocol": "ENC[AES256_GCM,data:+5U3oYGUBA==,iv:Z35TWquRT5f51jQoAEROACUtyI7fPFyGxa/gXumSEq4=,tag:Ui3YF9lTxP1T5D4Xq+I13Q==,type:str]", - "settings": {} - } - ], - "sops": { - "age": [ - { - "recipient": "age1yubikey1qg5k0y844v5e79uwax3r00u7zdljwnjlrmwvdr3st9m5a3ra5098qy0sjdj", - "enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHBpdi1wMjU2IGpBdE54USBBM2pNeE1B\nYVVZUGc5ellpSk5RS1pJNURFTkYvUzNmRS96cTZaM1VOSEhVWgpOeU5VQUY3R3Zn\naHpsdGluRnJjZnV1bzNDS3A5WXVYQWpaaFpob3RaTWpZCi0tLSA0aHRiV0tuZFda\nVGI3Z0F4b0U5b1ZKMGlKNDRMeERBbVB1VmpkK3lFaTkwCh4I81eVgiv2kf0WBo84\n9gn/BOeFlAORXh0GJt4g496lwkIFWb/NSTG9Vl2hdGx8OCw/3vUhcbWL8Ndtx34c\n0Ls=\n-----END AGE ENCRYPTED FILE-----\n" - }, - { - "recipient": "age1yjqjfdpajzg8a2cj4e5ax6wcg5rq3337rm9jwsfzug2tr7yj8yfq27vteh", - "enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBwVFJlVzNtSmFzTkZ4SW5s\nb2U0Szc0SytGZjRUVEFCbzBKd2lQOG96amhFCkRtMXQ0UG1qcm9lbjBDRnBiQ21Q\nZ3h1RDZtN0VONTdvWk1RWTE1WEwxd0kKLS0tIGNGSHl3NWE2SjFMd29CcDJ3Znlx\nQUNkNkhLTXpoWk1WVndUbGRRbnBNOG8K2sDAgRPo/4qlc/NQBV5fmDEX21Ri/qr8\np1ttuUxo141ZuTnJ/czKdMMiJScaIghUMZW4oFyxLwqQZfTSdyy4mw==\n-----END AGE ENCRYPTED FILE-----\n" - }, - { - "recipient": "age19yhycdgqczrvttszq97ccljh684x3r7f5dj4p0wdwqsrusqlcayse0vsh3", - "enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB5SjVJS2NRS1VwSm42bWRP\nVXFqT2wvWUVqS2RiZGVZTWEvTDNqbGExWFhRCkY5N213WEp1RWp6bkZEdkcyNUhO\nclVCTjI4enpBOHNUMEJTMzZoTzdlWjgKLS0tIDRpaU9NZitxY3lzL3Q4MGtXM3lN\nZWpRT3hhZ1hTeVhnMFRVZlAvOUIyYWcKeamBTHEl7QVFxFevy5ZiDQFgEFIAM+1u\n8bvwoMfrq95DKIqxC1cQ1ndTzALdok7kWfPjKG3nDxgFS1y84Fh04Q==\n-----END AGE ENCRYPTED FILE-----\n" - } - ], - "lastmodified": "2025-05-13T20:34:00Z", - "mac": "ENC[AES256_GCM,data:JqBN/0K0BT3cZ+CNaRMMM5zTA26QvAPQcKuPmZda1DTWmu7uCzpvGhZb58VFDFDG5Pj7hqFy9ba++cu8GcBuAqbu/wlW9ogkgWtBdDi92wZyqU7KYO0cFVYuz8MVJBmI/tr1ikdsRypjdgGYKNLXhr9h3lQiQGGkB2uIe3SiKpA=,iv:LBB0T+Zdgt0ZK3cs8/ewpYJPetqol963DKVTfWutglY=,tag:Gp9sZRk1nrLAGqU0mlKfpQ==,type:str]", - "unencrypted_suffix": "_unencrypted", - "version": "3.10.2" - } -}