contrib/pa-pass
#!/bin/sh # # migrate passwords from pass to pa # # password dir of pass: export PASSWORD_STORE_DIR=~/.password-store # password dir of pa: export PA_DIR=~/.local/share/pa/passwords : "${PASSWORD_STORE_DIR:=$HOME/.password-store}" : "${PA_DIR:=${XDG_DATA_HOME:-$HOME/.local/share}/pa}" # Create pa store if it doesn't exist. pa l >/dev/null || exit age=$(command -v age || command -v rage) find "$PASSWORD_STORE_DIR" -name '*.gpg' | while read -r passfile; do name=$(printf %s "${passfile#"$PASSWORD_STORE_DIR/"}" | sed 's/\.gpg$//') mkdir -p "$PA_DIR/passwords/$(dirname "./$name")" gpg2 -d "$passfile" | $age -R "$PA_DIR/recipients" -o "$PA_DIR/passwords/$name.age" && printf '%s\n' "saved '$name' to the store." done if [ -z "${PA_NOGIT+x}" ] && command -v git >/dev/null 2>&1; then git -C "$PA_DIR/passwords" add . git -C "$PA_DIR/passwords" commit -m "migrate from pass" fi