From 7b0b9e2bae9831de299dc37c8665b41d0fcbfdd5 Mon Sep 17 00:00:00 2001 From: Konstantin Nazarov Date: Thu, 14 Mar 2024 10:13:21 +0000 Subject: [PATCH] Switch to nixos 23.11 --- configuration.nix | 74 ++++++++++++++++------------- emacs.el | 21 ++++++++ flake.lock | 28 +++++------ flake.nix | 4 +- nodes/knazarovcom/configuration.nix | 20 ++++++++ secrets.yaml | 8 ++-- 6 files changed, 101 insertions(+), 54 deletions(-) diff --git a/configuration.nix b/configuration.nix index ba0ca10..b4bddbe 100644 --- a/configuration.nix +++ b/configuration.nix @@ -4,19 +4,19 @@ { config, lib, nixpkgs, pkgs, home-manager, ... }: -let my_python = (pkgs.python3.withPackages (ps: with ps; [ git_plan ])); +let + my_python = (pkgs.python3.withPackages (ps: with ps; [ git_plan ])); - my_emacs = - (pkgs.emacsWithPackagesFromUsePackage { - config = ./emacs.el; - defaultInitFile = true; - package = pkgs.emacs29-pgtk.overrideAttrs (old: { withTreeSitter = true; }); - alwaysEnsure = true; - extraEmacsPackages = epkgs: [ - pkgs.mu - epkgs.treesit-grammars.with-all-grammars - ]; - }); + my_emacs = (pkgs.emacsWithPackagesFromUsePackage { + config = ./emacs.el; + defaultInitFile = true; + package = pkgs.emacs29-pgtk.overrideAttrs (old: { withTreeSitter = true; }); + alwaysEnsure = true; + extraEmacsPackages = epkgs: [ + pkgs.mu + epkgs.treesit-grammars.with-all-grammars + ]; + }); in { imports = [ @@ -96,7 +96,7 @@ in { users.users.knazarov = { isNormalUser = true; description = "Konstantin Nazarov"; - extraGroups = [ "networkmanager" "wheel" config.users.groups.keys.name]; + extraGroups = [ "networkmanager" "wheel" config.users.groups.keys.name ]; packages = with pkgs; [ ]; openssh.authorizedKeys.keys = [ "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDGxebDydOcs7URJjXFHMU++ruaZOJpXbK4ixH19pWTsX7WtxxriZxD4+RQ3oyllGG/8sEFzEe0NoTHUPU6YrBpfwT/ekGDmCJHtvZ+rZs+cRQd6tObfAUip1B1Mcvhuaj0prnrbfohOuHpvQ/L8TogIKuHgczDmud4KGUu0mxCsUHbD5tlKpsgN+dJXkvjxsO7JhhF9JpFTrYAU0gTuBPTt3ynpnZKrE1NgnE0iy+CEr/v41dLqxw3fUjT3nOFUQ1l/VKTw5mLt5Iw7XmBLuFGLRAVrwzXxeBCfYqKGYgY4QV8HCcVpcqC8zWmRskiRetzQ/5HwRagm4yZr0I+LZ305nGB0cSJzLWXXOUF6SDg2cqAXFpF/o2LoFCmaV5h3jmCGOUrowF7oV4mYwBMWfabrbZx21z/R56GkAOOEKc2h+Qh5wIj4yayX081SkqJK3J9+3vGG4VvXnwGnPnWQFqrzeedyV74maffGBGFYm0UOcD+oG6EwM+7MEUBpJm9m4c= knazarov" @@ -171,9 +171,11 @@ in { nixfmt my_emacs libreoffice + gcc #network-manager-applet (clang-tools.override { - llvmPackages = llvmPackages_16; + llvmPackages = llvmPackages_17; + enableLibcxx = true; }) # mainly for clang-format # wget my_python @@ -199,15 +201,15 @@ in { # Set default browser to qutebrowser in electron apps #environment.sessionVariables.DEFAULT_BROWSER = - #"${pkgs.qutebrowser}/bin/qutebrowser"; + #"${pkgs.qutebrowser}/bin/qutebrowser"; # Set default browser to qutebrowser everywhere else #xdg.mime.defaultApplications = { - #"text/html" = "org.qutebrowser.qutebrowser.desktop"; - #"x-scheme-handler/http" = "org.qutebrowser.qutebrowser.desktop"; - #"x-scheme-handler/https" = "org.qutebrowser.qutebrowser.desktop"; - #"x-scheme-handler/about" = "org.qutebrowser.qutebrowser.desktop"; - #"x-scheme-handler/unknown" = "org.qutebrowser.qutebrowser.desktop"; + #"text/html" = "org.qutebrowser.qutebrowser.desktop"; + #"x-scheme-handler/http" = "org.qutebrowser.qutebrowser.desktop"; + #"x-scheme-handler/https" = "org.qutebrowser.qutebrowser.desktop"; + #"x-scheme-handler/about" = "org.qutebrowser.qutebrowser.desktop"; + #"x-scheme-handler/unknown" = "org.qutebrowser.qutebrowser.desktop"; #}; # Enable screen sharing on Wayland @@ -322,16 +324,20 @@ in { services.keyd = { enable = true; - ids = [ "*" ]; - settings = { - main = { - capslock = "overload(control, esc)"; - leftalt = "layer(meta_mac)"; - leftmeta = "layer(alt)"; - }; - "meta_mac:M" = { - c = "C-insert"; - v = "S-insert"; + keyboards = { + default = { + ids = [ "*" ]; + settings = { + main = { + capslock = "overload(control, esc)"; + leftalt = "layer(meta_mac)"; + leftmeta = "layer(alt)"; + }; + "meta_mac:M" = { + c = "C-insert"; + v = "S-insert"; + }; + }; }; }; }; @@ -351,6 +357,7 @@ in { }; networking.firewall.allowedTCPPorts = [ + 8096 # Syncthing 8384 22000 @@ -368,7 +375,7 @@ in { # this value at the release version of the first install of this system. # Before changing this value read the documentation for this option # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). - system.stateVersion = "23.05"; # Did you read the comment? + system.stateVersion = "23.11"; # Did you read the comment? # needed for sway security.polkit.enable = true; @@ -530,9 +537,8 @@ in { "XF86MonBrightnessUp" = "exec brightnessctl s +5%"; "XF86MonBrightnessDown" = "exec brightnessctl s 5%-"; #"Mod4+Return" = - #"exec emacs --eval '(progn (setq confirm-kill-processes nil) (vterm))'"; - "Mod4+Return" = - "exec emacsclient -c"; + #"exec emacs --eval '(progn (setq confirm-kill-processes nil) (vterm))'"; + "Mod4+Return" = "exec emacsclient -c"; "Mod4+space" = "exec ${pkgs.foot}/bin/foot -T mylauncher -a mylauncher ${pkgs.q-sh}/bin/q"; "Mod4+p" = diff --git a/emacs.el b/emacs.el index 7273627..23a640c 100755 --- a/emacs.el +++ b/emacs.el @@ -955,7 +955,27 @@ window, unless BACKGROUND (prefix-argument) is non-nil. ;; C/C++ +(defun eldoc-short (arg) + "`eldoc' but uses the echo area by default and a prefix will swap to a buffer." + ;; https://github.com/joaotavora/eglot/discussions/1328 + (interactive "P") + (let (_) + (defvar eldoc-display-functions) + (setq eldoc-display-functions + (if arg '(eldoc-display-in-buffer) '(eldoc-display-in-echo-area))) + (eldoc t))) + (with-eval-after-load 'eglot + (add-hook + 'eglot-managed-mode-hook + (lambda () + ;; we want eglot to setup callbacks from eldoc, but we don't want eldoc + ;; running after every command. As a workaround, we disable it after we just + ;; enabled it. Now calling `M-x eldoc` will put the help we want in the eldoc + ;; buffer. Alternatively we could tell eglot to stay out of eldoc, and add + ;; the hooks manually, but that seems fragile to updates in eglot. + ;; (eldoc-mode -1) + )) (add-to-list 'eglot-server-programs `(c++-mode . ("clangd"))) (add-to-list 'eglot-server-programs @@ -973,6 +993,7 @@ window, unless BACKGROUND (prefix-argument) is non-nil. (add-hook 'c-mode-hook 'clang-format+-mode) (add-hook 'c-ts-mode-hook 'clang-format+-mode) (add-hook 'c++-mode-hook 'clang-format+-mode) +(add-hook 'c++-ts-mode-hook 'clang-format+-mode) (setq clang-format+-context 'buffer) ;; for viewing C/C++ coverage reports diff --git a/flake.lock b/flake.lock index 0add530..cc294f7 100755 --- a/flake.lock +++ b/flake.lock @@ -49,11 +49,11 @@ ] }, "locked": { - "lastModified": 1692221510, - "narHash": "sha256-arGqL5Gu7U8fnFTkaK+1dy5f/F+vk/T45gTP1MzxS7Q=", + "lastModified": 1708027330, + "narHash": "sha256-7jqtoikxzTgy68P+yRg5lGWnJit6S9LdkVM1wCDVlGc=", "owner": "~knazarov", "repo": "git-plan", - "rev": "9e39b2cdd29a4fdd7c43fc5f96d624c2bde11169", + "rev": "e94eee1acefbabfb8b0e9e64a6cf14f0730c5954", "type": "sourcehut" }, "original": { @@ -69,16 +69,16 @@ ] }, "locked": { - "lastModified": 1702195668, - "narHash": "sha256-Lxmjez0nfNBptdqV5GsXKm7Bb7swjGsrxiLxWJu0tL8=", + "lastModified": 1706981411, + "narHash": "sha256-cLbLPTL1CDmETVh4p0nQtvoF+FSEjsnJTFpTxhXywhQ=", "owner": "nix-community", "repo": "home-manager", - "rev": "33110fb3c7fe6a94b98b641866a5eddb64b7c23f", + "rev": "652fda4ca6dafeb090943422c34ae9145787af37", "type": "github" }, "original": { "owner": "nix-community", - "ref": "release-23.05", + "ref": "release-23.11", "repo": "home-manager", "type": "github" } @@ -105,11 +105,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1702407096, - "narHash": "sha256-9p9M0suFgxI9RHPWkIACcfcuuGB1L7Jf1QLMZOMyKaA=", + "lastModified": 1707680347, + "narHash": "sha256-x4w2tsjOxclzz3Rdfq1H4z7J3AmaRey/aoNx1vbaB1o=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "0b157469b7afebfe31e008e532c48540c78082a9", + "rev": "749d596bfb5f54543f70e80f700e044d070870a2", "type": "github" }, "original": { @@ -120,16 +120,16 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1702221085, - "narHash": "sha256-Br3GCSkkvkmw46cT6wCz6ro2H1WgDMWbKE0qctbdtL0=", + "lastModified": 1707514827, + "narHash": "sha256-Y+wqFkvikpE1epCx57PsGw+M1hX5aY5q/xgk+ebDwxI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "c2786e7084cbad90b4f9472d5b5e35ecb57958af", + "rev": "20f65b86b6485decb43c5498780c223571dd56ef", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-23.05", + "ref": "nixos-23.11", "repo": "nixpkgs", "type": "github" } diff --git a/flake.nix b/flake.nix index 1102a56..b458f9d 100755 --- a/flake.nix +++ b/flake.nix @@ -4,8 +4,8 @@ { inputs = { nixpkgs.url = "github:NixOS/nixpkgs"; - nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-23.05"; - home-manager.url = "github:nix-community/home-manager/release-23.05"; + nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-23.11"; + home-manager.url = "github:nix-community/home-manager/release-23.11"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; emacs-overlay.url = "github:nix-community/emacs-overlay"; emacs-overlay.inputs.nixpkgs.follows = "nixpkgs"; diff --git a/nodes/knazarovcom/configuration.nix b/nodes/knazarovcom/configuration.nix index e8dff2f..dc51fbc 100644 --- a/nodes/knazarovcom/configuration.nix +++ b/nodes/knazarovcom/configuration.nix @@ -25,6 +25,7 @@ }; security.pam.enableSSHAgentAuth = true; + security.pam.sshAgentAuth.enable = true; security.sudo.wheelNeedsPassword = false; nix.settings.trusted-users = [ "@wheel" ]; @@ -94,6 +95,11 @@ forceSSL = true; locations."/_matrix" = { proxyPass = "http://127.0.0.1:8008"; }; }; + "git.knazarov.com" = { + enableACME = true; + forceSSL = true; + locations."/" = { proxyPass = "http://127.0.0.1:3000"; }; + }; "turn.knazarov.com" = { enableACME = true; }; }; }; @@ -103,6 +109,7 @@ "knazarov.com".email = "mail@knazarov.com"; "vmatveeva.com".email = "mail@knazarov.com"; "matrix.knazarov.com".email = "mail@knazarov.com"; + "git.knazarov.com".email = "mail@knazarov.com"; "turn.knazarov.com" = { email = "mail@knazarov.com"; postRun = "systemctl restart coturn.service"; @@ -110,6 +117,19 @@ }; }; + services.forgejo = { + enable = true; + settings = { + service = { + DISABLE_REGISTRATION = true; + }; + server = { + ROOT_URL = "https://git.knazarov.com/"; + LANDING_PAGE = "explore"; + }; + }; + }; + services.dendrite = { enable = true; environmentFile = config.sops.secrets.matrix_registration_secret.path; diff --git a/secrets.yaml b/secrets.yaml index 7cd1b2c..7df324d 100644 --- a/secrets.yaml +++ b/secrets.yaml @@ -1,8 +1,8 @@ hello: ENC[AES256_GCM,data:+LPt8J+Ks1m10+zZ2Q96r3K2W6Yeng7M7+c2TYDQ+/4AJl6Xc6hVnU8PKk28RA==,iv:v3B/CcFFA7kuuPcYDa5qha0ZrtskW5p443Zm8kM7xqA=,tag:r8Y9uf1dmp+VfJOHFG75PQ==,type:str] fastmail_password: ENC[AES256_GCM,data:tHr8PqIg9DigRBu2bgjUeg==,iv:NI9bENFPuKcOt1cd2kg2DKU22J1dJ+3mK7UoceZagR4=,tag:oEgeQb1iLKisOqHi9Ds7xg==,type:str] -github_token: ENC[AES256_GCM,data:E1+wrI5VUlnsqfKNH6fY7IXqHIiagAByLYCfIfdd2+HcvniAvZzaIyKB3nma5eks3csN5A9XgYXRb09lELroW00obmIWbWZPdFhDccHRtVOqFq/r+x27O/3MAkDqID5mc8xD8SqWUibr9UZfXjFcXC4bx7+a4pyy45akz9RLIJRVKDzxMBGmZ/wQcuFS9uy2Pv2yWRL7q4olzvc/kzNFRWCLU7ThIAJSIx//NluOE8xjsA==,iv:Cdc2wwGdXprch1hHd0CwJM6vUAYmfhI4FpcKjcoIZYY=,tag:so8BJtjHGcGzayPqMwy43A==,type:str] +github_token: ENC[AES256_GCM,data:ET4zFSe1dyFum/HMlzT/0bEP/Kzr3vdp16eKZb63hBYcz0+bKmJ/NZGk4KyojPKgRfgHR3XrrJbVdFdP2QTjfX3XtVq6N7RoU4wOwjrdOgm+4JCKRqO6pWa5ieX0m1DB5NuU7hN6X6Yqwcu38dpGzBUinpcyQDmMHSby6epL,iv:IoFHQ6sC9ZxvOIckkoF5Wnn4+VvCHapwNduCBlELzrU=,tag:gfF24P2JUWUhEIxt3Np3MQ==,type:str] mullvad_account: ENC[AES256_GCM,data:CO4wl2vNAMEC9oy37nIrpw==,iv:a3w64u8XQ/tihIDxIPPtdZ6F7dldLPvRzGUs1MpVe4M=,tag:HQxJVuGEvI0fVj8yGptbdA==,type:str] -git_plan_config: ENC[AES256_GCM,data:YNsxnIWgH90fHTKVTPjb9xTJH/d/CCKrX4BPIipWM/YmOc3T6mxmqjqSoXDgOS5Y0jaCW8t6DsLaZjxfYdkyCDyyi+zM7rQUzDj4rMkvgvsvWs+lLjgY/dFWswh9gG3cdQdGdoX3uXkDV6pkFqbO3pbQzrf4EwCdi8ApvroSYhQlKKn5kZcQclBzI4EuYUWsWrluNoWPZSz5X64CaqxZLhMj1wWTwD4vmBJ5Ck2aDEjYpKcdZHSmeeB2w5sHO1YUN4TF4FHOde9ac5X/7o2Lo6743LeKOnaUUB1NQBvY9afMnXDSARjjrpzGLXSdh5PA8zpV+vVE7a3h8QsUkwLtAD6ByX3lNord7ntrh14IBsYN6R68gUjztEAGLvAZmL/c9qD4+nFmyeaapCCUnt67Ku8LmqzDH8kLwNVyVYOP86VrmsJLSbKTt6LmAqoxw3sIHV3RXfwxcb/++7mHVK07zpmBz6Kc1PLEjv4OJNsWhvXw6mwSkXsOv1XPokyhb/3318oSqUkwJ2eo7CBa2kGXoi9eVlFE2SAMZXGFQnzC+MNnN92VdS4WFj+wAb677jCc0jJIRyjHdYwE6agDMXZ+6+xV6Qp+ocUBPrAjzJZPgXYw2Pn5j+g94LA1Cdw+mtJzupsKQCmm9L3iIkA9HdxYYCmYZvxF8WdVwdoEuxp/X+0Rwjk4fTSabYui2n+pcJRv+6EHVvtT29syc5uqG3DJ2OSg2/TGpiJ3iAoJ3Sqn7lqI6aPH3HBO0EwvPsc+sN8e5C5heu+xFKDJeFKzC19Sb5hDEp87ebPrEphgFRbw5mMQ1O3UhSEsoe0hfSSo4XWir7GcnrEDYb+1p3HnSBPpeuiy17C0a+hXRMadkiFGeEzmRxTm4QLsSOUZHagPBXtRN1MmQd7MK7jBB26JlNImG09r8yG7rb++CE7CsA14TJURzbc67REheZYvLCnuEpJ0c5XOdWcOg2ahX1fvOznHAPJmSLWD2x+RVFNyEtKIdPqSDh+DvyMzQQjaVVU46K4ic84IIYYbbbpPn4U1E/A=,iv:ZC+ea4dlDlbuFl5z3MJy7H4qO/U5ap/4DNkl5x0v2QY=,tag:HHbjAV5ZSRam7jgWKakR5Q==,type:str] +git_plan_config: ENC[AES256_GCM,data:N+CCMXP4JUCbhrIhddPXyB/we4ZmE8FYL0ms/MxSOdizInsuIOhfkJR5DlIFh2d45Pw/2e2b2lZNBYKU1r+tHwCJRrp/YuB39ee7E8ygq6uBXgL9KirNjGCQxttXvbulz27cJDQy0n5GVp9176nOwaxWtieG7VsE8PdyaszhkWt3fnFwefPZm5F0WCTxgd0rC7oamZE83FOdIW4rJupgcVYGQox/kLWyvbDxGL5KfQQ6x1Ho6v94rW4W6lXPCGwSSbW4i05vR94/Nv0atYPFB2WUBERCEIbUGJ4seawxfld464wtV5xSlSlkDDEHRGDCtzBdRkVOrLDCT0wDq+AfQQFViChiQoATAaHyK8zZqJgnEU0araOUdlxKQOEEj7Lm/HGwHvIxLGtZPlyfhybYcMfwTcb10nw61D+UqqbKjIvHZ+Q80DK0y0NnrVsehYMEcCqz1h0hfgh5v9Ygk6eiu7yDEk7GkbkWXkPCR0PHO/NOGwyQIHa0fVWnVCdkQDFHyWW77de4IcxnUhUwYsRWtULPuFYvcfog/9W6prgfluDW51y1K9vJK9yCaIPvpvOsmRK98zfgeET/vJYvTvmPw5kKOfeYMxXu8+3YQmeN7EePTBGRSalLxaS22tUXUB30WJEmhhFTnNCrkWugkC1zsvcUvY5/SKq5eKMbj54Mh7D7dm2hDveEIdgRIQtV9UJA6PDbrqqZj4GQrQLTp+1qrZl/i/kg3HYb2HA6ENMbGttJoAyv0YGj+YmlcvsC/rf5/lsiiPuFSSBHsir/uPtLeEg7JkiFBBE5Tm/QaTw08XMWB2YKQm7glq6cY9gHf/uH14LGuF0COc/Cbrc1O0+XqFoSvQ7LXJuB4Dr+4lfr49KzgId1wuMsFkxEsfpUC0aZtV7gVrA0bzlHHNfVpwk3TbwpmSmbjefImCswzXnzS/MJUUL2niY0RzguAwcDedbz+l/z83qNn0fWYpxpjVyhwhMOp/bvogYu6R6fVlz67NHvD52CTlKawEJw+O+cbX3UjcbX2WnDc59vsbDJRANDDrC6hmmj,iv:NXOlkzSW/LaSQxN11jY1qzQ4gOVaEJcmT4I9NkcfbXY=,tag:VoAIom2UF99XtCu+YXaS5A==,type:str] git_plan_credentials: ENC[AES256_GCM,data:d4egK2w4TGIDNaI2Wc3ViOBnH7/WpdeS1EoYe4/oaM4iayBXOEQMvT9qIgu/Hml34gvbBN9lRmlNkESVh7YpwO5wACkkRcO/0ZTyP8XzFUUo0IfUh1iHPjEQOF7vygW/woqBiQgFPRws9F+g6BW8aSQrBgvBF5IeNLhFBvSJUvTft1xEsNwFnkWnfZ2JWmYqLjEggoUEqtXMRw9KKcqm4DNXIzxmA8wSzDriIzeCVuSEV8sJD21saFPPaLw/jupLTLdWp5F8rAxLGa6e9coCNu8vSuqUgfv0jFET71bNw28xPrN38A/PIlUcR9MXe1SGqKAFxEv134ZkJr78g1PIWNoVDrmIlMpV6dYRLKM1FOcpAhJorIXooIl6quCdg2/U5onP8cQ7lt2LsEG5APKj7pz7huatdwM/CgxrcqPVb0E2Lk5c+wi3Rf9/Jz3BqcWQm3bwkHwivWyCD1Nw+qRXLFSfXGTovSBsxX0j4LbdP0o4iPuj068DGawpYC/AfcKfOCmh8aInQhGCQtIq14QGffU9GbW37gHu,iv:ZzOUYu3s+kfwbKajA+6fdu2EysipjoKD49muLNFBZ58=,tag:e0RI7rA8eLQI8h5L4pvS1A==,type:str] sops: kms: [] @@ -28,8 +28,8 @@ sops: U3loV2xDMkM5SWNXRDJobDloL0FVUUkK3OP7KvcKkE8mJ880dm6LMFZUxELjl8/P 6+q8qAYiAvl0Cbd4GzkNpUuBbLlFFWfFmC0vbgg8gyZ6xI5AFhHAPw== -----END AGE ENCRYPTED FILE----- - lastmodified: "2023-11-13T13:07:42Z" - mac: ENC[AES256_GCM,data:LFcc9sGsh2m7VQRFgkyF7YcEBuf1wijw7UNRcMp5AEXHuczKWCUHE2SpubhORLK14dImB6+VoLFPwlztkEBvBY9rlFffCEwNUJ+GKwTJCVjHI10TXyEb9ivT3RlqSKR3YZIl/E8qPrF0iGNPLcG9HbvwL75fyh85JunZWoDtqpI=,iv:6XytyOIUhQE6Vcn+AaQUTR0wZIPM13o2SBT/K5WOC0I=,tag:YwvwsSqzQVrEtQxPzWC6tg==,type:str] + lastmodified: "2024-01-10T11:00:59Z" + mac: ENC[AES256_GCM,data:Y5AeyLjTDWIG4ZgB5dfOAJsyttZ3//B1Y7zFOgRwCPDSYTzNAJaOayI2d9iLFbKRT4lMDd3/u8esBrFyM50IhCQkuY7yWfjvuvyfEFE/3nF3X+Fgao4T9RlTF5YqH1JZg3MC785MLYo8jZteQ2l1iuXXZI94A+bMg9dctliCySs=,iv:nYk2AJVBA1eB1/2isklkQOcg1eQbWtSxS1kg7fVBPBY=,tag:1wNpL33fvVvQh0UKTDmUWg==,type:str] pgp: - created_at: "2023-06-10T01:03:11Z" enc: |-