From 91bf3fbd2eedd90410cc9bab13adc9cc929ee330 Mon Sep 17 00:00:00 2001 From: rhatto Date: Wed, 7 Jan 2009 20:31:53 +0000 Subject: attempting to fix 49 git-svn-id: svn+slack://slack.fluxo.info/var/svn/simplepkg@739 04377dda-e619-0410-9926-eae83683ac58 --- trunk/lib/common.sh | 30 +++++++++++++++++++++++++++--- 1 file changed, 27 insertions(+), 3 deletions(-) (limited to 'trunk/lib/common.sh') diff --git a/trunk/lib/common.sh b/trunk/lib/common.sh index d583a92..d61dbd9 100644 --- a/trunk/lib/common.sh +++ b/trunk/lib/common.sh @@ -1131,18 +1131,22 @@ function gen_meta { function repo_gpg_key { - # usage: repo_gpg_key + # usage: repo_gpg_key [update] - local folder="$1" tmp_gpg_folder + local folder="$1" update="$2" tmp_gpg_folder if [ -z "$SIGN_KEYID" ]; then echo "GPG-KEY checking failed, no sign key id set." return 1 fi + if [ "$update" == "--update" ]; then + update=true + fi + if [ $SIGN_PACKAGES -eq $on ]; then if [ -f "$folder/GPG-KEY" ]; then - if ! gpg --with-colons < $folder/GPG-KEY | cut -d : -f 5 | grep -q -e "$SIGN_KEYID$"; then + if $update || ! gpg --with-colons < $folder/GPG-KEY | cut -d : -f 5 | grep -q -e "$SIGN_KEYID$"; then echo "Adding OpenPGP key id $SIGN_KEYID to $folder/GPG-KEY file..." tmp_gpg_folder="`mktemp -d $TMP/tmp_gpg_folder.XXXXXX`" @@ -1455,6 +1459,26 @@ function check_gnupg { } +function get_sign_packages_user { + + # get sign package user + # usage: get_sign_package_user + + check_gnupg $SIGN_PACKAGES_USER + + if [ ! -z "$SIGN_PACKAGES_KEYID" ]; then + SIGN_KEYID="$SIGN_PACKAGES_KEYID" + else + if [ ! -z "$SIGN_PACKAGES_USER" ]; then + SIGN_KEYID="`su $SIGN_PACKAGES_USER -c \ + "gpg --list-secret-keys --with-colons | grep ^sec | head -n 1 | cut -d : -f 5 | sed 's/^.*\(.\{8\}\)$/\1/'"`" + else + SIGN_KEYID="`gpg --list-secret-keys --with-colons | grep ^sec | head -n 1 | cut -d : -f 5 | sed 's/^.*\(.\{8\}\)$/\1/'`" + fi + fi + +} + function rmd160sum { # computes RIPEMD-160 message digest -- cgit v1.2.3