diff options
author | wiz <wiz@pkgsrc.org> | 2013-12-31 11:03:12 +0000 |
---|---|---|
committer | wiz <wiz@pkgsrc.org> | 2013-12-31 11:03:12 +0000 |
commit | 514e0e7ea919cbe42d7761e711ab7e0306418013 (patch) | |
tree | a24102c94b95efef8cda6a41b32714a8af45282f | |
parent | 4c40d24a2254904fd05130191b76feb3a2b420d0 (diff) | |
download | pkgsrc-514e0e7ea919cbe42d7761e711ab7e0306418013.tar.gz |
Update to 0.25:
This release includes a veritable ton of work, but the biggest change
is probably the addition of real (YMMV) metadata support, including
hardlinks, and the ability to directly save/restore trees without tar
and split/join. See bup-index(1), bup-save(1), bup-restore(1),
bup-meta(1), bup-xstat(1), and the updated "Using bup" section in the
README.
Note though, that the metadata support really is our first pass, and
there are already things that we know need fixing (i.e. better support
for cross-filesystem-type save/restore (too noisy), etc.). And check
the "Notes on ..." sections in the README for some platform-specific
limitations.
An incomplete list of other notable changes since 0.24b:
- bup will no longer create ~/.bup implicitly; "bup init" is
required.
- "bup split" now supports a compression-level option (-#).
- "bup tag" now supports "-f".
- "bup ls" now supports "-a", "-s", "--human-readable", etc., and
reports more information.
- "bup web" now supports "--human-readable".
- "bup import-rdiff-backup" has been added.
- "bup cat-file" has been added.
- The default "/usr" installation prefix can be overridden via PREFIX.
- Python 2.4 is no longer supported.
And we have at least one (likely minor) known issue:
- *Very* large (i.e. probably greater than MAX_LONG), or negative
filesystem timestamps may not always be handled correctly at the
moment. We'll fix that soon. And related -- some of the tests
may fail on FUSE filesystems.
-rw-r--r-- | sysutils/bup/DESCR | 2 | ||||
-rw-r--r-- | sysutils/bup/Makefile | 51 | ||||
-rw-r--r-- | sysutils/bup/PLIST | 7 | ||||
-rw-r--r-- | sysutils/bup/distinfo | 19 | ||||
-rw-r--r-- | sysutils/bup/patches/patch-Makefile | 20 | ||||
-rw-r--r-- | sysutils/bup/patches/patch-config_configure | 28 | ||||
-rw-r--r-- | sysutils/bup/patches/patch-lib_bup_helpers.py | 27 |
7 files changed, 73 insertions, 81 deletions
diff --git a/sysutils/bup/DESCR b/sysutils/bup/DESCR index 69824b2d487..72ee22c59df 100644 --- a/sysutils/bup/DESCR +++ b/sysutils/bup/DESCR @@ -11,7 +11,7 @@ It uses the packfile format from git (the open source version control system), so you can access the stored data even if you don't like bup's user interface. Unlike git, it writes packfiles directly (instead of having a separate garbage -collection/repacking stage) so it's fast even with gratuitously huge amounts of +collection/repacking stage) so it's fast even with gratuitously huge amounts of data. bup's improved index formats also allow you to track far more filenames than git (millions) and keep track of far more objects (hundreds or thousands of gigabytes). diff --git a/sysutils/bup/Makefile b/sysutils/bup/Makefile index 4074f7313d5..ba620d8a7ed 100644 --- a/sysutils/bup/Makefile +++ b/sysutils/bup/Makefile @@ -1,20 +1,15 @@ -# $NetBSD: Makefile,v 1.11 2013/12/18 23:48:22 wiz Exp $ +# $NetBSD: Makefile,v 1.12 2013/12/31 11:03:12 wiz Exp $ -DISTNAME= bup-0.25rc1 -PKGREVISION= 3 +DISTNAME= bup-0.25 CATEGORIES= sysutils MASTER_SITES= # manually packaged since master site is git repository # and only available via https -# https://github.com/apenwarr/bup/tarball/ +# https://github.com/bup/bup/releases/ # doc tarball: switch to "man" branch before downloading -# latest apenwarr doc tarball is for 0.24b -# bup-man-0.24b.tar.gz -# use lelutin one instead -DISTFILES= ${DISTNAME}${EXTRACT_SUFX} lelutin-bup-7e0bc2e.zip -# ${DISTNAME:S/bup/bup-man/}${EXTRACT_SUFX} +DISTFILES= ${DISTNAME}${EXTRACT_SUFX} ${DISTNAME:S/bup/bup-man/}.zip MAINTAINER= wiz@NetBSD.org -HOMEPAGE= http://github.com/apenwarr/bup +HOMEPAGE= http://github.com/bup/bup COMMENT= Highly efficient file backup system based on the git packfile format LICENSE= gnu-gpl-v2 @@ -22,9 +17,7 @@ DEPENDS+= par2-[0-9]*:../../archivers/par2 DEPENDS+= ${PYPKGPREFIX}-readline-[0-9]*:../../devel/py-readline DEPENDS+= git-base-[0-9]*:../../devel/git-base -# needs changing on each update -DOCDIR= ${WRKDIR}/lelutin-bup-7e0bc2e -WRKSRC= ${WRKDIR}/apenwarr-bup-4525252 +DOCDIR= ${WRKDIR}/bup-man TEST_TARGET= test @@ -32,9 +25,10 @@ MAKE_FLAGS+= PREFIX=${PREFIX} MAKE_FLAGS+= PYTHON=${PYTHONBIN} MAKE_FLAGS+= MANDIR=${DESTDIR}${PREFIX}/${PKGMANDIR} -USE_TOOLS+= gmake perl +USE_TOOLS+= bash gmake perl REPLACE_PERL= format-subst.pl wvtestrun REPLACE_PYTHON+= cmd/bloom-cmd.py +REPLACE_PYTHON+= cmd/cat-file-cmd.py REPLACE_PYTHON+= cmd/daemon-cmd.py REPLACE_PYTHON+= cmd/damage-cmd.py REPLACE_PYTHON+= cmd/drecurse-cmd.py @@ -86,6 +80,35 @@ REPLACE_PYTHON+= lib/tornado/wsgi.py REPLACE_PYTHON+= main.py REPLACE_PYTHON+= wvtest.py +REPLACE_PYTHON+= t/hardlink-sets +REPLACE_PYTHON+= t/id-other-than +REPLACE_PYTHON+= t/mksock +REPLACE_PYTHON+= t/root-status +REPLACE_PYTHON+= t/unknown-owner + +SUBST_CLASSES+= python-c +SUBST_SED.python-c+= -e 's,python -c,${PYTHONBIN} -c,' +SUBST_STAGE.python-c= pre-configure +SUBST_FILES.python-c+= t/lib.sh +SUBST_FILES.python-c+= t/test-meta.sh +SUBST_MESSAGE.python-c= Fixing python executable in tests. + +REPLACE_BASH+= cmd/import-rdiff-backup-cmd.sh +REPLACE_BASH+= t/compare-trees +REPLACE_BASH+= t/configure-sampledata +REPLACE_BASH+= t/force-delete +REPLACE_BASH+= t/subtree-hash +REPLACE_BASH+= t/test-cat-file.sh +REPLACE_BASH+= t/test-command-without-init-fails.sh +REPLACE_BASH+= t/test-index-check-device.sh +REPLACE_BASH+= t/test-meta.sh +REPLACE_BASH+= t/test-redundant-saves.sh +REPLACE_BASH+= t/test-restore-single-file.sh +REPLACE_BASH+= t/test-rm-between-index-and-save.sh +REPLACE_BASH+= t/test-save-creates-no-unrefs.sh +REPLACE_BASH+= t/test.sh +REPLACE_BASH+= wvtest-bup.sh + post-install: ${INSTALL_DATA} ${DOCDIR}/*.1 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1 ${INSTALL_DATA} ${WRKSRC}/DESIGN ${DESTDIR}${PREFIX}/share/doc/bup diff --git a/sysutils/bup/PLIST b/sysutils/bup/PLIST index 0364fe07e1e..e1d75621898 100644 --- a/sysutils/bup/PLIST +++ b/sysutils/bup/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.3 2012/09/04 13:43:15 wiz Exp $ +@comment $NetBSD: PLIST,v 1.4 2013/12/31 11:03:12 wiz Exp $ bin/bup lib/bup/bup/__init__.py lib/bup/bup/_helpers.so @@ -10,6 +10,7 @@ lib/bup/bup/drecurse.py lib/bup/bup/git.py lib/bup/bup/hashsplit.py lib/bup/bup/helpers.py +lib/bup/bup/hlinkdb.py lib/bup/bup/index.py lib/bup/bup/ls.py lib/bup/bup/metadata.py @@ -22,6 +23,7 @@ lib/bup/bup/vfs.py lib/bup/bup/vint.py lib/bup/bup/xstat.py lib/bup/cmd/bup-bloom +lib/bup/cmd/bup-cat-file lib/bup/cmd/bup-daemon lib/bup/cmd/bup-damage lib/bup/cmd/bup-drecurse @@ -29,6 +31,7 @@ lib/bup/cmd/bup-fsck lib/bup/cmd/bup-ftp lib/bup/cmd/bup-fuse lib/bup/cmd/bup-help +lib/bup/cmd/bup-import-rdiff-backup lib/bup/cmd/bup-import-rsnapshot lib/bup/cmd/bup-index lib/bup/cmd/bup-init @@ -74,6 +77,7 @@ lib/bup/tornado/wsgi.py lib/bup/web/list-directory.html lib/bup/web/static/styles.css man/man1/bup-bloom.1 +man/man1/bup-cat-file.1 man/man1/bup-daemon.1 man/man1/bup-damage.1 man/man1/bup-drecurse.1 @@ -81,6 +85,7 @@ man/man1/bup-fsck.1 man/man1/bup-ftp.1 man/man1/bup-fuse.1 man/man1/bup-help.1 +man/man1/bup-import-rdiff-backup.1 man/man1/bup-import-rsnapshot.1 man/man1/bup-index.1 man/man1/bup-init.1 diff --git a/sysutils/bup/distinfo b/sysutils/bup/distinfo index 4d0640f3100..a5d62b9b277 100644 --- a/sysutils/bup/distinfo +++ b/sysutils/bup/distinfo @@ -1,11 +1,10 @@ -$NetBSD: distinfo,v 1.3 2012/09/04 13:43:15 wiz Exp $ +$NetBSD: distinfo,v 1.4 2013/12/31 11:03:12 wiz Exp $ -SHA1 (bup-0.25rc1.tar.gz) = 96760b4cca5b4655cb79caaafd2ce2e70a242a7a -RMD160 (bup-0.25rc1.tar.gz) = 7663ee1f4288fa171ec292ff3e35bc6a9c3d4ec9 -Size (bup-0.25rc1.tar.gz) = 360001 bytes -SHA1 (lelutin-bup-7e0bc2e.zip) = c4908ca4e1f3680089ef8d9bf3b7d1b6a01e0081 -RMD160 (lelutin-bup-7e0bc2e.zip) = 9c2da9481dfc4129ba23f5022d08d62e484bf3e3 -Size (lelutin-bup-7e0bc2e.zip) = 35533 bytes -SHA1 (patch-Makefile) = ad0dbee5a38e769c7941b5f19d91777ac769b13b -SHA1 (patch-config_configure) = 367c611762242e4f56e5ee2f4cea6aed95c62559 -SHA1 (patch-lib_bup_helpers.py) = 894d9ee4b2882876a42f4afd63d82c284231a211 +SHA1 (bup-0.25.tar.gz) = f32ba39582d0e8875632f282c54f7377ed2a4df9 +RMD160 (bup-0.25.tar.gz) = d578dc87330c49090c25a212d6c5fe4561c8ad0c +Size (bup-0.25.tar.gz) = 399332 bytes +SHA1 (bup-man-0.25.zip) = cd76ad005e85aa568d95b9c2938d2716e3b03365 +RMD160 (bup-man-0.25.zip) = 8d023cc394ae006ec1a24924176d72a52208558f +Size (bup-man-0.25.zip) = 40779 bytes +SHA1 (patch-Makefile) = e2e9962ef3bfa7cf73e5fd601ef3c628b07b7e3a +SHA1 (patch-config_configure) = 9360a8be2cef559d93f1a5301f1f397f31da7d72 diff --git a/sysutils/bup/patches/patch-Makefile b/sysutils/bup/patches/patch-Makefile index 17374e36ef8..134f17cb598 100644 --- a/sysutils/bup/patches/patch-Makefile +++ b/sysutils/bup/patches/patch-Makefile @@ -1,13 +1,15 @@ -$NetBSD: patch-Makefile,v 1.3 2012/09/04 13:43:15 wiz Exp $ +$NetBSD: patch-Makefile,v 1.4 2013/12/31 11:03:12 wiz Exp $ -Remove CFLAGS override (set from pkgsrc Makefile). +Pass PYTHON through to configure. ---- Makefile.orig 2011-06-09 03:24:45.000000000 +0000 +--- Makefile.orig 2013-12-04 00:39:47.000000000 +0000 +++ Makefile -@@ -1,5 +1,5 @@ - OS:=$(shell uname | sed 's/[-_].*//') --CFLAGS:=-Wall -O2 -Werror $(PYINCLUDE) -+CFLAGS+=-Wall -O2 -Werror $(PYINCLUDE) - SOEXT:=.so +@@ -67,7 +67,7 @@ install: all - ifeq ($(OS),CYGWIN) + config/config.h: config/Makefile config/configure config/configure.inc \ + $(wildcard config/*.in) +- cd config && $(MAKE) config.h ++ cd config && $(MAKE) PYTHON=$(PYTHON) config.h + + lib/bup/_helpers$(SOEXT): \ + config/config.h \ diff --git a/sysutils/bup/patches/patch-config_configure b/sysutils/bup/patches/patch-config_configure index c6b3c2cdbc8..a2b05d9c07c 100644 --- a/sysutils/bup/patches/patch-config_configure +++ b/sysutils/bup/patches/patch-config_configure @@ -1,25 +1,15 @@ -$NetBSD: patch-config_configure,v 1.1 2012/09/04 13:43:15 wiz Exp $ +$NetBSD: patch-config_configure,v 1.2 2013/12/31 11:03:12 wiz Exp $ -Use PYTHON from environment. -Do not check for utimensat. It is found on NetBSD even though unusable -for now (20120827). +Use PYTHON passed through from Makefile. ---- config/configure.orig 2011-06-09 03:24:45.000000000 +0000 +--- config/configure.orig 2013-11-11 08:52:33.000000000 +0000 +++ config/configure -@@ -30,7 +30,7 @@ expr "$MAKE_VERSION" '>=' '3.81' || AC_F - TLOG " ok" - - TLOGN "checking the python" --PYTHON=`acLookFor python` -+[ -n "$PYTHON" ] || PYTHON=`acLookFor python` - if [ -z "$PYTHON" ]; then - AC_FAIL " Cannot find python"; +@@ -42,7 +42,7 @@ if [ -z "$MAKE_VERSION" ]; then fi -@@ -59,7 +59,6 @@ AC_CHECK_HEADERS unistd.h - AC_CHECK_HEADERS linux/fs.h - AC_CHECK_HEADERS sys/ioctl.h + expr "$MAKE_VERSION" '>=' '3.81' || AC_FAIL "ERROR: $MAKE must be >= version 3.81" --AC_CHECK_FUNCS utimensat - AC_CHECK_FUNCS utimes - AC_CHECK_FUNCS lutimes +-if test -z "$(bup_find_prog python '')"; then ++if test -z "$(bup_find_prog python "$PYTHON")"; then + AC_FAIL "ERROR: unable to find python" + fi diff --git a/sysutils/bup/patches/patch-lib_bup_helpers.py b/sysutils/bup/patches/patch-lib_bup_helpers.py deleted file mode 100644 index 99a460c62f3..00000000000 --- a/sysutils/bup/patches/patch-lib_bup_helpers.py +++ /dev/null @@ -1,27 +0,0 @@ -$NetBSD: patch-lib_bup_helpers.py,v 1.1 2012/09/04 13:43:15 wiz Exp $ - -Survive empty GECOS name fields. -Reported-by: Alper Kanat -Tested-by: Michael Witten -Signed-off-by: Michael Witten ---- - lib/bup/helpers.py | 8 +++++--- - 1 file changed, 5 insertions(+), 3 deletions(-) - ---- lib/bup/helpers.py.orig 2011-06-09 03:24:45.000000000 +0000 -+++ lib/bup/helpers.py -@@ -231,9 +231,11 @@ def userfullname(): - if not _userfullname: - uid = os.getuid() - try: -- _userfullname = pwd.getpwuid(uid)[4].split(',')[0] -- except KeyError: -- _userfullname = 'user%d' % uid -+ entry = pwd.getpwuid(uid) -+ _userfullname = entry[4].split(',')[0] or entry[0] -+ finally: -+ if not _userfullname: -+ _userfullname = 'user %d' % uid - return _userfullname - - |