From ebf8ab9d674570c0bd65d4b3190d6f8ae23e65fd Mon Sep 17 00:00:00 2001 From: rhatto Date: Thu, 18 Dec 2008 04:08:32 +0000 Subject: enhanced gpg integration git-svn-id: svn+slack://slack.fluxo.info/var/svn/simplepkg@673 04377dda-e619-0410-9926-eae83683ac58 --- trunk/src/simplaret | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) (limited to 'trunk/src/simplaret') diff --git a/trunk/src/simplaret b/trunk/src/simplaret index df55526..1d9d47a 100755 --- a/trunk/src/simplaret +++ b/trunk/src/simplaret @@ -63,8 +63,8 @@ function simplaret_backup_index { function simplaret_check_index { for file in `simplaret_metafiles`; do - if [ ! -f "$1/$file" ] && [ -f "$1/$file" ]; then - echo restoring old $file to $1... + if [ ! -f "$1/$file" ] && [ -f "$1/$file.old" ]; then + echo Restoring old $file to $1... mv $1/$file.old $1/$file else rm -f $1/$file.old @@ -73,6 +73,21 @@ function simplaret_check_index { } +function simplaret_import_gpg_keys { + + if [ "$SIGNATURE_CHECKING" == "$on" ]; then + check_gnupg + if [ -f "$1/GPG-KEY" ] && [ -f "$1/GPG-KEY.old" ]; then + if diff $1/GPG-KEY $1/GPG-KEY.old &> /dev/null; then + gpg --import < $1/GPG-KEY + fi + elif [ -f "$1/GPG-KEY" ]; then + gpg --import < $1/GPG-KEY + fi + fi + +} + function simplaret_download { # download a file from a repo to a folder @@ -262,6 +277,7 @@ function simplaret_update { simplaret_get_index $repository_url $storage/$repository_name simplaret_check_index $storage/$repository_name + simplaret_import_gpg_keys $storage/$repository_name unset repository_name repository_url repository_protocol @@ -320,7 +336,11 @@ function simplaret_filelist { function simplaret_metafiles { - echo `simplaret_filelist` CHECKSUMS.md5 + if [ "$SIGNATURE_CHECKING" == "$on" ]; then + echo `simplaret_filelist` CHECKSUMS.md5 GPG-KEY + else + echo `simplaret_filelist` CHECKSUMS.md5 + fi } -- cgit v1.2.3