summaryrefslogtreecommitdiff
path: root/cmdline/apt-key.in
diff options
context:
space:
mode:
authorDavid Kalnischkies <david@kalnischkies.de>2014-01-27 18:26:44 +0100
committerDavid Kalnischkies <david@kalnischkies.de>2014-09-27 00:12:14 +0200
commitbd7fb5aa31f58917e8630f2981e78d190d465198 (patch)
tree2bf9517a938892a1e008f791576e70301ae2540e /cmdline/apt-key.in
parentba72845c07b2682f251dc7661869d20095260f8f (diff)
add --secret-keyring option for apt-key
For some advanced usecases it might be handy to specify the secret keyring to be used (e.g. as it is used in the testcases), but specifying it via a normal option for gnupg might not be available forever: http://lists.gnupg.org/pipermail/gnupg-users/2013-August/047180.html Git-Dch: Ignore
Diffstat (limited to 'cmdline/apt-key.in')
-rw-r--r--cmdline/apt-key.in11
1 files changed, 11 insertions, 0 deletions
diff --git a/cmdline/apt-key.in b/cmdline/apt-key.in
index 74ca4d135..36824b6ec 100644
--- a/cmdline/apt-key.in
+++ b/cmdline/apt-key.in
@@ -287,6 +287,11 @@ while [ -n "$1" ]; do
FORCED_KEYRING="$1"
shift
;;
+ --secret-keyring)
+ shift
+ FORCED_SECRET_KEYRING="$1"
+ shift
+ ;;
--fakeroot)
requires_root() { true; }
shift
@@ -355,6 +360,12 @@ if [ "$command" != "help" ]; then
GPG_CMD="$GPG_CMD --no-auto-check-trustdb --trust-model always"
GPG="$GPG_CMD"
+ # for advanced operations, we might really need a secret keyring after all
+ if [ -n "$FORCED_SECRET_KEYRING" ] && [ -r "$FORCED_SECRET_KEYRING" ]; then
+ rm -f "$SECRETKEYRING"
+ cp -a "$FORCED_SECRET_KEYRING" "$SECRETKEYRING"
+ fi
+
# gpg defaults to mode 0600 for new keyrings. Create one with 0644 instead.
if ! [ -e "$TRUSTEDFILE" ]; then
if [ -w "$(dirname "$TRUSTEDFILE")" ]; then