diff options
Diffstat (limited to 'devel')
-rw-r--r-- | devel/py-attic/ALTERNATIVES | 1 | ||||
-rw-r--r-- | devel/py-attic/DESCR | 4 | ||||
-rw-r--r-- | devel/py-attic/Makefile | 22 | ||||
-rw-r--r-- | devel/py-attic/PLIST | 91 | ||||
-rw-r--r-- | devel/py-attic/distinfo | 8 | ||||
-rw-r--r-- | devel/py-attic/patches/patch-attic_platform.py | 23 | ||||
-rw-r--r-- | devel/py-attic/patches/patch-attic_testsuite_archiver.py | 24 | ||||
-rw-r--r-- | devel/py-attic/patches/patch-attic_xattr.py | 36 |
8 files changed, 209 insertions, 0 deletions
diff --git a/devel/py-attic/ALTERNATIVES b/devel/py-attic/ALTERNATIVES new file mode 100644 index 00000000000..5981e6a7361 --- /dev/null +++ b/devel/py-attic/ALTERNATIVES @@ -0,0 +1 @@ +bin/attic bin/attic@PYVERSSUFFIX@ diff --git a/devel/py-attic/DESCR b/devel/py-attic/DESCR new file mode 100644 index 00000000000..1d329f2f86f --- /dev/null +++ b/devel/py-attic/DESCR @@ -0,0 +1,4 @@ +Attic is a deduplicating backup program. The main goal of Attic is +to provide an efficient and secure way to backup data. The data +deduplication technique used makes Attic suitable for daily backups +since only changes are stored. diff --git a/devel/py-attic/Makefile b/devel/py-attic/Makefile new file mode 100644 index 00000000000..ba25b601b6b --- /dev/null +++ b/devel/py-attic/Makefile @@ -0,0 +1,22 @@ +# $NetBSD: Makefile,v 1.1 2015/04/03 09:43:47 wiz Exp $ + +DISTNAME= Attic-0.14 +PKGNAME= ${PYPKGPREFIX}-${DISTNAME:S/A/a/} +CATEGORIES= sysutils +MASTER_SITES= https://pypi.python.org/packages/source/A/Attic/ + +MAINTAINER= pkgsrc-users@NetBSD.org +HOMEPAGE= https://attic-backup.org/ +COMMENT= Deduplicating backup program +LICENSE= modified-bsd + +DEPENDS+= ${PYPKGPREFIX}-msgpack-[0-9]*:../../devel/py-msgpack + +PYTHON_VERSIONS_INCOMPATIBLE= 26 27 +PLIST_SUBST+= PYVERSSUFFIX=${PYVERSSUFFIX} + +post-install: + cd ${DESTDIR}${PREFIX}/bin && mv attic attic${PYVERSSUFFIX} + +.include "../../lang/python/distutils.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/devel/py-attic/PLIST b/devel/py-attic/PLIST new file mode 100644 index 00000000000..74fee06c167 --- /dev/null +++ b/devel/py-attic/PLIST @@ -0,0 +1,91 @@ +@comment $NetBSD: PLIST,v 1.1 2015/04/03 09:43:47 wiz Exp $ +bin/attic${PYVERSSUFFIX} +${PYSITELIB}/${EGG_FILE}/PKG-INFO +${PYSITELIB}/${EGG_FILE}/SOURCES.txt +${PYSITELIB}/${EGG_FILE}/dependency_links.txt +${PYSITELIB}/${EGG_FILE}/requires.txt +${PYSITELIB}/${EGG_FILE}/top_level.txt +${PYSITELIB}/attic/__init__.py +${PYSITELIB}/attic/__init__.pyc +${PYSITELIB}/attic/__init__.pyo +${PYSITELIB}/attic/_version.py +${PYSITELIB}/attic/_version.pyc +${PYSITELIB}/attic/_version.pyo +${PYSITELIB}/attic/archive.py +${PYSITELIB}/attic/archive.pyc +${PYSITELIB}/attic/archive.pyo +${PYSITELIB}/attic/archiver.py +${PYSITELIB}/attic/archiver.pyc +${PYSITELIB}/attic/archiver.pyo +${PYSITELIB}/attic/cache.py +${PYSITELIB}/attic/cache.pyc +${PYSITELIB}/attic/cache.pyo +${PYSITELIB}/attic/chunker.so +${PYSITELIB}/attic/crypto.so +${PYSITELIB}/attic/fuse.py +${PYSITELIB}/attic/fuse.pyc +${PYSITELIB}/attic/fuse.pyo +${PYSITELIB}/attic/hashindex.so +${PYSITELIB}/attic/helpers.py +${PYSITELIB}/attic/helpers.pyc +${PYSITELIB}/attic/helpers.pyo +${PYSITELIB}/attic/key.py +${PYSITELIB}/attic/key.pyc +${PYSITELIB}/attic/key.pyo +${PYSITELIB}/attic/lrucache.py +${PYSITELIB}/attic/lrucache.pyc +${PYSITELIB}/attic/lrucache.pyo +${PYSITELIB}/attic/platform.py +${PYSITELIB}/attic/platform.pyc +${PYSITELIB}/attic/platform.pyo +${PYSITELIB}/attic/remote.py +${PYSITELIB}/attic/remote.pyc +${PYSITELIB}/attic/remote.pyo +${PYSITELIB}/attic/repository.py +${PYSITELIB}/attic/repository.pyc +${PYSITELIB}/attic/repository.pyo +${PYSITELIB}/attic/testsuite/__init__.py +${PYSITELIB}/attic/testsuite/__init__.pyc +${PYSITELIB}/attic/testsuite/__init__.pyo +${PYSITELIB}/attic/testsuite/archive.py +${PYSITELIB}/attic/testsuite/archive.pyc +${PYSITELIB}/attic/testsuite/archive.pyo +${PYSITELIB}/attic/testsuite/archiver.py +${PYSITELIB}/attic/testsuite/archiver.pyc +${PYSITELIB}/attic/testsuite/archiver.pyo +${PYSITELIB}/attic/testsuite/chunker.py +${PYSITELIB}/attic/testsuite/chunker.pyc +${PYSITELIB}/attic/testsuite/chunker.pyo +${PYSITELIB}/attic/testsuite/crypto.py +${PYSITELIB}/attic/testsuite/crypto.pyc +${PYSITELIB}/attic/testsuite/crypto.pyo +${PYSITELIB}/attic/testsuite/hashindex.py +${PYSITELIB}/attic/testsuite/hashindex.pyc +${PYSITELIB}/attic/testsuite/hashindex.pyo +${PYSITELIB}/attic/testsuite/helpers.py +${PYSITELIB}/attic/testsuite/helpers.pyc +${PYSITELIB}/attic/testsuite/helpers.pyo +${PYSITELIB}/attic/testsuite/key.py +${PYSITELIB}/attic/testsuite/key.pyc +${PYSITELIB}/attic/testsuite/key.pyo +${PYSITELIB}/attic/testsuite/lrucache.py +${PYSITELIB}/attic/testsuite/lrucache.pyc +${PYSITELIB}/attic/testsuite/lrucache.pyo +${PYSITELIB}/attic/testsuite/mock.py +${PYSITELIB}/attic/testsuite/mock.pyc +${PYSITELIB}/attic/testsuite/mock.pyo +${PYSITELIB}/attic/testsuite/platform.py +${PYSITELIB}/attic/testsuite/platform.pyc +${PYSITELIB}/attic/testsuite/platform.pyo +${PYSITELIB}/attic/testsuite/repository.py +${PYSITELIB}/attic/testsuite/repository.pyc +${PYSITELIB}/attic/testsuite/repository.pyo +${PYSITELIB}/attic/testsuite/run.py +${PYSITELIB}/attic/testsuite/run.pyc +${PYSITELIB}/attic/testsuite/run.pyo +${PYSITELIB}/attic/testsuite/xattr.py +${PYSITELIB}/attic/testsuite/xattr.pyc +${PYSITELIB}/attic/testsuite/xattr.pyo +${PYSITELIB}/attic/xattr.py +${PYSITELIB}/attic/xattr.pyc +${PYSITELIB}/attic/xattr.pyo diff --git a/devel/py-attic/distinfo b/devel/py-attic/distinfo new file mode 100644 index 00000000000..7d3b0868eaf --- /dev/null +++ b/devel/py-attic/distinfo @@ -0,0 +1,8 @@ +$NetBSD: distinfo,v 1.1 2015/04/03 09:43:47 wiz Exp $ + +SHA1 (Attic-0.14.tar.gz) = f76df257c86f89eb973f88dba53166997fb8fbf1 +RMD160 (Attic-0.14.tar.gz) = 1fef1993c5964adb1a5c90ef39b101607c2d05b5 +Size (Attic-0.14.tar.gz) = 233837 bytes +SHA1 (patch-attic_platform.py) = 1d8aaf58f1e0edad13a0fbb9a93c092eadc035f4 +SHA1 (patch-attic_testsuite_archiver.py) = 1fb19c1ee64505b2b73d44d556623fe8f8315016 +SHA1 (patch-attic_xattr.py) = 69ea74cef7e9e67398ad4a95a49fcfd2f7b3debe diff --git a/devel/py-attic/patches/patch-attic_platform.py b/devel/py-attic/patches/patch-attic_platform.py new file mode 100644 index 00000000000..02eba3598de --- /dev/null +++ b/devel/py-attic/patches/patch-attic_platform.py @@ -0,0 +1,23 @@ +$NetBSD: patch-attic_platform.py,v 1.1 2015/04/03 09:43:47 wiz Exp $ + +Make xattr support optional. +https://github.com/jborg/attic/pull/235 + +--- attic/platform.py.orig 2014-05-03 13:16:06.000000000 +0000 ++++ attic/platform.py +@@ -9,9 +9,13 @@ elif platform == 'FreeBSD': + elif platform == 'Darwin': + from attic.platform_darwin import acl_get, acl_set, API_VERSION + else: +- API_VERSION = 1 ++ # this is a dummy acl interface for platforms for which we do not have ++ # a real implementation (or which do not support acls at all). + +- def acl_get(path, item, numeric_owner=False): ++ API_VERSION = 2 ++ ++ def acl_get(path, item, st, numeric_owner=False): + pass ++ + def acl_set(path, item, numeric_owner=False): + pass diff --git a/devel/py-attic/patches/patch-attic_testsuite_archiver.py b/devel/py-attic/patches/patch-attic_testsuite_archiver.py new file mode 100644 index 00000000000..d73df679b81 --- /dev/null +++ b/devel/py-attic/patches/patch-attic_testsuite_archiver.py @@ -0,0 +1,24 @@ +$NetBSD: patch-attic_testsuite_archiver.py,v 1.1 2015/04/03 09:43:47 wiz Exp $ + +Make xattr support optional. +https://github.com/jborg/attic/pull/235 + +--- attic/testsuite/archiver.py.orig 2014-10-27 20:54:50.000000000 +0000 ++++ attic/testsuite/archiver.py +@@ -140,9 +140,14 @@ class ArchiverTestCase(ArchiverTestCaseB + os.path.join(self.input_path, 'hardlink')) + # Symlink + os.symlink('somewhere', os.path.join(self.input_path, 'link1')) +- if xattr.is_enabled(): ++ if xattr.is_enabled(self.input_path): + xattr.setxattr(os.path.join(self.input_path, 'file1'), 'user.foo', b'bar') +- xattr.setxattr(os.path.join(self.input_path, 'link1'), 'user.foo_symlink', b'bar_symlink', follow_symlinks=False) ++ # XXX this always fails for me ++ # ubuntu 14.04, on a TMP dir filesystem with user_xattr, using fakeroot ++ # same for newer ubuntu and centos. ++ # if this is supported just on specific platform, platform should be checked first, ++ # so that the test setup for all tests using it does not fail here always for others. ++ #xattr.setxattr(os.path.join(self.input_path, 'link1'), 'user.foo_symlink', b'bar_symlink', follow_symlinks=False) + # FIFO node + os.mkfifo(os.path.join(self.input_path, 'fifo1')) + if has_lchflags: diff --git a/devel/py-attic/patches/patch-attic_xattr.py b/devel/py-attic/patches/patch-attic_xattr.py new file mode 100644 index 00000000000..9699abef0bf --- /dev/null +++ b/devel/py-attic/patches/patch-attic_xattr.py @@ -0,0 +1,36 @@ +$NetBSD: patch-attic_xattr.py,v 1.1 2015/04/03 09:43:47 wiz Exp $ + +Make xattr support optional. +https://github.com/jborg/attic/pull/235 + +--- attic/xattr.py.orig 2014-12-14 13:28:33.000000000 +0000 ++++ attic/xattr.py +@@ -8,10 +8,10 @@ from ctypes import CDLL, create_string_b + from ctypes.util import find_library + + +-def is_enabled(): ++def is_enabled(path=None): + """Determine if xattr is enabled on the filesystem + """ +- with tempfile.NamedTemporaryFile() as fd: ++ with tempfile.NamedTemporaryFile(dir=path) as fd: + try: + setxattr(fd.fileno(), 'user.name', b'value') + except OSError: +@@ -248,4 +248,14 @@ elif sys.platform.startswith('freebsd'): + _check(func(path, EXTATTR_NAMESPACE_USER, name, value, len(value) if value else 0), path) + + else: +- raise Exception('Unsupported platform: %s' % sys.platform) ++ # this is a dummy xattr interface for platforms for which we do not have ++ # a real implementation (or which do not support xattr at all). ++ ++ def listxattr(path, *, follow_symlinks=True): ++ return [] ++ ++ def getxattr(path, name, *, follow_symlinks=True): ++ return ++ ++ def setxattr(path, name, value, *, follow_symlinks=True): ++ return |