Date: Wednesday, December 17, 2014 @ 18:55:41 Author: dan Revision: 227711
upgpkg: git 2.2.0-1 Add patches to make compatible with gnupg 2.1.x Added: git/trunk/0001-create-gpg-homedir-on-the-fly.patch git/trunk/0002-skip-RFC1991-tests-for-gnupg-2.1.patch Modified: git/trunk/PKGBUILD ---------------------------------------------+ 0001-create-gpg-homedir-on-the-fly.patch | 58 ++++++++++++++++ 0002-skip-RFC1991-tests-for-gnupg-2.1.patch | 93 ++++++++++++++++++++++++++ PKGBUILD | 19 ++++- 3 files changed, 167 insertions(+), 3 deletions(-) Added: 0001-create-gpg-homedir-on-the-fly.patch =================================================================== --- 0001-create-gpg-homedir-on-the-fly.patch (rev 0) +++ 0001-create-gpg-homedir-on-the-fly.patch 2014-12-17 17:55:41 UTC (rev 227711) @@ -0,0 +1,58 @@ +From d2c93870da4997abeb2813873878c1a556defde4 Mon Sep 17 00:00:00 2001 +From: Christian Hesse <[email protected]> +Date: Fri, 12 Dec 2014 07:34:34 +0100 +Subject: [PATCH 1/3] create gpg homedir on the fly + +GnuPG 2.1 homedir looks different, so just create it on the fly by +importing needed private and public keys and ownertrust. +This solves an issue with gnupg 2.1 running interactive pinentry when +old secret key is present. + +Signed-off-by: Christian Hesse <[email protected]> +--- + t/lib-gpg.sh | 10 +++++++--- + t/lib-gpg/ownertrust | 4 ++++ + t/lib-gpg/random_seed | Bin 600 -> 0 bytes + t/lib-gpg/trustdb.gpg | Bin 1360 -> 0 bytes + 4 files changed, 11 insertions(+), 3 deletions(-) + create mode 100644 t/lib-gpg/ownertrust + delete mode 100644 t/lib-gpg/random_seed + delete mode 100644 t/lib-gpg/trustdb.gpg + +diff --git a/t/lib-gpg.sh b/t/lib-gpg.sh +index cd2baef..4e57942 100755 +--- a/t/lib-gpg.sh ++++ b/t/lib-gpg.sh +@@ -16,11 +16,15 @@ else + # Type DSA and Elgamal, size 2048 bits, no expiration date. + # Name and email: C O Mitter <[email protected]> + # No password given, to enable non-interactive operation. +- cp -R "$TEST_DIRECTORY"/lib-gpg ./gpghome +- chmod 0700 gpghome +- chmod 0600 gpghome/* ++ mkdir ./gpghome ++ chmod 0700 ./gpghome + GNUPGHOME="$(pwd)/gpghome" + export GNUPGHOME ++ gpg --homedir "${GNUPGHOME}" --import \ ++ "$TEST_DIRECTORY"/lib-gpg/pubring.gpg \ ++ "$TEST_DIRECTORY"/lib-gpg/secring.gpg ++ gpg --homedir "${GNUPGHOME}" --import-ownertrust \ ++ "$TEST_DIRECTORY"/lib-gpg/ownertrust + test_set_prereq GPG + ;; + esac +diff --git a/t/lib-gpg/ownertrust b/t/lib-gpg/ownertrust +new file mode 100644 +index 0000000..b3e3c4f +--- /dev/null ++++ b/t/lib-gpg/ownertrust +@@ -0,0 +1,4 @@ ++# List of assigned trustvalues, created Thu 11 Dec 2014 01:26:28 PM CET ++# (Use "gpg --import-ownertrust" to restore them) ++73D758744BE721698EC54E8713B6F51ECDDE430D:6: ++D4BE22311AD3131E5EDA29A461092E85B7227189:3: + +-- +2.2.0 + Added: 0002-skip-RFC1991-tests-for-gnupg-2.1.patch =================================================================== --- 0002-skip-RFC1991-tests-for-gnupg-2.1.patch (rev 0) +++ 0002-skip-RFC1991-tests-for-gnupg-2.1.patch 2014-12-17 17:55:41 UTC (rev 227711) @@ -0,0 +1,93 @@ +From 2bbdf8703ea22b91f6d0b12b8c4ff3b90293b717 Mon Sep 17 00:00:00 2001 +From: Christian Hesse <[email protected]> +Date: Fri, 12 Dec 2014 07:40:28 +0100 +Subject: [PATCH 2/3] skip RFC1991 tests for gnupg 2.1 + +GnuPG >= 2.1.0 does not longer support RFC1991, so skip these +tests. + +Signed-off-by: Christian Hesse <[email protected]> +--- + t/lib-gpg.sh | 3 +++ + t/t7004-tag.sh | 14 +++++++------- + 2 files changed, 10 insertions(+), 7 deletions(-) + +diff --git a/t/lib-gpg.sh b/t/lib-gpg.sh +index 4e57942..b0138ad 100755 +--- a/t/lib-gpg.sh ++++ b/t/lib-gpg.sh +@@ -26,6 +26,9 @@ else + gpg --homedir "${GNUPGHOME}" --import-ownertrust \ + "$TEST_DIRECTORY"/lib-gpg/ownertrust + test_set_prereq GPG ++ if echo | gpg --homedir "${GNUPGHOME}" -b --rfc1991 >/dev/null 2>/dev/null; then ++ test_set_prereq RFC1991 ++ fi + ;; + esac + fi +diff --git a/t/t7004-tag.sh b/t/t7004-tag.sh +index 796e9f7..35c805a 100755 +--- a/t/t7004-tag.sh ++++ b/t/t7004-tag.sh +@@ -1081,7 +1081,7 @@ test_expect_success GPG \ + get_tag_header rfc1991-signed-tag $commit commit $time >expect + echo "RFC1991 signed tag" >>expect + echo '-----BEGIN PGP MESSAGE-----' >>expect +-test_expect_success GPG \ ++test_expect_success GPG,RFC1991 \ + 'creating a signed tag with rfc1991' ' + echo "rfc1991" >gpghome/gpg.conf && + git tag -s -m "RFC1991 signed tag" rfc1991-signed-tag $commit && +@@ -1095,7 +1095,7 @@ cp "$1" actual + EOF + chmod +x fakeeditor + +-test_expect_success GPG \ ++test_expect_success GPG,RFC1991 \ + 'reediting a signed tag body omits signature' ' + echo "rfc1991" >gpghome/gpg.conf && + echo "RFC1991 signed tag" >expect && +@@ -1103,13 +1103,13 @@ test_expect_success GPG \ + test_cmp expect actual + ' + +-test_expect_success GPG \ ++test_expect_success GPG,RFC1991 \ + 'verifying rfc1991 signature' ' + echo "rfc1991" >gpghome/gpg.conf && + git tag -v rfc1991-signed-tag + ' + +-test_expect_success GPG \ ++test_expect_success GPG,RFC1991 \ + 'list tag with rfc1991 signature' ' + echo "rfc1991" >gpghome/gpg.conf && + echo "rfc1991-signed-tag RFC1991 signed tag" >expect && +@@ -1123,12 +1123,12 @@ test_expect_success GPG \ + + rm -f gpghome/gpg.conf + +-test_expect_success GPG \ ++test_expect_success GPG,RFC1991 \ + 'verifying rfc1991 signature without --rfc1991' ' + git tag -v rfc1991-signed-tag + ' + +-test_expect_success GPG \ ++test_expect_success GPG,RFC1991 \ + 'list tag with rfc1991 signature without --rfc1991' ' + echo "rfc1991-signed-tag RFC1991 signed tag" >expect && + git tag -l -n1 rfc1991-signed-tag >actual && +@@ -1139,7 +1139,7 @@ test_expect_success GPG \ + test_cmp expect actual + ' + +-test_expect_success GPG \ ++test_expect_success GPG,RFC1991 \ + 'reediting a signed tag body omits signature' ' + echo "RFC1991 signed tag" >expect && + GIT_EDITOR=./fakeeditor git tag -f -s rfc1991-signed-tag $commit && +-- +2.2.0 + Modified: PKGBUILD =================================================================== --- PKGBUILD 2014-12-17 16:51:02 UTC (rev 227710) +++ PKGBUILD 2014-12-17 17:55:41 UTC (rev 227711) @@ -2,7 +2,7 @@ # Maintainer: Dan McGee <[email protected]> pkgname=git -pkgver=2.1.3 +pkgver=2.2.0 pkgrel=1 pkgdesc="the fast distributed version control system" arch=(i686 x86_64) @@ -24,9 +24,20 @@ provides=('git-core') install=git.install source=("https://www.kernel.org/pub/software/scm/git/git-$pkgver.tar.xz" + 0001-create-gpg-homedir-on-the-fly.patch + 0002-skip-RFC1991-tests-for-gnupg-2.1.patch [email protected] git-daemon.socket) +prepare() { + cd "$srcdir/$pkgname-$pkgver" + patch -Np1 < ../0001-create-gpg-homedir-on-the-fly.patch + # patch utility doesn't support git binary diffs + rm t/lib-gpg/random_seed + rm t/lib-gpg/trustdb.gpg + patch -Np1 < ../0002-skip-RFC1991-tests-for-gnupg-2.1.patch +} + build() { export PYTHON_PATH='/usr/bin/python2' cd "$srcdir/$pkgname-$pkgver" @@ -46,7 +57,7 @@ export PYTHON_PATH='/usr/bin/python2' cd "$srcdir/$pkgname-$pkgver" local jobs - jobs=$(expr "$MAKEFLAGS" : '.*\(-j[0-9]*\).*') + jobs=$(expr "$MAKEFLAGS" : '.*\(-j[0-9]*\).*') || true mkdir -p /dev/shm/git-test make prefix=/usr gitexecdir=/usr/lib/git-core \ CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" \ @@ -104,6 +115,8 @@ install -D -m 644 "$srcdir"/git-daemon.socket "$pkgdir"/usr/lib/systemd/system/git-daemon.socket } -md5sums=('43815ec043c0ae46c3efa4c8e28feaba' +md5sums=('5c9d20582297f8f24606fe49f515b584' + '5383e27f24bfd356f24b709ea27f8201' + '9bb82b29aee1772a893cc2a0a1584b89' '042524f942785772d7bd52a1f02fe5ae' 'f67869315c2cc112e076f0c73f248002')
