[arch-commits] Commit in git/trunk (3 files)

Dan McGee dan at archlinux.org
Wed Dec 17 17:55:42 UTC 2014


    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 <mail at eworm.de>
+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 <mail at eworm.de>
+---
+ 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 <committer at example.com>
+ 		# 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 <mail at eworm.de>
+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 <mail at eworm.de>
+---
+ 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 <dan at archlinux.org>
 
 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
         git-daemon at .service
         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')



More information about the arch-commits mailing list