dotfiles

My PC Dotfiles & Website
commit 454eef04898d0e3b340c3f4e59e9797906fe989c
parent be17faa6b48b9cc2cbc59a8de4f875dcfb6f2011
Author: maydayv7 <maydayv7@gmail.com>
Date:   Tue, 16 Jun 2026 00:58:32 +0530

feat: Zellij + Per-user secrets

Diffstat:
MCHANGELOG.md | 2++
Mfiles/_module.nix | 3---
Dfiles/tmuxrc.tmux | 11-----------
Mflake.lock | 7++++---
Mflake.nix | 2+-
Mlib/map.nix | 11++++++-----
Mmodules/apps/vscode/default.nix | 1+
Mmodules/desktop/hyprland/_features/panel.nix | 80++++++++++++++++++++++++++++++++++++++++----------------------------------------
Mmodules/desktop/hyprland/_features/security.nix | 6+++---
Mmodules/hosts/valkyrie/default.nix | 1+
Mmodules/shell/shell-utils.nix | 18++----------------
Mmodules/shell/shell.nix | 14--------------
Mmodules/users/v7/default.nix | 16+++++++++++++++-
Msecrets/README.md | 10++++++++++
Msecrets/_module.nix | 60+++++++++++++++++++++++++++++++++++++++---------------------
Dsecrets/gitlab-token.secret | 22----------------------
Msecrets/passwords/root.secret | 17+++--------------
Msecrets/passwords/v7.secret | 17+++--------------
Msecrets/secrets.yaml | 9++++++---
Rsecrets/github-token.secret -> secrets/user/v7/github-token.secret | 0
Msite/content/_index.md | 2+-
21 files changed, 137 insertions(+), 172 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md @@ -2,6 +2,8 @@ ### June +- Per-user secrets +- Use `zellij` instead of `tmux` - Add `auth`, `syncthing`, `mouse` - Use Thunderbird for mail - Upgrade to NixOS 26.05 diff --git a/files/_module.nix b/files/_module.nix @@ -126,9 +126,6 @@ in { # Document Templates templates = ./templates; - # Terminal Multiplexer - tmux = readFile ./tmuxrc.tmux; - # Visual Studio Code Editor vscode = map.files { directory = ./vscode; diff --git a/files/tmuxrc.tmux b/files/tmuxrc.tmux @@ -1,11 +0,0 @@ -set -g default-command "${SHELL}" -set-option -g mouse on -set-option -g focus-events on -set -g set-clipboard on -set-option -g automatic-rename on -set-option -g status-style bg=default -set-option -ga terminal-overrides ",xterm*:Tc" - -# Split with same directory -bind | split-window -h -c "#{pane_current_path}" -bind - split-window -v -c "#{pane_current_path}" diff --git a/flake.lock b/flake.lock @@ -830,16 +830,17 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1781201916, - "narHash": "sha256-AyhlQwC42O1bQWJxuM4L+sWXEt/Y9322jp3ync5wtmw=", + "lastModified": 1781405715, + "narHash": "sha256-jk4rGqjtjVVLphdf0o12ZyrSvrQVM3HVItijNfP+FWM=", "owner": "hyprwm", "repo": "hyprnix", - "rev": "f1de130218102f3b1bd252a6a115fdf350c00a0a", + "rev": "92cabda9b41bdf13c488f9cd8b646f2b352b6b1a", "type": "github" }, "original": { "owner": "hyprwm", "repo": "hyprnix", + "rev": "92cabda9b41bdf13c488f9cd8b646f2b352b6b1a", "type": "github" } }, diff --git a/flake.nix b/flake.nix @@ -193,7 +193,7 @@ ## Hyprland # Core hyprland = { - url = "github:hyprwm/hyprnix"; + url = "github:hyprwm/hyprnix/92cabda9b41bdf13c488f9cd8b646f2b352b6b1a"; inputs = { nixpkgs.follows = "nixpkgs"; systems.follows = "systems"; diff --git a/lib/map.nix b/lib/map.nix @@ -24,6 +24,7 @@ lib: let mapAttrs' mapAttrsToList nameValuePair + optionalAttrs removeSuffix replaceStrings ; @@ -130,11 +131,11 @@ in rec { name: type: if type == "regular" && hasSuffix ".secret" name then - nameValuePair name { - sopsFile = directory + "/${name}"; - format = "binary"; - inherit neededForUsers; - } + nameValuePair name ({ + sopsFile = directory + "/${name}"; + format = "binary"; + } + // optionalAttrs neededForUsers {inherit neededForUsers;}) else nameValuePair "" null ) (readDir directory); } diff --git a/modules/apps/vscode/default.nix b/modules/apps/vscode/default.nix @@ -89,6 +89,7 @@ in { ritwickdey.liveserver ] ++ (with pkgs.vscode-marketplace; [ + kdl-org.kdl # KDL kisstkondoros.vscode-gutter-preview # Image Preview ]) ++ lib.optionals isGnome [pkgs.vscode-extensions.piousdeer.adwaita-theme] diff --git a/modules/desktop/hyprland/_features/panel.nix b/modules/desktop/hyprland/_features/panel.nix @@ -72,7 +72,7 @@ "hyprland/submap" = { always-on = false; tooltip = false; - format = " {}"; + format = " {}"; on-click = "hyprctl dispatch submap reset"; }; @@ -107,7 +107,7 @@ }; "custom/minimized" = { - format = ""; + format = ""; on-click = "hyprutils toggle minimized"; }; @@ -125,7 +125,7 @@ }; "custom/hide" = { - format = mkDefault ""; + format = mkDefault ""; tooltip = false; }; @@ -137,18 +137,18 @@ capslock = mkDefault "󰪛 {icon}"; }; format-icons = { - locked = ""; - unlocked = ""; + locked = ""; + unlocked = ""; }; }; bluetooth = { - format = ""; + format = ""; format-disabled = "󰂳"; format-connected = "󰂱 {num_connections}"; - tooltip-format = " {status}"; + tooltip-format = " {status}"; tooltip-format-connected = "{device_enumerate}"; - tooltip-format-enumerate-connected = " {device_alias} 󰂄 {device_battery_percentage}%"; + tooltip-format-enumerate-connected = " {device_alias} 󰂄 {device_battery_percentage}%"; on-click = "overskride"; }; @@ -197,7 +197,7 @@ "󰖀" "󰕾" ]; - format-muted = ""; + format-muted = ""; on-click = "pwvucontrol"; }; @@ -209,9 +209,9 @@ "length" ]; dynamic-separator = " - "; - format = mkDefault " {player}"; + format = mkDefault " {player}"; format-paused = mkDefault "󰏤 <i>{player}</i>"; - format-stopped = ""; + format-stopped = ""; tooltip-format-stopped = "Not Playing"; on-click = "sysutils media toggle"; on-click-right = "sysutils media next"; @@ -231,15 +231,15 @@ format = "{icon}"; tooltip-format = "Backlight: {percent}%"; format-icons = [ - "" - "" - "" - "" - "" - "" - "" - "" - "" + "" + "" + "" + "" + "" + "" + "" + "" + "" ]; on-scroll-up = "sysutils brightness down"; on-scroll-down = "sysutils brightness up"; @@ -247,7 +247,7 @@ }; "custom/temperature" = { - format = ""; + format = ""; tooltip = false; on-click = "sysutils temperature"; }; @@ -268,13 +268,13 @@ format = "{icon}"; on-click-right = "hyprutils toggle fancy"; tooltip-format = "Battery: {capacity}%"; - format-charging = ""; + format-charging = ""; format-icons = [ - "" - "" - "" - "" - "" + "" + "" + "" + "" + "" ]; states = { good = 80; @@ -288,10 +288,10 @@ tooltip = true; tooltip-format = "Power Profile: {profile}"; format-icons = { - default = ""; + default = ""; performance = "󱄟"; - balanced = ""; - power-saver = ""; + balanced = ""; + power-saver = ""; }; }; @@ -352,14 +352,14 @@ tooltip = false; format = "{icon}"; format-icons = { - none = ""; - notification = ""; - dnd-none = ""; - dnd-notification = ""; - inhibited-none = ""; - inhibited-notification = ""; - dnd-inhibited-none = ""; - dnd-inhibited-notification = ""; + none = ""; + notification = ""; + dnd-none = ""; + dnd-notification = ""; + inhibited-none = ""; + inhibited-notification = ""; + dnd-inhibited-none = ""; + dnd-inhibited-notification = ""; }; }; @@ -369,8 +369,8 @@ tooltip-format-activated = "Idle Inhibitor: On"; tooltip-format-deactivated = "Idle Inhibitor: Off"; format-icons = { - activated = ""; - deactivated = ""; + activated = ""; + deactivated = ""; }; }; diff --git a/modules/desktop/hyprland/_features/security.nix b/modules/desktop/hyprland/_features/security.nix @@ -59,7 +59,7 @@ { label = "lock"; action = "loginctl lock-session"; - text = ""; + text = ""; keybind = "l"; } { @@ -83,13 +83,13 @@ { label = "suspend"; action = "systemctl suspend"; - text = ""; + text = ""; keybind = "u"; } { label = "hibernate"; action = "systemctl hibernate"; - text = ""; + text = ""; keybind = "h"; } ]; diff --git a/modules/hosts/valkyrie/default.nix b/modules/hosts/valkyrie/default.nix @@ -20,6 +20,7 @@ ]; hmModules = [ + "secrets" "auth" "discord" "firefox" diff --git a/modules/shell/shell-utils.nix b/modules/shell/shell-utils.nix @@ -22,6 +22,7 @@ in { micro tree yazi + zellij ]; # Fetch @@ -67,22 +68,6 @@ in { italic-text = "always"; }; }; - - # Terminal Multiplexer - tmux = with config.lib.stylix.colors; { - plugins = with pkgs.tmuxPlugins; [ - open - yank - minimal-tmux-status - ]; - extraConfigBeforePlugins = '' - set -g @minimal-tmux-bg "#${base02}" - set -g @minimal-tmux-fg "#${base05}" - set -g @minimal-tmux-use-arrow true - set -g @minimal-tmux-right-arrow "" - set -g @minimal-tmux-left-arrow "" - ''; - }; }; }; }; @@ -99,6 +84,7 @@ in { programs = { btop.enable = true; # Resource Monitor hstr.enable = true; # Command History Manager + zellij.enable = true; # Terminal Multiplexer # File Lister eza = { diff --git a/modules/shell/shell.nix b/modules/shell/shell.nix @@ -14,20 +14,6 @@ in { nanorc = files.nano; }; - # Terminal Multiplexer - tmux = { - enable = true; - keyMode = "emacs"; - shortcut = "Space"; - aggressiveResize = true; - baseIndex = 1; - clock24 = true; - escapeTime = 0; - historyLimit = 50000; - terminal = "tmux-256color"; - extraConfig = files.tmux; - }; - # Bourne Shell bash = { vteIntegration = true; diff --git a/modules/users/v7/default.nix b/modules/users/v7/default.nix @@ -1,5 +1,6 @@ {config, ...}: let inherit (config.flake) files; + name = "maydayv7"; in { flake.modules.homeManager.v7 = { config, @@ -10,7 +11,7 @@ in { homeDir = config.home.homeDirectory; in { credentials = { - name = "maydayv7"; + inherit name; fullname = "V7"; mail = "maydayv7@gmail.com"; key = "8C240C0C11293EE56260601CCF616EB19C2765E4"; @@ -33,5 +34,18 @@ in { ''; }; }; + + sops.templates."gh-hosts.yml" = { + path = "${homeDir}/.config/gh/hosts.yml"; + content = '' + github.com: + git_protocol: https + user: ${name} + oauth_token: ${config.sops.placeholder."github-token.secret"} + users: + ${name}: + oauth_token: ${config.sops.placeholder."github-token.secret"} + ''; + }; }; } diff --git a/secrets/README.md b/secrets/README.md @@ -8,3 +8,13 @@ The `keys` directory contains the _public_ User GPG Keys which are automatically To create a secret, use the `nixos secret create` command, and append the directory along with requisite access permissions to the `secrets.yaml` file. Device-specific secrets are automatically imported, if a directory (with the same name as the device `HOSTNAME`) containing them is present in this directory + +> [!NOTE] +> Any update to a `creation_rule` in [`secrets.yaml`](./secrets.yaml) must be accompanied by a `nixos secret update` to re-encrypt for the new key set + +#### Per-User Secrets + +Secrets scoped to a single user (decrypted at login using their _personal_ GPG Key) are stored under [`user`](./user) in a directory named after their `username`. + +> [!IMPORTANT] +> Do not forget to import the `homeManager.secrets` module in the user configuration diff --git a/secrets/_module.nix b/secrets/_module.nix @@ -7,32 +7,50 @@ inherit (config) util; inherit (config.flake) files; in { - flake.modules.nixos.secrets = { - config, - pkgs, - ... - }: let - path = files.path.gpg; - in { - imports = [inputs.sops.nixosModules.sops]; + flake.modules = { + # System-Wide Secrets + nixos.secrets = { + config, + pkgs, + ... + }: let + path = files.path.gpg; + in { + imports = [inputs.sops.nixosModules.sops]; - config = { - environment = { - persist.directories = [path]; - systemPackages = [pkgs.sops]; + config = { + environment = { + persist.directories = [path]; + systemPackages = [pkgs.sops]; + }; + + sops = { + gnupg.home = path; + secrets = let + directory = ./. + "/${config.networking.hostName}"; + in + util.map.secrets {directory = ./.;} + // ( + if (builtins.pathExists directory) + then util.map.secrets {inherit directory;} + else {} + ); + }; }; + }; + # Per-User Secrets + homeManager.secrets = {config, ...}: { + imports = [inputs.sops.homeManagerModules.sops]; sops = { - gnupg.home = path; + gnupg.home = "${config.home.homeDirectory}/.gnupg"; secrets = let - directory = ./. + "/${config.networking.hostName}"; - in - util.map.secrets {directory = ./.;} - // ( - if (builtins.pathExists directory) - then util.map.secrets {inherit directory;} - else {} - ); + directory = ./user + "/${config.home.username}"; + in ( + if (builtins.pathExists directory) + then util.map.secrets {inherit directory;} + else {} + ); }; }; }; diff --git a/secrets/gitlab-token.secret b/secrets/gitlab-token.secret @@ -1,21 +0,0 @@ -{ - "data": "ENC[AES256_GCM,data:IgdZH4jFG6j6ZUllYn1C+HWhbz2c7jMunwU=,iv:PApvcmkn+vIB2/5iCmCgAbyBISrVV9Q+38CfUfafgic=,tag:dqsVBSqonjm0D8QmdVJ1AA==,type:str]", - "sops": { - "kms": null, - "gcp_kms": null, - "azure_kv": null, - "hc_vault": null, - "age": null, - "lastmodified": "2021-12-18T08:47:47Z", - "mac": "ENC[AES256_GCM,data:UCvZamMX8KrsPuRpmhjLcReIooA5be8MDIJWPspz/54fcRPrRmvwxMKAsHm637jcLbM7Js8m0/xKO+i8j4EEmSiexUrk9/zn+TGRWGpeGDZPy07NzZa1SqL2sxhbz54U/lyJhO9uPHkjMEYkdfiSF2rnNwAaZdW5AH+8eNYsg9w=,iv:7fQwtybtXhoiMDPey4i7R+renF/4/cIWV7+XqZImMKg=,tag:XWgx1EKn2YAm+MsOpI0Bmw==,type:str]", - "pgp": [ - { - "created_at": "2021-12-18T08:47:34Z", - "enc": "-----BEGIN PGP MESSAGE-----\n\nhQIMA5HNgftiFxX/ARAAjC4nB+gg5HBh5dA76hEI+PpmeHMPH2OJIG302UlWCQOi\n4ZQaK84HsXLHN5UWLc/g5QcGmyJBHvvvq9JP6uoYYzBKIfGANpbwFzGWAipW0yl5\nls/HjPg0IWOsO6lC4e7YwhyCszuO6ndcOmAQvFJLvjyVl+/2UcXQHTO9+yLrlbpv\nZngD/FWawEcR1Cyjn9r0sT7skBrxbTBnlI/DTHreNMV7AQy0NvQc/7FrLJTNM/fE\nHHmlHRXbyEfVae4YWzzW0RDFo0jw3yiVG1eWwx5cxLVHuwDWb53Cf/dpPRNQNQsq\nY3OntNUhahZpE199+8YgJpHCgjjVLpReCJP8xMTW7Otd/DlpbQUcicZ3T/yNKzwY\noRSgNMlVMsEh9vKeXqcHxJC4OtJmrVvAL3aCU3a0nFMt/Ho7OlkxMnTqBT0U58Xm\nCXZ8MDIQUi+i5tQD6A9/EOoV1a821z9wXP8DZSb6m188ti1XxtQV2raM58urWX3h\nUKirg5+sobIboafgmI57EY9lkmTJg30BJZDHPG6w8vKuCqrNfm4W9xVAPN87M1S4\n9MFoqfTt9/h6nAcu0RVtNlkbeg6tIvNcVrKUghO+7w7n3VPE6tCiyzZ0q64v2j1+\nv0AR7QQYZ5p0nlAYTBp047GsaYV86o1cnSwbV/5P5WYLiqzpQa1QW/EHucnxLW/S\nXgG6IgIeeuvqG8FUcheJ7KE6EnSioSIz/kIy7of8FE6olVlb0oRclg07caYv/DeI\nI1TcTs1Qh9mkReksSpY7Iul5bt5oE41rjGKr1IxVy1RzCeKJyvxEsMV0nBTZ9NI=\n=hlLp\n-----END PGP MESSAGE-----\n", - "fp": "8C240C0C11293EE56260601CCF616EB19C2765E4" - } - ], - "unencrypted_suffix": "_unencrypted", - "version": "3.7.1" - } -} -\ No newline at end of file diff --git a/secrets/passwords/root.secret b/secrets/passwords/root.secret @@ -1,26 +1,16 @@ { "data": "ENC[AES256_GCM,data:Em3HYtbq2fF+jWZ5kGJm5TjIkO7GWU9pmulvHnfdoZHW/seBHIUfvj2eXw+W0zz1A4WXrkMqh6K1VJw/oMpHPgFqBREuuIgj/A==,iv:zsDVb1NrPFm0L5cU1s+geL02NBQuB9BnMeyCF889mig=,tag:SrNwYQ+GqWzIxkvaRQcC0A==,type:str]", "sops": { - "kms": null, - "gcp_kms": null, - "azure_kv": null, - "hc_vault": null, - "age": null, "lastmodified": "2023-02-22T04:22:35Z", "mac": "ENC[AES256_GCM,data:T3QQqYx3xjeLk7LrZaSqKRKVOBIPfpvAyNT/DZ9Yp0WBJXDijsJAFlpA6pyrfCmR2Nw6u89Twk75m04af3IEUhgHDuTSMFYQrv4XCBmxnRd5Cy/JL8wXyqywB8XehipH0JUwZwZQuAeqdkXccEUURUgLv70//hyyXj7kNhHB+s4=,iv:6cGQcuI8DxCLkAjW5flGuTMwUQBcUUb50gTVOkKaGBw=,tag:jDwNOjVwrWmdcEIfgJobaQ==,type:str]", "pgp": [ { - "created_at": "2022-02-05T06:50:35Z", - "enc": "-----BEGIN PGP MESSAGE-----\n\nhQIMA5HNgftiFxX/ARAAqKLtrRQlQ4mrG7NEQ15813Ojr76tiNk5icMC6ydhea67\nwqS8hs9CLimmj3+8PjTmuAS2I3xLOJVEl4WV9jBwfm3oCLUVUDt745zES/li7XIw\nwj/fiGnege8fKgg/XF/fvhTRi39NemaDixavI5JoWf55skeDFyChDW+f+8wViHN0\nATBghiFtgyqNMIHpgJ7n6cIb5lt0gudlOVbpIXRmurJ5CL2g8Gr5MsS5sPoxbiCy\nlueR21NdtY2NflH+DU9dhlTZRBr8UtMgSmqC93RYb1hz2YDyUICpnZbrv9u3C9Q7\nsXtm7RDaIMyWBjEF3hE1icGQz9pt/elIxLWBttiK+PivqrVQIB1xvxDQpA37al2M\nqWE655WqLWGLbVnxpcjUtxp0OknKPZ+tD+V5vqWCMDc2/Fm3KI98+b9rtWBCr9HZ\nyL5UJ+fcv17+PDu4O7XYb24Q7tpTiJIg0QvkDvRdZn/GIwMzl0rIWgBQIJt0dw0T\nilSOgitzzdUQKT/0+j15X6XG9JIs8gK29SVFSpfTwizrbH5WgznHyrKeY5fLTRUg\nFkYrV43K1jwnvmHrjbHz42CPGwqGePGKUzuX4gGsnFXeJkjANybPyOshVWx4SLFQ\n4LafTxOg51unKkovxFuMEOPC2tb35fNT4Xpc8yKqMaBM6nPRv9c13lHjTCtzDzHS\nXgFtSAC+TsuumPmST4yWWBGRpLfRxwEql9vUI6Hq/fAU+NEvlRzwTGHHOmiCHJzA\nANvljPxx19PFg3Dxj5mKqfDouJtUzZsDrV9ZB3hXNF/dxQ9nPoxKcZE5MMA7Fns=\n=QjrJ\n-----END PGP MESSAGE-----\n", + "created_at": "2026-06-15T19:28:18Z", + "enc": "-----BEGIN PGP MESSAGE-----\n\nhQIMA5HNgftiFxX/ARAApr7lV8u3sbFh2tVgmcbAGLeapkg9JS+pnw5TkSL8RACL\nOxDoT9gRTTgzHyQ6VGav8b0JqJK9DVn5x3bFUpQw8bEklHT+Ny53RslNe634Ihmx\nZdh/zh8Ys3OzwUqRLzeQvBHyd5nTvv+nHp17OvGv353gZOtzm71BhhGeuStGzUCm\nmA3D2v5HQbgomi4DvX+NqtIr3fd0pM9qh/nT+OW7pSmysSZN/3oOpk3DIckab+Fo\nqi/2OVNcnm/sOHZ+MflsFgeu0yC7IkcmA/X13gFT34AvGXmJGAcL2OjvxhqEJIvh\nqNlzd/UKYTsur7rU7OEvff+7fBkhNOXXAHMHc/XDyIRzxe7FxsATnImJSSn2oGmm\n1a3QGbxZaKF/AosxNL0uTlh/QB0fHYRRyI9FIApwbh+A+9BRpLaXxrDI6jX3KMiR\nKRA6YjLGjC4f7Yz/+rSPu6OR6oH0XUYPTz5ojTf35VBLyNzzzQW+1U+TQf1EgkQS\nVwe+aEURdf7kdvyNB9ROj0k5pCM6vbIHxqvje3I6zaIGzfEMTG1uudVU6/JZd/dc\nQlTYrvI95mpGYivRozGhq0S0wbzgedzhRKzEZ8U41oJkt5yo9GUa6JLafDQWJmCs\npr5MST6c7HTJ0C3dKroUypV8UM7k4QAE965vuqNftnJtz7jXCpaMlgYQ/sgZn9/S\nXgHu56qdh0duEbbNIbvhKgK3bWeAqCQJeDSdp2VFmFElDFQMkRE8M+YfHaFMX39c\nabgwbslGY+77AShID5+euvvaQHVSqVrBcRDxTJAv6/ol/7mBTGa+Mfzyo3+taFY=\n=RBxM\n-----END PGP MESSAGE-----", "fp": "8C240C0C11293EE56260601CCF616EB19C2765E4" - }, - { - "created_at": "2022-02-05T06:50:35Z", - "enc": "-----BEGIN PGP MESSAGE-----\n\nhQIMA6M7Q/u2jO+RAQ/9Gt4Oqd7k8SjrPTZ3oouzUqaYzV3MIG2bbw+W59JV0Ex3\nVBch+cfjKoVTwXLAhwR6abIWkOWq0bJOXVZojkM7sXPlZkst7+rxpmkfTEaKv6wM\nK3M3WlBGtJsrX7IBnvV9PCXQqjx/vKpecBS+bzTd4MNWU3VJQeJ6XZY2k9IIFAGy\n6AiMSohz/v28rV4MBtaxYv9+DNFyxyEM8PA7izdX5lLqoHO88ahgQXk2SyRNB9gw\nkQk+XvLacCOO1hpuM+vQVj29UEbwx6Uxb0rjtXz9vMGjjEm22kzjsevebdhX7hSO\nK71CGptzR6W3FMsuSGCNbfWysK7kM59BZm0+4qaJsP+ZEaxZgQnOZAXn31BCHpoF\nXKp66lwurSqONrY4HbHb/3kBBqATbCExa1haz5GX/gYAWHFKkJbMFdkWmpKEFuRm\nAByherchOgku160XVLa1EMZbM3E5V3dXArglYlWE2/k+9wA8D9e6xwk9QN22Qylj\nDyaMzejxh7bEo8RcQD468yc1R36gzdqxG9H+BDqznB6WrogM/EmD0v593gmVQP3z\n4B6IsevXKk2V4vzUxnQEvlOS5HcCX9lLH+Nevu8OktT6Zi6SXxTrFuGAtmCoQKu9\nD4SBPHzoNIGRECM05RQZuQnIrXw8JnPN6kLopxca+iqB5TMVDFROML3poI/jJvjS\nXgGv/9PfbTKZscx3RU6JrdWpIQgHMcIh7U9M1TjLs9FMm7a/yzJVkERiUj4ZE0SF\nAqz7yB3Rb3TXDARPW8SL7lppkWkw19NpjcFYHQK56KkEho/yIoYBJD3jemMiU2I=\n=6Xvj\n-----END PGP MESSAGE-----\n", - "fp": "B141E0D9F711DD86DEAE1269D9B023AB01B68EFE" } ], "unencrypted_suffix": "_unencrypted", "version": "3.7.3" } -} -\ No newline at end of file +} diff --git a/secrets/passwords/v7.secret b/secrets/passwords/v7.secret @@ -1,26 +1,16 @@ { "data": "ENC[AES256_GCM,data:49osZeK2IlheygbJpGjILcNQHB2tGOeDW6TWU522sJbnQ+s9EreDd48Yz7YIr3nnxww/4hDHGeP1zN6i5CXY4dsDymR/98WAdw==,iv:1hfp6hEdlqgfDK05bY4GeWX1fzAxQUnyPrTX4CzYkKE=,tag:JmmAYsLN8Tw5bfab3Lk95Q==,type:str]", "sops": { - "kms": null, - "gcp_kms": null, - "azure_kv": null, - "hc_vault": null, - "age": null, "lastmodified": "2023-02-22T04:22:09Z", "mac": "ENC[AES256_GCM,data:tV6DXfYKd5EYFkBtoNwpxqYrTVl/yNhG8Elxebg/YiU50BR32ACZBYArFznXpKfgoQG8YawJwCX6idhOaMCsKeDRXtoI4Ark8glz3+uoDmBUR7TWQtNMCkfpWMV1oOFc+CD6YmKvmKwaS+lTG4ml6AgGzH1awKr1ZWTiSzkwTLI=,iv:blHIRefRWqgxV13SS4Yjf24MKCrH9nz0T4ugcS8ZZ78=,tag:eYMNeJ86+fcG+cNnSZfRLQ==,type:str]", "pgp": [ { - "created_at": "2022-02-05T06:50:31Z", - "enc": "-----BEGIN PGP MESSAGE-----\n\nhQIMA5HNgftiFxX/AQ//bQ8ryty3ZCZ3LrgZwRnSJH57rnjeedsF6f8hJViF2nI+\n3Fz4N14zaoPNpO2jynvYSdWmTgOnLto81+hYXdkxc3w2DiTMsjcz1APuPNGXMimy\nUxMaOaOkq6r8V8p2lAeUwzb6FuLK0IH3Q3EvIR2FUOVofpuoBpeNbGu31qLQDy5O\ngjSIQKzGav2aMrpHKrUp9nAWNZM0Z7StS3WKlOyWNAGgqLP9So1kOWdV9lG/MBvf\nfVauCT+Tdr3SPEqO3B93yhVSrDyFMcqj9D3/R3TV7E783ohYjHWV1lRJBsV6/icV\nzvxDiMPQoWBBx8mW9lqejoJEkfgJEs3iUqssHptmISLTuOnzE+MiGjd4ESabiRUB\nPQV4NZqM5cudK9o0OY9eT+qkZOt8hMV7h+cjteN4dYwAOpMxm5OmE7gHHWbcyxq1\noPq8WjSyjlqyh6Ry/jd7s9vNxnAdHklqp83dyPcRE2suYKuYxw3E99+fJd9v0nNw\no9PYSXul0Tk15dLEhbMB4KjDhMTP7sZYc4zdZdubBDmK6wnfeQRq5qA8WxtEY6Zh\njw/wP4raB01Aol0Pzti0TIyQQ6II3cy5o7GLQz+jEg5Lt3ZvH9XKLP56f6+HCOId\n04oRUol17VarjtL7jwZYmMAWNpzMl4fnTs/kARHlt2NhbFpuIwp1MoJLcSinvzDS\nXgH11FiYEA+69CxnsDQrnz3RvWUTjuIw5tgt3QlfhZIaxzidz1Dziu6d5g5TXevg\nxDJGoFwAdSIEM1VJjyjGPzVe193FccC4VkRbHNFDdtME71r3yieitf1GvPjr0sY=\n=4AIj\n-----END PGP MESSAGE-----\n", + "created_at": "2026-06-15T19:28:16Z", + "enc": "-----BEGIN PGP MESSAGE-----\n\nhQIMA5HNgftiFxX/AQ/+K22U0zqX4WvKTHyyRoTGDA6JvaMRPCWui6d9lTRHQqo6\nO2UIyvt/7GHPJxO1PnSrtq/GQHqYycZVIdjyCdBfLGffSacZsISzOazzkTMMHR7D\nS2FZ7B8YfsU2y+iMlrM4ItOv3i6KwVdnu+IP+xKNl2T5KLxmoSnlhd2g1aJ8NuQK\n6apkMuKBNCb66OjzDPbznucRoLPAnhV8mefkx+MEJ8FyvON9+0HFnRsM05K5W3qi\nJJV8b6aj0rMsneLBs9OSwJnMJME0PRCnwPLTBdy8J7EvuhwE/DAkMn/ctjceBHjk\nNSHk2AP2E20/p2om5QhT8um9UJp4VD6XVfWz4An8jZXsOlaOY0WBAwSGqMdKmRS3\njpAydKSl5BA289xdKoT22bgRpBspTYoPo0AA0wU0mqUZS+Wv2IPYmoFh8Qqjh7vc\nsEjkHzGHum2GTdN3bP37JQ8ZFUMTAhXfyecmNUokQWM89yFUo8UF+dib72Fdz6th\nwDjawrDKW6Kr304OCzWrxQt5htUrX52g5Z2h32C6Zv2VbMYD7h2m5e9IOMaqdcWR\nqM4JN7J1TZPDgJQbG9hednl0eKKk8wLvnx4dy+6Ze3t66OThp5HHkb1yHD0QfUuT\nljL/1VDqOv6+6799Xo18FZLRqafAwLUOaMeN/PtLZRBRXDCPeRprrIF1qXGyK3LS\nXgH5m0hnWzLEr+MmcGxxI+wQu4PEIWNANwOpR7QlyuX69aoDvneae1XglvroM3yR\nqx5aHSe/buD/yQvLxruyWwVZczSmuyuN38SynAxcRMUY/BRIrpmKgzWmrIHt1GI=\n=JVVt\n-----END PGP MESSAGE-----", "fp": "8C240C0C11293EE56260601CCF616EB19C2765E4" - }, - { - "created_at": "2022-02-05T06:50:31Z", - "enc": "-----BEGIN PGP MESSAGE-----\n\nhQIMA6M7Q/u2jO+RARAAkrQgr5PicWDAwVwMw+CwbZfb2Xj/FcCDYGT0Gat+9rtw\nFIRs3g/hdzpty4RQ6df91KSKyNmYrxjaMHQi9AiackbczDilNKKRiQp/25HwBQln\nmcBcMhx8VQ2p+L9Pk0oD1p9E99ZP1iq3vDO3EoTeRkqEPEqKwqMvH2+xUOC3Ep8U\nPKT8qOLVGQQCHiEbe60M+J0aRc/K7H86EpJF3bf3t6Z4D/6fHGgnkH9lUWIC2qtI\n9CwABnv/W/Bszwem1wi9NJUUXIFRVhJ9nZ9F8LDaESukaUu9Sfb5p+PfssW8TD+6\npM6HrNjYEx5MVrLAoinr599r1z7822BbMmG1/3InDL94cR/UJ6GGBz4ylGtEygN6\nUQKbzCiTZKpXVOX3brNxrFw1X+H7I+SlJB5e7hN4FO6qm9LcvqhQUtoKBcYVKwY/\ntT+cIb+xm7qZ1ii5aMXAD8/WVhMFgLk20FC7jPEBiCMxq7wzli3LNxeY8Th6TiKi\nhCfyY/xWLNEZTETgoPEwnckhQZqOzvRTvdZ2Bw2MMXhRICSDpRmD2WwUdm5PziI4\nFRSMK4xIb4JSD3vMvfiWW861yT0oVwRfYnfK6RezaXY01uU/UhNI6uSkU80Fds9A\ny2UbK3DeD7DYg65CjPlP+1NozvkH7DsxDNsQg13YGamG8UcPitF7/794INZRNSXS\nXgFi043N3C2g8M8kCEzfZl9xagScToJtHULIO1bg8OkugmutgNWGcOX8TlAAtGNZ\nvi+S2l77mMJLrqyf80WJ6ptIzCMNZSYN/bSeuIZ4kpgFWl7oMNSeOgGzjKi1FxI=\n=91JK\n-----END PGP MESSAGE-----\n", - "fp": "B141E0D9F711DD86DEAE1269D9B023AB01B68EFE" } ], "unencrypted_suffix": "_unencrypted", "version": "3.7.3" } -} -\ No newline at end of file +} diff --git a/secrets/secrets.yaml b/secrets/secrets.yaml @@ -2,12 +2,15 @@ keys: - &v7 8C240C0C11293EE56260601CCF616EB19C2765E4 - &navya B141E0D9F711DD86DEAE1269D9B023AB01B68EFE creation_rules: - - path_regex: secrets/.*$ + - path_regex: secrets/passwords/v7\.secret$ key_groups: - pgp: - *v7 - - path_regex: secrets/passwords/.*$ + - path_regex: secrets/passwords/navya\.secret$ key_groups: - pgp: - - *v7 - *navya + - path_regex: secrets/.*$ + key_groups: + - pgp: + - *v7 diff --git a/secrets/github-token.secret b/secrets/user/v7/github-token.secret diff --git a/site/content/_index.md b/site/content/_index.md @@ -5,7 +5,7 @@ insert_anchor_links = "right" # What is it? -My goal was to have a site where I could showcase anything I wanted to. +My goal was to have a static site where I could showcase anything I wanted to. Use the menu up top to navigate to different sections of my website. To know what I’m currently up to, check out **{{ url(path="/now", text="/now") }}**