sops: Streamline bitwarden integration

This commit is contained in:
SebastianStork 2025-12-24 01:03:15 +01:00
parent 435a70a4e9
commit f845b093f1
Signed by: SebastianStork
SSH key fingerprint: SHA256:iEM011ogNMG1q8+U500adGu/9rpPuZ2KnFtbdLeqTiI
2 changed files with 5 additions and 10 deletions

View file

@ -8,9 +8,7 @@ _: {
runtimeInputs = [ runtimeInputs = [
pkgs.sops pkgs.sops
pkgs.ssh-to-age pkgs.ssh-to-age
pkgs.bitwarden-cli pkgs.bitwarden-cli
pkgs.jq
]; ];
text = '' text = ''
@ -40,10 +38,10 @@ _: {
sed -i -E "s|(agePublicKey\s*=\s*\")[^\"]*(\";)|\1$new_age_key\2|" "hosts/$host/default.nix" sed -i -E "s|(agePublicKey\s*=\s*\")[^\"]*(\";)|\1$new_age_key\2|" "hosts/$host/default.nix"
echo "==> Updating SOPS secrets..." echo "==> Updating SOPS secrets..."
if BW_SESSION="$(bw login --raw)"; then if BW_SESSION="$(bw unlock --raw || bw login --raw)"; then
export BW_SESSION export BW_SESSION
fi fi
SOPS_AGE_KEY="$(bw get item 'admin age-key' | jq -r '.notes')" SOPS_AGE_KEY="$(bw get notes 'admin age-key')"
export SOPS_AGE_KEY export SOPS_AGE_KEY
SOPS_CONFIG="$(nix build .#sops-config --print-out-paths)" SOPS_CONFIG="$(nix build .#sops-config --print-out-paths)"
export SOPS_CONFIG export SOPS_CONFIG

View file

@ -47,15 +47,12 @@
pkgs.ssh-to-age pkgs.ssh-to-age
]; ];
nativeBuildInputs = [ nativeBuildInputs = [ pkgs.bitwarden-cli ];
pkgs.bitwarden-cli
pkgs.jq
];
shellHook = '' shellHook = ''
if BW_SESSION="$(bw login --raw)"; then if BW_SESSION="$(bw unlock --raw || bw login --raw)"; then
export BW_SESSION export BW_SESSION
fi fi
SOPS_AGE_KEY="$(bw get item 'admin age-key' | jq -r '.notes')" SOPS_AGE_KEY="$(bw get notes 'admin age-key')"
export SOPS_AGE_KEY export SOPS_AGE_KEY
SOPS_CONFIG="${self'.packages.sops-config}" SOPS_CONFIG="${self'.packages.sops-config}"
export SOPS_CONFIG export SOPS_CONFIG