M gnu-system.am => gnu-system.am +2 -0
@@ 321,6 321,8 @@ dist_patch_DATA = \
gnu/packages/patches/diffutils-gets-undeclared.patch \
gnu/packages/patches/doxygen-test.patch \
gnu/packages/patches/doxygen-tmake.patch \
+ gnu/packages/patches/duplicity-piped-password.patch \
+ gnu/packages/patches/duplicity-test_selection-tmp.patch \
gnu/packages/patches/emacs-configure-sh.patch \
gnu/packages/patches/eudev-rules-directory.patch \
gnu/packages/patches/file-CVE-2014-3587.patch \
M gnu/packages/backup.scm => gnu/packages/backup.scm +14 -5
@@ 29,6 29,7 @@
#:use-module (gnu packages dejagnu)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnupg)
+ #:use-module (gnu packages linux)
#:use-module (gnu packages mcrypt)
#:use-module (gnu packages nettle)
#:use-module (gnu packages pcre)
@@ 53,7 54,9 @@
version ".tar.gz"))
(sha256
(base32
- "0l14nrhbgkyjgvh339bbhnm6hrdwrjadphq1jmpi0mcgcdbdfh8x"))))
+ "0l14nrhbgkyjgvh339bbhnm6hrdwrjadphq1jmpi0mcgcdbdfh8x"))
+ (patches (list (search-patch "duplicity-piped-password.patch")
+ (search-patch "duplicity-test_selection-tmp.patch")))))
(build-system python-build-system)
(native-inputs
`(("python2-setuptools" ,python2-setuptools)
@@ 63,15 66,21 @@
("librsync" ,librsync)
("mock" ,python2-mock) ;for testing
("lockfile" ,python2-lockfile)
- ("gnupg" ,gnupg-1))) ;gpg executable needed
+ ("gnupg" ,gnupg-1) ;gpg executable needed
+ ("util-linux" ,util-linux) ;for setsid
+ ("tzdata" ,tzdata)))
(arguments
`(#:python ,python-2 ;setup assumes Python 2
#:test-target "test"
#:phases (alist-cons-before
- 'check 'patch-tests
- (lambda _
+ 'check 'check-setup
+ (lambda* (#:key inputs #:allow-other-keys)
(substitute* "testing/functional/__init__.py"
- (("/bin/sh") (which "sh"))))
+ (("/bin/sh") (which "sh")))
+ (setenv "HOME" (getcwd)) ;gpg needs to write to $HOME
+ (setenv "TZDIR" ;some timestamp checks need TZDIR
+ (string-append (assoc-ref inputs "tzdata")
+ "/share/zoneinfo")))
%standard-phases)))
(home-page "http://duplicity.nongnu.org/index.html")
(synopsis "Encrypted backup using rsync algorithm")
A gnu/packages/patches/duplicity-piped-password.patch => gnu/packages/patches/duplicity-piped-password.patch +20 -0
@@ 0,0 1,20 @@
+This test, on three occasions, is failing with the error:
+
+ EOF: End Of File (EOF) in read_nonblocking(). Braindead platform.
+
+--- duplicity-0.6.24/testing/functional/test_final.py 2014-09-28 13:14:52.146001614 -0500
++++ duplicity-0.6.24/testing/functional/test_final.py 2014-09-28 13:13:20.333546342 -0500
+@@ -156,13 +156,6 @@
+ self.run_duplicity(options=["remove-older-than", "50000", "--force", self.backend_url])
+ self.assertEqual(self.get_backend_files(), second_chain)
+
+- def test_piped_password(self):
+- """Make sure that prompting for a password works"""
+- self.set_environ("PASSPHRASE", None)
+- self.backup("full", "testfiles/empty_dir",
+- passphrase_input=[self.sign_passphrase, self.sign_passphrase])
+- self.restore(passphrase_input=[self.sign_passphrase])
+-
+
+ class OldFilenamesFinalTest(FinalTest):
+
A gnu/packages/patches/duplicity-test_selection-tmp.patch => gnu/packages/patches/duplicity-test_selection-tmp.patch +18 -0
@@ 0,0 1,18 @@
+Reported upstream at https://bugs.launchpad.net/duplicity/+bug/1375019
+
+--- duplicity-0.6.24/testing/unit/test_selection.py 2014-05-09 08:27:40.000000000 -0500
++++ duplicity-0.6.24/testing/unit/test_selection.py 2014-09-28 12:28:53.932324380 -0500
+@@ -431,10 +431,10 @@
+ [(), ('1',), ('1', '1'), ('1', '2'), ('1', '3')])
+
+ self.root = Path("/")
+- self.ParseTest([("--exclude", "/home/*"),
+- ("--include", "/home"),
++ self.ParseTest([("--exclude", "/tmp/*"),
++ ("--include", "/tmp"),
+ ("--exclude", "/")],
+- [(), ("home",)])
++ [(), ("tmp",)])
+
+ if __name__ == "__main__":
+ unittest.main()