From 77892cff016e5841758a91279df8599d4c5258b4 Mon Sep 17 00:00:00 2001 From: Origami404 Date: Sun, 17 May 2026 11:49:57 +0800 Subject: [PATCH] zsh: use sudo inside o4-sops-machine-key-* --- home/standalone/.zsh.d/nix.zsh | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/home/standalone/.zsh.d/nix.zsh b/home/standalone/.zsh.d/nix.zsh index f0bffb1..a75c26c 100644 --- a/home/standalone/.zsh.d/nix.zsh +++ b/home/standalone/.zsh.d/nix.zsh @@ -73,29 +73,26 @@ O4_SOPS_MACHINE_KEY_DIR="/var/lib/sops-nix" O4_SOPS_MACHINE_KEY_FILE="$O4_SOPS_MACHINE_KEY_DIR/key.txt" o4-sops-machine-key-init () { - # check sudo - if [[ $EUID -ne 0 ]]; then - echo "require root" >&2 - return 1 - fi + # use sudo echo "require sudo" to get sudo + sudo echo "require sudo" > /dev/null # check folder and file local key_dir="$O4_SOPS_MACHINE_KEY_DIR" local key_file="$O4_SOPS_MACHINE_KEY_FILE" - mkdir -p $key_dir + sudo mkdir -p $key_dir if [[ -f "$key_file" ]]; then echo "key exists: $key_file" >&2 return 1 fi # keygen - install -d -m 0700 -o root -g root $key_dir - age-keygen -o $key_file - chmod 0400 $key_file - age-keygen -y $key_file + sudo install -d -m 0700 -o root -g root $key_dir + sudo age-keygen -o $key_file + sudo chmod 0400 $key_file + sudo age-keygen -y $key_file # print pub key - grep "^# public key: " $key_file | cut -d ' ' -f 4 + sudo grep "^# public key: " $key_file | cut -d ' ' -f 4 } o4-sops-machine-key-print-pubkey () { @@ -105,6 +102,6 @@ o4-sops-machine-key-print-pubkey () { return 1 fi - grep "^# public key: " $key_file | cut -d ' ' -f 4 + sudo grep "^# public key: " $key_file | cut -d ' ' -f 4 }