diff options
author | Dan McGee <dan@archlinux.org> | 2011-08-29 17:52:12 +0200 |
---|---|---|
committer | Dan McGee <dan@archlinux.org> | 2011-08-30 02:55:28 +0200 |
commit | 8129b93afe13a6546f46c6615c316ed85f341191 (patch) | |
tree | f7aae9718dea334265a28e9c68334e5b47b87146 /scripts | |
parent | e3676ae7b51fdaa68fcf2923c19681ec7d6f3952 (diff) | |
download | pacman-8129b93afe13a6546f46c6615c316ed85f341191.tar.gz pacman-8129b93afe13a6546f46c6615c316ed85f341191.tar.xz |
pacman-key: fix broken logic around updating trust database
Any option that flips UPDATEDB=1 doesn't work right now due to what we
thought was a good idea in commit cab1379a1ab14. Fix this by not
including the update operation in the option count and special casing
it where necessary.
Also, bring back the helpful "Updating trust database" message.
Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/pacman-key.sh.in | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/scripts/pacman-key.sh.in b/scripts/pacman-key.sh.in index fb42f938..c200d8e4 100644 --- a/scripts/pacman-key.sh.in +++ b/scripts/pacman-key.sh.in @@ -396,13 +396,16 @@ PACMAN_KEYRING_DIR=${PACMAN_KEYRING_DIR:-$(get_from "$CONFIG" "GPGDir" || echo " GPG_PACMAN=(gpg --homedir ${PACMAN_KEYRING_DIR} --no-permission-warning) # check only a single operation has been given +# don't include UPDATEDB in here as other opts can induce it numopt=$(( ADD + DELETE + EDITKEY + EXPORT + FINGER + IMPORT + IMPORT_TRUSTDB + - INIT + LISTKEYS + LISTSIGS + POPULATE + RECEIVE + UPDATEDB + VERIFY )) + INIT + LISTKEYS + LISTSIGS + POPULATE + RECEIVE + VERIFY )) case $numopt in 0) - error "$(gettext "no operation specified (use -h for help)")" - exit 1 + if (( ! UPDATEDB )); then + error "$(gettext "no operation specified (use -h for help)")" + exit 1 + fi ;; [!1]) error "$(gettext "Multiple operations specified")" @@ -427,6 +430,9 @@ esac (( RECEIVE )) && receive_keys (( VERIFY )) && "${GPG_PACMAN[@]}" --verify $SIGNATURE -(( UPDATEDB )) && "${GPG_PACMAN[@]}" --batch --check-trustdb +if (( UPDATEDB )); then + msg "$(gettext "Updating trust database...")" + "${GPG_PACMAN[@]}" --batch --check-trustdb +fi # vim: set ts=2 sw=2 noet: |