The current state is that python-gnupg will be removed from wheezy on
26th of October unless action is taken before that date.
I believe that the patch provided by Dmitry Shachnev is unsuitable for
wheezy, because it ships a new upstream version. The release team will
be very hesitant to approve such a change. Is there any reason to to
believe otherwise?
To just hack the --quick-random into python-gnupg an easier measure can
be taken.
mkdir debian/bin
cat debian/bin/gpg
#!/bin/sh
GPG=`which -a gpg | uniq | tail -n+2 | head -n1`
exec $GPG --quick-random $@
Ctrl-d
chmod a+x debian/bin/gpg
Then invoke the testsuite with PATH=$(CURDIR)/debian/bin:$$PATH.
Unfortunately this is not enough. Some tests keep failing, because gpg
doesn't like --quick-random in all cases. This results in messages like
this:
DEBUG gnupg Thread-31 [GNUPG:] GOOD_PASSPHRASE
DEBUG gnupg Thread-31 gpg: key is not flagged as insecure - can't use it
with the faked RNG!
DEBUG gnupg Thread-31 gpg: no valid signators
DEBUG gnupg Thread-31 gpg: [stdin]: sign+encrypt failed: no such user id
So we better only give --quick-random only when generating keys.
cat debian/bin/gpg
#!/bin/sh
GPG=`which -a gpg | uniq | tail -n+2 | head -n1`
if echo $* | grep -q gen-key; then
exec $GPG --quick-random $@
else
exec $GPG $@
fi
Ctrl-d
And voila test suite works. This should be good enough for wheezy.
Please find my minimal .debdiff attached. I don't care which solution is
used, as long as some solution lands in wheezy. I will therefore try to
get my NMU .debdiff uploaded to some delayed queue. Please speak up asap
if you intend to fix this yourself.
Helmut
diff -Nru python-gnupg-0.3.0/debian/bin/gpg python-gnupg-0.3.0/debian/bin/gpg
--- python-gnupg-0.3.0/debian/bin/gpg 1970-01-01 01:00:00.0 +0100
+++ python-gnupg-0.3.0/debian/bin/gpg 2012-10-22 23:26:17.0 +0200
@@ -0,0 +1,7 @@
+#!/bin/sh
+GPG=`which -a gpg | uniq | tail -n+2 | head -n1`
+if echo $* | grep -q gen-key; then
+ exec $GPG --quick-random $@
+else
+ exec $GPG $@
+fi
diff -Nru python-gnupg-0.3.0/debian/changelog
python-gnupg-0.3.0/debian/changelog
--- python-gnupg-0.3.0/debian/changelog 2012-05-18 12:04:19.0 +0200
+++ python-gnupg-0.3.0/debian/changelog 2012-10-22 23:30:49.0 +0200
@@ -1,3 +1,11 @@
+python-gnupg (0.3.0-1.1) unstable; urgency=low
+
+ * Non-maintainer upload.
+ * Work around test suite hangs by adding --quick-random when generating
+keys. Closes: #682648
+
+ -- Helmut Grohne hel...@subdivi.de Mon, 22 Oct 2012 23:30:19 +0200
+
python-gnupg (0.3.0-1) unstable; urgency=low
* New upstream release
diff -Nru python-gnupg-0.3.0/debian/rules python-gnupg-0.3.0/debian/rules
--- python-gnupg-0.3.0/debian/rules 2012-05-17 11:16:39.0 +0200
+++ python-gnupg-0.3.0/debian/rules 2012-10-22 23:30:14.0 +0200
@@ -18,12 +18,12 @@
override_dh_auto_test:
ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS)))
set -ex; for py in $(shell pyversions -r -v); do \
- PYTHONPATH=$(CURDIR)/build/lib.*-$$py python$$py test_gnupg.py
;\
+ PATH=$(CURDIR)/debian/bin:$$PATH
PYTHONPATH=$(CURDIR)/build/lib.*-$$py python$$py test_gnupg.py ;\
done
set -ex; for python in $(shell py3versions -r); do \
cp test_gnupg.py test_gnupg_3.py ;\
2to3 -w test_gnupg_3.py ;\
- PYTHONPATH=$(CURDIR)/build/lib $$python test_gnupg_3.py ;\
+ PATH=$(CURDIR)/debian/bin:$$PATH PYTHONPATH=$(CURDIR)/build/lib
$$python test_gnupg_3.py ;\
rm test_gnupg_3.py ;\
done
endif