On Sun, 13 Dec 2015 13:51:43 +0100, viq <vic...@gmail.com> wrote:

> Here's a tarball of duplicity 0.7.06, so it's easier to import next to
> existing 0.6.x. I can provide it in a form of a diff as well.

I guess that it would have been easier with a diff, but that's my
opinion :)

> Works for me for my simple usage (duply backups to hubic).
> I would very much like this version to be available, as this allows to
> backup to newer, cheaper backends than the 0.6 series.
> "But they say it's a development version!" - yes, they do. Well, they
> call it "stable development version", and call 0.6 deprecated and
> everywhere I saw tell people to actually use the 0.7 version.

I approve of the move to the 0.7 series.

I tried your archive. Between 0.6 and 0.7 they moved from
#!/usr/bin/env python to #!/usr/bin/env python2. The former is changed
to #!/usr/local/bin/python2.7 but not the latter. As it doesn't work I
updated the patch patch-bin_duplicity and the Makefile for it, but it's
more a workaround IMHO.

I tested the update with restoring backups made on 5.8 with -stable
duplicity on amd64 and also backupping and restoring, on amd64 and i386
works fine.

Also FYI mandoc -Tlint duplicity.1 gives one error and a bunch of
warning.

Updated diff, I hope I didn't miss anything from your update.

Index: Makefile
===================================================================
RCS file: /cvs/ports/sysutils/duplicity/Makefile,v
retrieving revision 1.34
diff -u -p -r1.34 Makefile
--- Makefile    29 Sep 2015 10:52:34 -0000      1.34
+++ Makefile    15 Dec 2015 21:08:43 -0000
@@ -1,10 +1,12 @@
 # $OpenBSD: Makefile,v 1.34 2015/09/29 10:52:34 sthen Exp $
 
+# optional dependencies
+# py-pyrax
+
 COMMENT =      encrypted backup using rsync algorithm
 
-MODPY_EGG_VERSION = 0.6.26
+MODPY_EGG_VERSION = 0.7.06
 DISTNAME =     duplicity-${MODPY_EGG_VERSION}
-REVISION =     0
 
 CATEGORIES =   sysutils
 
@@ -22,19 +24,19 @@ WANTLIB +=  pthread rsync ${MODPY_WANTLIB
 LIB_DEPENDS += net/librsync \
                ${MODPY_LIB_DEPENDS}
 
-RUN_DEPENDS += net/py-boto \
+RUN_DEPENDS += devel/py-pexpect \
                net/ncftp \
+               net/py-boto \
+               gnupg-<2:security/gnupg \
                sysutils/py-lockfile
 
 MAKE_ENV +=    LIBRSYNC_DIR=${LOCALBASE}
 
+pre-build:
+               ${SUBST_CMD} ${WRKSRC}/bin/duplicity
+
 # Some regression tests are hanging
 # TEST_DEPENDS =       devel/py-mock
 NO_TEST =      Yes
-
-# XXX 600 mode prevents from reading the man page;
-# check if still required at next update
-post-extract:
-       chmod 644 ${WRKSRC}/bin/*.1
 
 .include <bsd.port.mk>
Index: distinfo
===================================================================
RCS file: /cvs/ports/sysutils/duplicity/distinfo,v
retrieving revision 1.18
diff -u -p -r1.18 distinfo
--- distinfo    4 Jun 2015 04:19:12 -0000       1.18
+++ distinfo    15 Dec 2015 21:08:43 -0000
@@ -1,2 +1,2 @@
-SHA256 (duplicity-0.6.26.tar.gz) = i++KXYBbea4XflTUIVIji84bKq+a0y4DosOiDL1OB0o=
-SIZE (duplicity-0.6.26.tar.gz) = 1270436
+SHA256 (duplicity-0.7.06.tar.gz) = AHVZXtuJQ5nPAPrpFUquk6B+qtwDH+3l30zFlUNsf4w=
+SIZE (duplicity-0.7.06.tar.gz) = 1417252
Index: patches/patch-bin_duplicity
===================================================================
RCS file: /cvs/ports/sysutils/duplicity/patches/patch-bin_duplicity,v
retrieving revision 1.6
diff -u -p -r1.6 patch-bin_duplicity
--- patches/patch-bin_duplicity 14 Nov 2014 07:49:33 -0000      1.6
+++ patches/patch-bin_duplicity 15 Dec 2015 21:08:43 -0000
@@ -1,13 +1,20 @@
 $OpenBSD: patch-bin_duplicity,v 1.6 2014/11/14 07:49:33 brad Exp $
---- bin/duplicity.orig Fri May  9 09:27:41 2014
-+++ bin/duplicity      Sat Aug  9 00:18:15 2014
-@@ -1223,9 +1223,12 @@ def check_resources(action):
+--- bin/duplicity.orig Mon Dec  7 13:03:39 2015
++++ bin/duplicity      Tue Dec 15 21:56:17 2015
+@@ -1,4 +1,4 @@
+-#!/usr/bin/env python2
++#!${MODPY_BIN}
+ # -*- Mode:Python; indent-tabs-mode:nil; tab-width:4 -*-
+ #
+ # duplicity -- Encrypted bandwidth efficient backup
+@@ -1257,10 +1257,12 @@ def check_resources(action):
                             log.ErrorCode.get_ulimit_failed)
          maxopen = min([l for l in (soft, hard) if l > -1])
          if maxopen < 1024:
 -            log.FatalError(_("Max open files of %s is too low, should be >= 
1024.\n"
 -                             "Use 'ulimit -n 1024' or higher to correct.\n") 
% (maxopen,),
--                             log.ErrorCode.maxopen_too_low)
+-                           log.ErrorCode.maxopen_too_low)
+-
 +            try:
 +              resource.setrlimit(resource.RLIMIT_NOFILE, (1024, hard))
 +            except resource.error:
Index: patches/patch-bin_duplicity_1
===================================================================
RCS file: /cvs/ports/sysutils/duplicity/patches/patch-bin_duplicity_1,v
retrieving revision 1.2
diff -u -p -r1.2 patch-bin_duplicity_1
--- patches/patch-bin_duplicity_1       14 Nov 2014 07:49:33 -0000      1.2
+++ patches/patch-bin_duplicity_1       15 Dec 2015 21:08:43 -0000
@@ -1,47 +1,38 @@
 $OpenBSD: patch-bin_duplicity_1,v 1.2 2014/11/14 07:49:33 brad Exp $
 Document the ssh backend change from paramiko to pexpect.
---- bin/duplicity.1.orig       Fri May  9 09:27:41 2014
-+++ bin/duplicity.1    Sat Aug  9 00:18:15 2014
-@@ -108,7 +108,7 @@ There are two
- for scp/sftp/ssh access (also see
- .BR "A NOTE ON SSH BACKENDS" ).
- .TP
--.BR "ssh paramiko backend" " (enabled by default)"
-+.B "ssh paramiko backend"
- .B paramiko
- (SSH2 for python)
- - http://pypi.python.org/pypi/paramiko (downloads); 
http://github.com/paramiko/paramiko (project page)
-@@ -117,7 +117,7 @@ for scp/sftp/ssh access (also see
- (Python Cryptography Toolkit)
- - http://www.dlitz.net/software/pycrypto/
- .TP
--.B ssh pexpect backend
-+.BR "ssh pexpect backend" " (default on OpenBSD)"
- .B sftp/scp client binaries
- OpenSSH - http://www.openssh.com/
- .TP
-@@ -874,9 +874,9 @@ This password is also used for passphrase-protected ss
- .TP
- .BI "--ssh-backend " backend
- Allows the explicit selection of a ssh backend. Defaults to
--.BR paramiko .
-+.BR "pexpect on OpenBSD" .
- Alternatively you might choose
--.BR pexpect .
-+.BR paramiko .
+--- bin/duplicity.1.orig       Mon Dec  7 13:03:39 2015
++++ bin/duplicity.1    Tue Dec 15 21:14:11 2015
+@@ -1151,9 +1151,9 @@ scp://.. or
+ .br
+ sftp://user[:password]@other.host[:port]/[relative|/absolute]_path
+ .PP
+-.BR "defaults" " are paramiko+scp:// and paramiko+sftp://";
++.BR "defaults" " are pexpect+scp://, pexpect+sftp://, lftp+sftp://";
+ .br
+-.BR "alternatively" " try pexpect+scp://, pexpect+sftp://, lftp+sftp://";
++.BR "alternatively" " try paramiko+scp:// and paramiko+sftp://";
  .br
  See also
- .BR "A NOTE ON SSH BACKENDS" .
-@@ -1578,7 +1578,7 @@ backend allows to define
+ .BR --ssh-askpass ,
+@@ -1764,7 +1764,7 @@ about the requirements for a server to support
+ .I scp/ssh
+ access.
+ To make it even more confusing the user can choose between several ssh 
backends via a scheme prefix:
+-paramiko+ (default), pexpect+, lftp+... .
++paramiko+, pexpect+ (default), lftp+... .
+ .br
+ paramiko & pexpect support
+ .BR --use-scp ,
+@@ -1776,7 +1776,7 @@ backend allows to define
  .BR --scp-command " and"
  .BR --sftp-command .
  .PP
--.BR "SSH paramiko backend " "(selected by default)"
-+.B "SSH paramiko backend"
+-.BR "SSH paramiko backend " "(default)"
++.BR "SSH paramiko backend"
  is a complete reimplementation of ssh protocols natively in python. Advantages
  are speed and maintainability. Minor disadvantage is that extra packages are
  needed as listed in
-@@ -1591,7 +1591,7 @@ mode (
+@@ -1789,7 +1789,7 @@ mode (
  .I --use-scp
  ) though scp access is used for put/get operations but listing is done via 
ssh remote shell.
  .PP
@@ -50,3 +41,12 @@ Document the ssh backend change from par
  is the legacy ssh backend using the command line ssh binaries via pexpect.
  Older versions used
  .I scp
+@@ -2050,7 +2050,7 @@ see pydrive backend
+ (Python Cryptography Toolkit)
+ - http://www.dlitz.net/software/pycrypto/
+ .TP
+-.B ssh pexpect backend
++.BR "ssh pexpect backend" " (default on OpenBSD)"
+ .B sftp/scp client binaries
+ OpenSSH - http://www.openssh.com/
+ .br
Index: patches/patch-setup_py
===================================================================
RCS file: /cvs/ports/sysutils/duplicity/patches/patch-setup_py,v
retrieving revision 1.6
diff -u -p -r1.6 patch-setup_py
--- patches/patch-setup_py      14 Nov 2014 07:49:33 -0000      1.6
+++ patches/patch-setup_py      15 Dec 2015 21:08:43 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-setup_py,v 1.6 2014/11/14 07:49:33 brad Exp $
---- setup.py.orig      Fri May  9 09:27:41 2014
-+++ setup.py   Sat Aug  9 00:18:15 2014
-@@ -45,17 +45,9 @@ if os.name == 'posix':
+--- setup.py.orig      Mon Dec  7 13:03:39 2015
++++ setup.py   Tue Dec 15 21:14:11 2015
+@@ -47,15 +47,9 @@ if os.name == 'posix':
          incdir_list = [os.path.join(LIBRSYNC_DIR, 'include')]
          libdir_list = [os.path.join(LIBRSYNC_DIR, 'lib')]
  
@@ -14,8 +14,6 @@ $OpenBSD: patch-setup_py,v 1.6 2014/11/1
 -                'README',
 -                'README-REPO',
 -                'README-LOG',
--                'tarfile-LICENSE',
--                'tarfile-CHANGES',
 -                'CHANGELOG']),
                ]
  
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/sysutils/duplicity/pkg/PLIST,v
retrieving revision 1.14
diff -u -p -r1.14 PLIST
--- pkg/PLIST   1 Nov 2014 10:28:15 -0000       1.14
+++ pkg/PLIST   15 Dec 2015 21:08:43 -0000
@@ -2,11 +2,12 @@
 bin/duplicity
 bin/rdiffdir
 lib/python${MODPY_VERSION}/site-packages/duplicity/
-lib/python${MODPY_VERSION}/site-packages/duplicity-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/
-lib/python${MODPY_VERSION}/site-packages/duplicity-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/PKG-INFO
-lib/python${MODPY_VERSION}/site-packages/duplicity-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/SOURCES.txt
-lib/python${MODPY_VERSION}/site-packages/duplicity-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/dependency_links.txt
-lib/python${MODPY_VERSION}/site-packages/duplicity-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/top_level.txt
+lib/python${MODPY_VERSION}/site-packages/duplicity-0.7.6-py${MODPY_VERSION}.egg-info/
+lib/python${MODPY_VERSION}/site-packages/duplicity-0.7.6-py${MODPY_VERSION}.egg-info/PKG-INFO
+lib/python${MODPY_VERSION}/site-packages/duplicity-0.7.6-py${MODPY_VERSION}.egg-info/SOURCES.txt
+lib/python${MODPY_VERSION}/site-packages/duplicity-0.7.6-py${MODPY_VERSION}.egg-info/dependency_links.txt
+lib/python${MODPY_VERSION}/site-packages/duplicity-0.7.6-py${MODPY_VERSION}.egg-info/requires.txt
+lib/python${MODPY_VERSION}/site-packages/duplicity-0.7.6-py${MODPY_VERSION}.egg-info/top_level.txt
 lib/python${MODPY_VERSION}/site-packages/duplicity/__init__.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/__init__.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/_librsync.so
@@ -25,44 +26,63 @@ lib/python${MODPY_VERSION}/site-packages
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/_cf_cloudfiles.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/_cf_pyrax.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/_cf_pyrax.pyc
-lib/python${MODPY_VERSION}/site-packages/duplicity/backends/_ssh_paramiko.py
-lib/python${MODPY_VERSION}/site-packages/duplicity/backends/_ssh_paramiko.pyc
-lib/python${MODPY_VERSION}/site-packages/duplicity/backends/_ssh_pexpect.py
-lib/python${MODPY_VERSION}/site-packages/duplicity/backends/_ssh_pexpect.pyc
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/azurebackend.py
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/azurebackend.pyc
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/b2backend.py
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/b2backend.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/botobackend.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/botobackend.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/cfbackend.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/cfbackend.pyc
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/copycombackend.py
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/copycombackend.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/dpbxbackend.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/dpbxbackend.pyc
-lib/python${MODPY_VERSION}/site-packages/duplicity/backends/ftpbackend.py
-lib/python${MODPY_VERSION}/site-packages/duplicity/backends/ftpbackend.pyc
-lib/python${MODPY_VERSION}/site-packages/duplicity/backends/ftpsbackend.py
-lib/python${MODPY_VERSION}/site-packages/duplicity/backends/ftpsbackend.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/gdocsbackend.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/gdocsbackend.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/giobackend.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/giobackend.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/hsibackend.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/hsibackend.pyc
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/hubicbackend.py
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/hubicbackend.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/imapbackend.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/imapbackend.pyc
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/lftpbackend.py
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/lftpbackend.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/localbackend.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/localbackend.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/megabackend.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/megabackend.pyc
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/multibackend.py
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/multibackend.pyc
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/ncftpbackend.py
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/ncftpbackend.pyc
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/onedrivebackend.py
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/onedrivebackend.pyc
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/par2backend.py
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/par2backend.pyc
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/pydrivebackend.py
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/pydrivebackend.pyc
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/pyrax_identity/
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/pyrax_identity/__init__.py
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/pyrax_identity/__init__.pyc
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/pyrax_identity/hubic.py
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/pyrax_identity/hubic.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/rsyncbackend.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/rsyncbackend.pyc
-lib/python${MODPY_VERSION}/site-packages/duplicity/backends/sshbackend.py
-lib/python${MODPY_VERSION}/site-packages/duplicity/backends/sshbackend.pyc
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/ssh_paramiko_backend.py
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/ssh_paramiko_backend.pyc
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/ssh_pexpect_backend.py
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/ssh_pexpect_backend.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/swiftbackend.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/swiftbackend.pyc
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/sxbackend.py
+lib/python${MODPY_VERSION}/site-packages/duplicity/backends/sxbackend.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/tahoebackend.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/tahoebackend.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/webdavbackend.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/backends/webdavbackend.pyc
-lib/python${MODPY_VERSION}/site-packages/duplicity/backends/~par2wrapperbackend.py
-lib/python${MODPY_VERSION}/site-packages/duplicity/backends/~par2wrapperbackend.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/cached_ops.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/cached_ops.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/collections.py
@@ -103,24 +123,18 @@ lib/python${MODPY_VERSION}/site-packages
 lib/python${MODPY_VERSION}/site-packages/duplicity/patchdir.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/path.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/path.pyc
-lib/python${MODPY_VERSION}/site-packages/duplicity/pexpect.py
-lib/python${MODPY_VERSION}/site-packages/duplicity/pexpect.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/progress.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/progress.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/robust.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/robust.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/selection.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/selection.pyc
-lib/python${MODPY_VERSION}/site-packages/duplicity/static.py
-lib/python${MODPY_VERSION}/site-packages/duplicity/static.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/statistics.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/statistics.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/tarfile.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/tarfile.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/tempdir.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/tempdir.pyc
-lib/python${MODPY_VERSION}/site-packages/duplicity/urlparse_2_5.py
-lib/python${MODPY_VERSION}/site-packages/duplicity/urlparse_2_5.pyc
 lib/python${MODPY_VERSION}/site-packages/duplicity/util.py
 lib/python${MODPY_VERSION}/site-packages/duplicity/util.pyc
 @man man/man1/duplicity.1

Reply via email to