pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

bup: Rename -git to -snapshot



Module Name:	pkgsrc-wip
Committed By:	Greg Troxel <gdt%lexort.com@localhost>
Pushed By:	gdt
Date:		Thu Jul 9 15:46:38 2026 -0400
Changeset:	baa7a7e68e262a17849f84d5d2a88412dd0390fb

Modified Files:
	Makefile
Added Files:
	bup-snapshot/COMMIT_MSG
	bup-snapshot/DESCR
	bup-snapshot/Makefile
	bup-snapshot/PLIST
	bup-snapshot/distinfo
	bup-snapshot/options.mk
	bup-snapshot/patches/patch-lib_bup___helpers.c
Removed Files:
	bup-git/COMMIT_MSG
	bup-git/DESCR
	bup-git/Makefile
	bup-git/PLIST
	bup-git/distinfo
	bup-git/options.mk
	bup-git/patches/patch-lib_bup___helpers.c

Log Message:
bup: Rename -git to -snapshot

My opinion is that the point is not that bup is developed in git but
that the package is a snapshot of development rather than a release.

That's my story and I'm sticking with it at least all day today!  But
seriously, it seems like a good plan in general.

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=baa7a7e68e262a17849f84d5d2a88412dd0390fb

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Makefile                                       |   2 +-
 bup-git/COMMIT_MSG                             |   3 -
 bup-git/DESCR                                  |  24 ----
 bup-git/Makefile                               | 163 -------------------------
 bup-git/PLIST                                  | 128 -------------------
 bup-git/distinfo                               |   9 --
 bup-git/options.mk                             |  17 ---
 bup-git/patches/patch-lib_bup___helpers.c      |  24 ----
 bup-snapshot/COMMIT_MSG                        |   3 +
 bup-snapshot/DESCR                             |  24 ++++
 bup-snapshot/Makefile                          | 163 +++++++++++++++++++++++++
 bup-snapshot/PLIST                             | 128 +++++++++++++++++++
 bup-snapshot/distinfo                          |   9 ++
 bup-snapshot/options.mk                        |  17 +++
 bup-snapshot/patches/patch-lib_bup___helpers.c |  24 ++++
 15 files changed, 369 insertions(+), 369 deletions(-)

diffs:
diff --git a/Makefile b/Makefile
index 0afe09324d..afc190c02e 100644
--- a/Makefile
+++ b/Makefile
@@ -410,7 +410,7 @@ SUBDIR+=	bugsx
 SUBDIR+=	bugzilla
 SUBDIR+=	bulk-test-llvm
 SUBDIR+=	bun
-SUBDIR+=	bup-git
+SUBDIR+=	bup-snapshot
 SUBDIR+=	bupstash
 SUBDIR+=	busybox
 SUBDIR+=	bwa
diff --git a/bup-git/COMMIT_MSG b/bup-git/COMMIT_MSG
deleted file mode 100644
index 4a5ddf78ae..0000000000
--- a/bup-git/COMMIT_MSG
+++ /dev/null
@@ -1,3 +0,0 @@
-sysutils/bup: Update to 0.34
-
-[Steal from notes/0.34-from-?]
diff --git a/bup-git/DESCR b/bup-git/DESCR
deleted file mode 100644
index a02f4eda1f..0000000000
--- a/bup-git/DESCR
+++ /dev/null
@@ -1,24 +0,0 @@
-bup is a program that backs things up.  bup has a few advantages over other
-backup software:
-
-It uses a rolling checksum algorithm (similar to rsync) to split large files
-into chunks. The most useful result of this is you can backup huge virtual
-machine (VM) disk images, databases, and XML files incrementally, even though
-they're typically all in one huge file, and not use tons of disk space for
-multiple versions.
-
-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
-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).
-
-Data is "automagically" shared between incremental backups without having to
-know which backup is based on which other one - even if the backups are made
-from two different computers that don't even know about each other. You just
-tell bup to back stuff up, and it saves only the minimum amount of data needed.
-
-This package tracks bup's master branch from git.  It exists for
-testing and is not recommended for production use.
diff --git a/bup-git/Makefile b/bup-git/Makefile
deleted file mode 100644
index 54d6d844d6..0000000000
--- a/bup-git/Makefile
+++ /dev/null
@@ -1,163 +0,0 @@
-# $NetBSD: Makefile,v 1.75 2026/01/29 00:35:05 gdt Exp $
-
-DISTNAME=	bup-0.33.51.872
-CATEGORIES=	sysutils
-MASTER_SITES=	${MASTER_SITE_GITHUB:=bup/}
-GITHUB_TAG=	1b4976f9fc100f12b8b1a34d1a7e96e5fcdd4116
-# bup has two problems that make packaging difficult.  One is that
-# building man pages requires non-portable tools (pandoc).  The other
-# is that it is hosted on github, which makes hosting tarballs
-# difficult.  The combination of this leads to having a branch "man"
-# in bup's git which has autogenerated man pages.  The third problem
-# is that github.mk assumes that there is one distfile.
-
-# Upstream should have a tag for built man pages, but doesn't.
-# EXTRACT_SUFX default value is set too late, so using it in SITES.* fails.
-EXTRACT_SUFX=		.tar.gz
-MAN_TAG=		26d961455dc071f166a3f6f54e6ceb0b71cf2524
-MAN_UNPACK=		bup-${MAN_TAG}
-MAN_DISTFILE=		bup-man-${MAN_TAG}${EXTRACT_SUFX}
-SITES.${MAN_DISTFILE}=	-${MASTER_SITE_GITHUB:=bup/bup/archive/}${MAN_TAG}${EXTRACT_SUFX}
-# Upstream provides html, but we choose not to include it in the package.
-#HTML_TAG=		66eccb7eb49575d006d193276018d9551ac5b4d4
-DISTFILES=		${DEFAULT_DISTFILES} ${MAN_DISTFILE}
-
-MAINTAINER=	gdt%NetBSD.org@localhost
-HOMEPAGE=	https://github.com/bup/bup
-COMMENT=	Highly efficient file backup system based on the git packfile format
-LICENSE=	gnu-gpl-v2
-
-USE_LANGUAGES=	c
-USE_TOOLS+=	bash gmake perl:run
-HAS_CONFIGURE=	yes
-CONFIG_SHELL=	bash
-
-# On macOS 10.13, building bup fails with defaults but builds with
-# USE_CWRAPPERS=no.   The error is
-#   Looking for cpp (/path/to/pkgsrc/sysutils/bup/work/.cwrapper/bin/cpp) (can't run cpp as a pipeline)
-
-DEPENDS+=	par2-[0-9]*:../../archivers/par2
-DEPENDS+=	${PYPKGPREFIX}-tornado-[0-9]*:../../www/py-tornado
-DEPENDS+=	git-base-[0-9]*:../../devel/git-base
-TEST_DEPENDS+=	${PYPKGPREFIX}-test-[0-9]*:../../devel/py-test
-TEST_DEPENDS+=	${PYPKGPREFIX}-test-xdist-[0-9]*:../../devel/py-test-xdist
-TEST_DEPENDS+=	rsync-[0-9]*:../../net/rsync
-TEST_DEPENDS+=	rdiff-backup-[0-9]*:../../sysutils/rdiff-backup
-
-DIST_MANPAGES=		${WRKDIR}/${MAN_UNPACK}
-
-ALL_ENV+=	BUP_PYTHON_CONFIG=${PREFIX}/bin/python${PYVERSSUFFIX}-config
-
-MAKE_FILE=	GNUmakefile
-MAKE_FLAGS+=	PREFIX=${PREFIX}
-MAKE_FLAGS+=	PYTHON=${PYTHONBIN}
-MAKE_FLAGS+=	MANDIR=${DESTDIR}${PREFIX}/${PKGMANDIR}
-
-# Even if converters/pandoc is installed, pretend as if it isn't
-MAKE_FLAGS+=	PANDOC=
-
-# find work/ -type f |xargs egrep 'env.*bash'|awk -F: '{print $1}' | sed -e s,work/bup-5f9cf697b3daa3d4d6899f9366ebc1fd64161a32/,,
-# and merge to the list
-REPLACE_BASH+=		configure
-REPLACE_BASH+=		dev/checksum
-REPLACE_BASH+=		dev/compare-trees
-REPLACE_BASH+=		dev/configure-sampledata
-REPLACE_BASH+=		dev/force-delete
-REPLACE_BASH+=		dev/git-cat-tree
-REPLACE_BASH+=		dev/path-fs
-REPLACE_BASH+=		dev/perf-glance
-REPLACE_BASH+=		dev/prep-for-debianish-build
-REPLACE_BASH+=		dev/prep-for-macos-build
-REPLACE_BASH+=		dev/refresh
-REPLACE_BASH+=		dev/sync-tree
-REPLACE_BASH+=		dev/system-info
-REPLACE_BASH+=		dev/update-checkout-info
-REPLACE_BASH+=		dev/update-doc-branches
-REPLACE_BASH+=		dev/validate-python
-REPLACE_BASH+=		dev/with-tty
-REPLACE_BASH+=		lib/cmd/bup-import-rdiff-backup
-REPLACE_BASH+=		pylint
-REPLACE_BASH+=		test/ext/test-btl
-REPLACE_BASH+=		test/ext/test-cat-file
-REPLACE_BASH+=		test/ext/test-comparative-split-join
-REPLACE_BASH+=		test/ext/test-compression
-REPLACE_BASH+=		test/ext/test-drecurse
-REPLACE_BASH+=		test/ext/test-empty-metadata
-REPLACE_BASH+=		test/ext/test-fsck
-REPLACE_BASH+=		test/ext/test-fuse
-REPLACE_BASH+=		test/ext/test-gc
-REPLACE_BASH+=		test/ext/test-gc-removes-incomplete-trees
-REPLACE_BASH+=		test/ext/test-get-excludes
-REPLACE_BASH+=		test/ext/test-get-missing
-REPLACE_BASH+=		test/ext/test-get-repair-bupm
-REPLACE_BASH+=		test/ext/test-get-repair-symlinks
-REPLACE_BASH+=		test/ext/test-get-rewrite-missing
-REPLACE_BASH+=		test/ext/test-help
-REPLACE_BASH+=		test/ext/test-import-duplicity
-REPLACE_BASH+=		test/ext/test-import-rdiff-backup
-REPLACE_BASH+=		test/ext/test-index
-REPLACE_BASH+=		test/ext/test-index-check-device
-REPLACE_BASH+=		test/ext/test-index-clear
-REPLACE_BASH+=		test/ext/test-index-save-type-change
-REPLACE_BASH+=		test/ext/test-init
-REPLACE_BASH+=		test/ext/test-install
-REPLACE_BASH+=		test/ext/test-list-idx
-REPLACE_BASH+=		test/ext/test-ls
-REPLACE_BASH+=		test/ext/test-ls-remote
-REPLACE_BASH+=		test/ext/test-main
-REPLACE_BASH+=		test/ext/test-meta
-REPLACE_BASH+=		test/ext/test-meta-acls
-REPLACE_BASH+=		test/ext/test-misc
-REPLACE_BASH+=		test/ext/test-on
-REPLACE_BASH+=		test/ext/test-packsizelimit
-REPLACE_BASH+=		test/ext/test-redundant-saves
-REPLACE_BASH+=		test/ext/test-restore-map-owner
-REPLACE_BASH+=		test/ext/test-restore-single-file
-REPLACE_BASH+=		test/ext/test-rewrite
-REPLACE_BASH+=		test/ext/test-rm
-REPLACE_BASH+=		test/ext/test-rm-between-index-and-save
-REPLACE_BASH+=		test/ext/test-save-creates-no-unrefs
-REPLACE_BASH+=		test/ext/test-save-data-race
-REPLACE_BASH+=		test/ext/test-save-errors
-REPLACE_BASH+=		test/ext/test-save-restore
-REPLACE_BASH+=		test/ext/test-save-restore-excludes
-REPLACE_BASH+=		test/ext/test-save-smaller
-REPLACE_BASH+=		test/ext/test-save-strip-graft
-REPLACE_BASH+=		test/ext/test-save-symlink-race
-REPLACE_BASH+=		test/ext/test-save-with-valid-parent
-REPLACE_BASH+=		test/ext/test-sparse-files
-REPLACE_BASH+=		test/ext/test-split-files-config
-REPLACE_BASH+=		test/ext/test-split-join
-REPLACE_BASH+=		test/ext/test-tag
-REPLACE_BASH+=		test/ext/test-treesplit
-REPLACE_BASH+=		test/ext/test-tz
-REPLACE_BASH+=		test/ext/test-validate-object-links
-REPLACE_BASH+=		test/ext/test-validate-ref-links
-REPLACE_BASH+=		test/ext/test-validate-refs
-REPLACE_BASH+=		test/ext/test-versioning-and-archive
-REPLACE_BASH+=		test/ext/test-walk-object-order
-REPLACE_BASH+=		test/ext/test-web
-REPLACE_BASH+=		test/ext/test-xdev
-
-DOCDIR=			share/doc/${PKGBASE}
-
-INSTALLATION_DIRS+=	${PKGMANDIR}/man1 ${DOCDIR}
-
-post-install:
-	${INSTALL_DATA} ${DIST_MANPAGES}/*.1 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1
-	${INSTALL_DATA} ${WRKSRC}/DESIGN.md ${DESTDIR}${PREFIX}/${DOCDIR}
-	${INSTALL_DATA} ${WRKSRC}/README.md ${DESTDIR}${PREFIX}/${DOCDIR}
-
-.include "options.mk"
-
-# Note that tests 1) will fail on a fs mounted noatime, 2) need a lot
-# of space, perhaps 1 GB, and 3) can fail with test data at the DST
-# boundary because of what I believe is a bug in NetBSD libc.
-TEST_TARGET=	test
-# \todo Pass MAKE_JOBS into "gmake test" via -j.
-TEST_ENV+=	TZ=UTC
-
-# \todo Investigate "bup ftp" crash with NetBSD editline and resolve.
-.include "../../devel/readline/buildlink3.mk"
-.include "../../lang/python/application.mk"
-.include "../../mk/bsd.pkg.mk"
diff --git a/bup-git/PLIST b/bup-git/PLIST
deleted file mode 100644
index c0066572d9..0000000000
--- a/bup-git/PLIST
+++ /dev/null
@@ -1,128 +0,0 @@
-@comment $NetBSD: PLIST,v 1.14 2025/01/03 00:38:38 gdt Exp $
-bin/bup
-lib/bup/bup/__init__.py
-lib/bup/bup/_helpers.so
-lib/bup/bup/bloom.py
-lib/bup/bup/client.py
-lib/bup/bup/cmd/__init__.py
-lib/bup/bup/cmd/bloom.py
-lib/bup/bup/cmd/cat_file.py
-lib/bup/bup/cmd/daemon.py
-lib/bup/bup/cmd/damage.py
-lib/bup/bup/cmd/demux.py
-lib/bup/bup/cmd/drecurse.py
-lib/bup/bup/cmd/features.py
-lib/bup/bup/cmd/fsck.py
-lib/bup/bup/cmd/ftp.py
-lib/bup/bup/cmd/fuse.py
-lib/bup/bup/cmd/gc.py
-lib/bup/bup/cmd/get.py
-lib/bup/bup/cmd/help.py
-lib/bup/bup/cmd/import_duplicity.py
-lib/bup/bup/cmd/index.py
-lib/bup/bup/cmd/init.py
-lib/bup/bup/cmd/join.py
-lib/bup/bup/cmd/list_idx.py
-lib/bup/bup/cmd/ls.py
-lib/bup/bup/cmd/margin.py
-lib/bup/bup/cmd/memtest.py
-lib/bup/bup/cmd/meta.py
-lib/bup/bup/cmd/midx.py
-lib/bup/bup/cmd/mux.py
-lib/bup/bup/cmd/on.py
-lib/bup/bup/cmd/on__server.py
-lib/bup/bup/cmd/prune_older.py
-lib/bup/bup/cmd/random.py
-lib/bup/bup/cmd/restore.py
-lib/bup/bup/cmd/rm.py
-lib/bup/bup/cmd/save.py
-lib/bup/bup/cmd/server.py
-lib/bup/bup/cmd/split.py
-lib/bup/bup/cmd/tag.py
-lib/bup/bup/cmd/tick.py
-lib/bup/bup/cmd/validate_object_links.py
-lib/bup/bup/cmd/validate_ref_links.py
-lib/bup/bup/cmd/validate_refs.py
-lib/bup/bup/cmd/version.py
-lib/bup/bup/cmd/web.py
-lib/bup/bup/cmd/xstat.py
-lib/bup/bup/commit.py
-lib/bup/bup/compat.py
-lib/bup/bup/config.py
-lib/bup/bup/drecurse.py
-lib/bup/bup/gc.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/io.py
-lib/bup/bup/ls.py
-lib/bup/bup/main.py
-lib/bup/bup/metadata.py
-lib/bup/bup/midx.py
-lib/bup/bup/options.py
-lib/bup/bup/path.py
-lib/bup/bup/protocol.py
-lib/bup/bup/pwdgrp.py
-lib/bup/bup/repair.py
-lib/bup/bup/repo/__init__.py
-lib/bup/bup/repo/base.py
-lib/bup/bup/repo/local.py
-lib/bup/bup/repo/remote.py
-lib/bup/bup/rewrite.py
-lib/bup/bup/rm.py
-lib/bup/bup/shquote.py
-lib/bup/bup/source_info.py
-lib/bup/bup/ssh.py
-lib/bup/bup/tree.py
-lib/bup/bup/url.py
-lib/bup/bup/version.py
-lib/bup/bup/vfs.py
-lib/bup/bup/vint.py
-lib/bup/bup/xstat.py
-lib/bup/cmd/bup
-lib/bup/cmd/bup-import-rdiff-backup
-lib/bup/cmd/bup-import-rsnapshot
-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
-man/man1/bup-features.1
-man/man1/bup-fsck.1
-man/man1/bup-ftp.1
-man/man1/bup-fuse.1
-man/man1/bup-gc.1
-man/man1/bup-get.1
-man/man1/bup-help.1
-man/man1/bup-import-duplicity.1
-man/man1/bup-import-rdiff-backup.1
-man/man1/bup-import-rsnapshot.1
-man/man1/bup-index.1
-man/man1/bup-init.1
-man/man1/bup-join.1
-man/man1/bup-ls.1
-man/man1/bup-margin.1
-man/man1/bup-memtest.1
-man/man1/bup-meta.1
-man/man1/bup-midx.1
-man/man1/bup-mux.1
-man/man1/bup-on.1
-man/man1/bup-prune-older.1
-man/man1/bup-random.1
-man/man1/bup-restore.1
-man/man1/bup-rm.1
-man/man1/bup-save.1
-man/man1/bup-server.1
-man/man1/bup-split.1
-man/man1/bup-tag.1
-man/man1/bup-tick.1
-man/man1/bup-validate-object-links.1
-man/man1/bup-validate-ref-links.1
-man/man1/bup-web.1
-man/man1/bup.1
-share/doc/bup/DESIGN.md
-share/doc/bup/README.md
diff --git a/bup-git/distinfo b/bup-git/distinfo
deleted file mode 100644
index 7b4b88ec5e..0000000000
--- a/bup-git/distinfo
+++ /dev/null
@@ -1,9 +0,0 @@
-$NetBSD: distinfo,v 1.33 2026/01/29 00:35:05 gdt Exp $
-
-BLAKE2s (bup-0.33.51.872-1b4976f9fc100f12b8b1a34d1a7e96e5fcdd4116.tar.gz) = 8a89a6bc73817ac814e101b15c52edafd27843070fa654893fb2df3845034045
-SHA512 (bup-0.33.51.872-1b4976f9fc100f12b8b1a34d1a7e96e5fcdd4116.tar.gz) = 294e5e9f9518d01bde13cb9072656e9e5802f2d32c33aa521eb885a0410b3aa212b856efeef99c346db717036d2bda09bb9be6ed86b5937322bf2eb29496f56e
-Size (bup-0.33.51.872-1b4976f9fc100f12b8b1a34d1a7e96e5fcdd4116.tar.gz) = 651813 bytes
-BLAKE2s (bup-man-26d961455dc071f166a3f6f54e6ceb0b71cf2524.tar.gz) = 8c4037e8e8e226fa0f23e4f7deb8c06ca43c6514416bb32fd66ec3a3a1b1fca5
-SHA512 (bup-man-26d961455dc071f166a3f6f54e6ceb0b71cf2524.tar.gz) = c0a9ba7d3a3a752bc4a993b9da5745959e17a523bf59d42d47dc7e2df30eb8804a3feaf9ae9f768d417d2fc0d6918c4991cfc89353b08cac56c75f5c254f03c3
-Size (bup-man-26d961455dc071f166a3f6f54e6ceb0b71cf2524.tar.gz) = 34265 bytes
-SHA1 (patch-lib_bup___helpers.c) = 2d0d70118858e9765fb5663a54f899c9084bf51a
diff --git a/bup-git/options.mk b/bup-git/options.mk
deleted file mode 100644
index dac6b9b4c2..0000000000
--- a/bup-git/options.mk
+++ /dev/null
@@ -1,17 +0,0 @@
-# $NetBSD: options.mk,v 1.2 2019/11/19 15:01:25 gdt Exp $
-
-PKG_OPTIONS_VAR=	PKG_OPTIONS.bup
-PKG_SUPPORTED_OPTIONS=	fuse
-# fuse is disabled by default because it doesn't build on Mac, and
-# because the fuse implementation in bup doesn't work on NetBSD.
-# After it's fixed upstream, an OS-specific default is probably
-# appropriate.
-PKG_SUGGESTED_OPTIONS=
-
-.include "../../mk/bsd.prefs.mk"
-
-.include "../../mk/bsd.options.mk"
-
-.if !empty(PKG_OPTIONS:Mfuse)
-.include "../../filesystems/py-fuse-bindings/buildlink3.mk"
-.endif
diff --git a/bup-git/patches/patch-lib_bup___helpers.c b/bup-git/patches/patch-lib_bup___helpers.c
deleted file mode 100644
index 6ecbfd6948..0000000000
--- a/bup-git/patches/patch-lib_bup___helpers.c
+++ /dev/null
@@ -1,24 +0,0 @@
-$NetBSD: patch-lib_bup___helpers.c,v 1.4 2025/12/17 23:46:21 nia Exp $
-
-If OS does not define htonll as a macro, avoid colliding with it.
-
---- lib/bup/_helpers.c.orig	2025-12-17 14:20:36.236008733 +0000
-+++ lib/bup/_helpers.c
-@@ -137,7 +137,7 @@ static void *checked_malloc(size_t n, size_t size)
- // This function should technically be macro'd out if it's going to be used
- // more than ocasionally.  As of this writing, it'll actually never be called
- // in real world bup scenarios (because our packs are < MAX_INT bytes).
--static uint64_t htonll(uint64_t value)
-+static uint64_t my_htonll(uint64_t value)
- {
-     static const int endian_test = 42;
- 
-@@ -145,6 +145,8 @@ static uint64_t htonll(uint64_t value)
- 	return ((uint64_t)htonl(value & 0xFFFFFFFF) << 32) | htonl(value >> 32);
-     return value; // already in network byte order MSB-LSB
- }
-+
-+#define htonll my_htonll
- #endif
- 
- #define INTEGRAL_ASSIGNMENT_FITS(dest, src) INT_ADD_OK(src, 0, dest)
diff --git a/bup-snapshot/COMMIT_MSG b/bup-snapshot/COMMIT_MSG
new file mode 100644
index 0000000000..4a5ddf78ae
--- /dev/null
+++ b/bup-snapshot/COMMIT_MSG
@@ -0,0 +1,3 @@
+sysutils/bup: Update to 0.34
+
+[Steal from notes/0.34-from-?]
diff --git a/bup-snapshot/DESCR b/bup-snapshot/DESCR
new file mode 100644
index 0000000000..a02f4eda1f
--- /dev/null
+++ b/bup-snapshot/DESCR
@@ -0,0 +1,24 @@
+bup is a program that backs things up.  bup has a few advantages over other
+backup software:
+
+It uses a rolling checksum algorithm (similar to rsync) to split large files
+into chunks. The most useful result of this is you can backup huge virtual
+machine (VM) disk images, databases, and XML files incrementally, even though
+they're typically all in one huge file, and not use tons of disk space for
+multiple versions.
+
+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
+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).
+
+Data is "automagically" shared between incremental backups without having to
+know which backup is based on which other one - even if the backups are made
+from two different computers that don't even know about each other. You just
+tell bup to back stuff up, and it saves only the minimum amount of data needed.
+
+This package tracks bup's master branch from git.  It exists for
+testing and is not recommended for production use.
diff --git a/bup-snapshot/Makefile b/bup-snapshot/Makefile
new file mode 100644
index 0000000000..54d6d844d6
--- /dev/null
+++ b/bup-snapshot/Makefile
@@ -0,0 +1,163 @@
+# $NetBSD: Makefile,v 1.75 2026/01/29 00:35:05 gdt Exp $
+
+DISTNAME=	bup-0.33.51.872
+CATEGORIES=	sysutils
+MASTER_SITES=	${MASTER_SITE_GITHUB:=bup/}
+GITHUB_TAG=	1b4976f9fc100f12b8b1a34d1a7e96e5fcdd4116
+# bup has two problems that make packaging difficult.  One is that
+# building man pages requires non-portable tools (pandoc).  The other
+# is that it is hosted on github, which makes hosting tarballs
+# difficult.  The combination of this leads to having a branch "man"
+# in bup's git which has autogenerated man pages.  The third problem
+# is that github.mk assumes that there is one distfile.
+
+# Upstream should have a tag for built man pages, but doesn't.
+# EXTRACT_SUFX default value is set too late, so using it in SITES.* fails.
+EXTRACT_SUFX=		.tar.gz
+MAN_TAG=		26d961455dc071f166a3f6f54e6ceb0b71cf2524
+MAN_UNPACK=		bup-${MAN_TAG}
+MAN_DISTFILE=		bup-man-${MAN_TAG}${EXTRACT_SUFX}
+SITES.${MAN_DISTFILE}=	-${MASTER_SITE_GITHUB:=bup/bup/archive/}${MAN_TAG}${EXTRACT_SUFX}
+# Upstream provides html, but we choose not to include it in the package.
+#HTML_TAG=		66eccb7eb49575d006d193276018d9551ac5b4d4
+DISTFILES=		${DEFAULT_DISTFILES} ${MAN_DISTFILE}
+
+MAINTAINER=	gdt%NetBSD.org@localhost
+HOMEPAGE=	https://github.com/bup/bup
+COMMENT=	Highly efficient file backup system based on the git packfile format
+LICENSE=	gnu-gpl-v2
+
+USE_LANGUAGES=	c
+USE_TOOLS+=	bash gmake perl:run
+HAS_CONFIGURE=	yes
+CONFIG_SHELL=	bash
+
+# On macOS 10.13, building bup fails with defaults but builds with
+# USE_CWRAPPERS=no.   The error is
+#   Looking for cpp (/path/to/pkgsrc/sysutils/bup/work/.cwrapper/bin/cpp) (can't run cpp as a pipeline)
+
+DEPENDS+=	par2-[0-9]*:../../archivers/par2
+DEPENDS+=	${PYPKGPREFIX}-tornado-[0-9]*:../../www/py-tornado
+DEPENDS+=	git-base-[0-9]*:../../devel/git-base
+TEST_DEPENDS+=	${PYPKGPREFIX}-test-[0-9]*:../../devel/py-test
+TEST_DEPENDS+=	${PYPKGPREFIX}-test-xdist-[0-9]*:../../devel/py-test-xdist
+TEST_DEPENDS+=	rsync-[0-9]*:../../net/rsync
+TEST_DEPENDS+=	rdiff-backup-[0-9]*:../../sysutils/rdiff-backup
+
+DIST_MANPAGES=		${WRKDIR}/${MAN_UNPACK}
+
+ALL_ENV+=	BUP_PYTHON_CONFIG=${PREFIX}/bin/python${PYVERSSUFFIX}-config
+
+MAKE_FILE=	GNUmakefile
+MAKE_FLAGS+=	PREFIX=${PREFIX}
+MAKE_FLAGS+=	PYTHON=${PYTHONBIN}
+MAKE_FLAGS+=	MANDIR=${DESTDIR}${PREFIX}/${PKGMANDIR}
+
+# Even if converters/pandoc is installed, pretend as if it isn't
+MAKE_FLAGS+=	PANDOC=
+
+# find work/ -type f |xargs egrep 'env.*bash'|awk -F: '{print $1}' | sed -e s,work/bup-5f9cf697b3daa3d4d6899f9366ebc1fd64161a32/,,
+# and merge to the list
+REPLACE_BASH+=		configure
+REPLACE_BASH+=		dev/checksum
+REPLACE_BASH+=		dev/compare-trees
+REPLACE_BASH+=		dev/configure-sampledata
+REPLACE_BASH+=		dev/force-delete
+REPLACE_BASH+=		dev/git-cat-tree
+REPLACE_BASH+=		dev/path-fs
+REPLACE_BASH+=		dev/perf-glance
+REPLACE_BASH+=		dev/prep-for-debianish-build
+REPLACE_BASH+=		dev/prep-for-macos-build
+REPLACE_BASH+=		dev/refresh
+REPLACE_BASH+=		dev/sync-tree
+REPLACE_BASH+=		dev/system-info
+REPLACE_BASH+=		dev/update-checkout-info
+REPLACE_BASH+=		dev/update-doc-branches
+REPLACE_BASH+=		dev/validate-python
+REPLACE_BASH+=		dev/with-tty
+REPLACE_BASH+=		lib/cmd/bup-import-rdiff-backup
+REPLACE_BASH+=		pylint
+REPLACE_BASH+=		test/ext/test-btl
+REPLACE_BASH+=		test/ext/test-cat-file
+REPLACE_BASH+=		test/ext/test-comparative-split-join
+REPLACE_BASH+=		test/ext/test-compression
+REPLACE_BASH+=		test/ext/test-drecurse
+REPLACE_BASH+=		test/ext/test-empty-metadata
+REPLACE_BASH+=		test/ext/test-fsck
+REPLACE_BASH+=		test/ext/test-fuse
+REPLACE_BASH+=		test/ext/test-gc
+REPLACE_BASH+=		test/ext/test-gc-removes-incomplete-trees
+REPLACE_BASH+=		test/ext/test-get-excludes
+REPLACE_BASH+=		test/ext/test-get-missing
+REPLACE_BASH+=		test/ext/test-get-repair-bupm
+REPLACE_BASH+=		test/ext/test-get-repair-symlinks
+REPLACE_BASH+=		test/ext/test-get-rewrite-missing
+REPLACE_BASH+=		test/ext/test-help
+REPLACE_BASH+=		test/ext/test-import-duplicity
+REPLACE_BASH+=		test/ext/test-import-rdiff-backup
+REPLACE_BASH+=		test/ext/test-index
+REPLACE_BASH+=		test/ext/test-index-check-device
+REPLACE_BASH+=		test/ext/test-index-clear
+REPLACE_BASH+=		test/ext/test-index-save-type-change
+REPLACE_BASH+=		test/ext/test-init
+REPLACE_BASH+=		test/ext/test-install
+REPLACE_BASH+=		test/ext/test-list-idx
+REPLACE_BASH+=		test/ext/test-ls
+REPLACE_BASH+=		test/ext/test-ls-remote
+REPLACE_BASH+=		test/ext/test-main
+REPLACE_BASH+=		test/ext/test-meta
+REPLACE_BASH+=		test/ext/test-meta-acls
+REPLACE_BASH+=		test/ext/test-misc
+REPLACE_BASH+=		test/ext/test-on
+REPLACE_BASH+=		test/ext/test-packsizelimit
+REPLACE_BASH+=		test/ext/test-redundant-saves
+REPLACE_BASH+=		test/ext/test-restore-map-owner
+REPLACE_BASH+=		test/ext/test-restore-single-file
+REPLACE_BASH+=		test/ext/test-rewrite
+REPLACE_BASH+=		test/ext/test-rm
+REPLACE_BASH+=		test/ext/test-rm-between-index-and-save
+REPLACE_BASH+=		test/ext/test-save-creates-no-unrefs
+REPLACE_BASH+=		test/ext/test-save-data-race
+REPLACE_BASH+=		test/ext/test-save-errors
+REPLACE_BASH+=		test/ext/test-save-restore
+REPLACE_BASH+=		test/ext/test-save-restore-excludes
+REPLACE_BASH+=		test/ext/test-save-smaller
+REPLACE_BASH+=		test/ext/test-save-strip-graft
+REPLACE_BASH+=		test/ext/test-save-symlink-race
+REPLACE_BASH+=		test/ext/test-save-with-valid-parent
+REPLACE_BASH+=		test/ext/test-sparse-files
+REPLACE_BASH+=		test/ext/test-split-files-config
+REPLACE_BASH+=		test/ext/test-split-join
+REPLACE_BASH+=		test/ext/test-tag
+REPLACE_BASH+=		test/ext/test-treesplit
+REPLACE_BASH+=		test/ext/test-tz
+REPLACE_BASH+=		test/ext/test-validate-object-links
+REPLACE_BASH+=		test/ext/test-validate-ref-links
+REPLACE_BASH+=		test/ext/test-validate-refs
+REPLACE_BASH+=		test/ext/test-versioning-and-archive
+REPLACE_BASH+=		test/ext/test-walk-object-order
+REPLACE_BASH+=		test/ext/test-web
+REPLACE_BASH+=		test/ext/test-xdev
+
+DOCDIR=			share/doc/${PKGBASE}
+
+INSTALLATION_DIRS+=	${PKGMANDIR}/man1 ${DOCDIR}
+
+post-install:
+	${INSTALL_DATA} ${DIST_MANPAGES}/*.1 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1
+	${INSTALL_DATA} ${WRKSRC}/DESIGN.md ${DESTDIR}${PREFIX}/${DOCDIR}
+	${INSTALL_DATA} ${WRKSRC}/README.md ${DESTDIR}${PREFIX}/${DOCDIR}
+
+.include "options.mk"
+
+# Note that tests 1) will fail on a fs mounted noatime, 2) need a lot
+# of space, perhaps 1 GB, and 3) can fail with test data at the DST
+# boundary because of what I believe is a bug in NetBSD libc.
+TEST_TARGET=	test
+# \todo Pass MAKE_JOBS into "gmake test" via -j.
+TEST_ENV+=	TZ=UTC
+
+# \todo Investigate "bup ftp" crash with NetBSD editline and resolve.
+.include "../../devel/readline/buildlink3.mk"
+.include "../../lang/python/application.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/bup-snapshot/PLIST b/bup-snapshot/PLIST
new file mode 100644
index 0000000000..c0066572d9
--- /dev/null
+++ b/bup-snapshot/PLIST
@@ -0,0 +1,128 @@
+@comment $NetBSD: PLIST,v 1.14 2025/01/03 00:38:38 gdt Exp $
+bin/bup
+lib/bup/bup/__init__.py
+lib/bup/bup/_helpers.so
+lib/bup/bup/bloom.py
+lib/bup/bup/client.py
+lib/bup/bup/cmd/__init__.py
+lib/bup/bup/cmd/bloom.py
+lib/bup/bup/cmd/cat_file.py
+lib/bup/bup/cmd/daemon.py
+lib/bup/bup/cmd/damage.py
+lib/bup/bup/cmd/demux.py
+lib/bup/bup/cmd/drecurse.py
+lib/bup/bup/cmd/features.py
+lib/bup/bup/cmd/fsck.py
+lib/bup/bup/cmd/ftp.py
+lib/bup/bup/cmd/fuse.py
+lib/bup/bup/cmd/gc.py
+lib/bup/bup/cmd/get.py
+lib/bup/bup/cmd/help.py
+lib/bup/bup/cmd/import_duplicity.py
+lib/bup/bup/cmd/index.py
+lib/bup/bup/cmd/init.py
+lib/bup/bup/cmd/join.py
+lib/bup/bup/cmd/list_idx.py
+lib/bup/bup/cmd/ls.py
+lib/bup/bup/cmd/margin.py
+lib/bup/bup/cmd/memtest.py
+lib/bup/bup/cmd/meta.py
+lib/bup/bup/cmd/midx.py
+lib/bup/bup/cmd/mux.py
+lib/bup/bup/cmd/on.py
+lib/bup/bup/cmd/on__server.py
+lib/bup/bup/cmd/prune_older.py
+lib/bup/bup/cmd/random.py
+lib/bup/bup/cmd/restore.py
+lib/bup/bup/cmd/rm.py
+lib/bup/bup/cmd/save.py
+lib/bup/bup/cmd/server.py
+lib/bup/bup/cmd/split.py
+lib/bup/bup/cmd/tag.py
+lib/bup/bup/cmd/tick.py
+lib/bup/bup/cmd/validate_object_links.py
+lib/bup/bup/cmd/validate_ref_links.py
+lib/bup/bup/cmd/validate_refs.py
+lib/bup/bup/cmd/version.py
+lib/bup/bup/cmd/web.py
+lib/bup/bup/cmd/xstat.py
+lib/bup/bup/commit.py
+lib/bup/bup/compat.py
+lib/bup/bup/config.py
+lib/bup/bup/drecurse.py
+lib/bup/bup/gc.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/io.py
+lib/bup/bup/ls.py
+lib/bup/bup/main.py
+lib/bup/bup/metadata.py
+lib/bup/bup/midx.py
+lib/bup/bup/options.py
+lib/bup/bup/path.py
+lib/bup/bup/protocol.py
+lib/bup/bup/pwdgrp.py
+lib/bup/bup/repair.py
+lib/bup/bup/repo/__init__.py
+lib/bup/bup/repo/base.py
+lib/bup/bup/repo/local.py
+lib/bup/bup/repo/remote.py
+lib/bup/bup/rewrite.py
+lib/bup/bup/rm.py
+lib/bup/bup/shquote.py
+lib/bup/bup/source_info.py
+lib/bup/bup/ssh.py
+lib/bup/bup/tree.py
+lib/bup/bup/url.py
+lib/bup/bup/version.py
+lib/bup/bup/vfs.py
+lib/bup/bup/vint.py
+lib/bup/bup/xstat.py
+lib/bup/cmd/bup
+lib/bup/cmd/bup-import-rdiff-backup
+lib/bup/cmd/bup-import-rsnapshot
+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
+man/man1/bup-features.1
+man/man1/bup-fsck.1
+man/man1/bup-ftp.1
+man/man1/bup-fuse.1
+man/man1/bup-gc.1
+man/man1/bup-get.1
+man/man1/bup-help.1
+man/man1/bup-import-duplicity.1
+man/man1/bup-import-rdiff-backup.1
+man/man1/bup-import-rsnapshot.1
+man/man1/bup-index.1
+man/man1/bup-init.1
+man/man1/bup-join.1
+man/man1/bup-ls.1
+man/man1/bup-margin.1
+man/man1/bup-memtest.1
+man/man1/bup-meta.1
+man/man1/bup-midx.1
+man/man1/bup-mux.1
+man/man1/bup-on.1
+man/man1/bup-prune-older.1
+man/man1/bup-random.1
+man/man1/bup-restore.1
+man/man1/bup-rm.1
+man/man1/bup-save.1
+man/man1/bup-server.1
+man/man1/bup-split.1
+man/man1/bup-tag.1
+man/man1/bup-tick.1
+man/man1/bup-validate-object-links.1
+man/man1/bup-validate-ref-links.1
+man/man1/bup-web.1
+man/man1/bup.1
+share/doc/bup/DESIGN.md
+share/doc/bup/README.md
diff --git a/bup-snapshot/distinfo b/bup-snapshot/distinfo
new file mode 100644
index 0000000000..7b4b88ec5e
--- /dev/null
+++ b/bup-snapshot/distinfo
@@ -0,0 +1,9 @@
+$NetBSD: distinfo,v 1.33 2026/01/29 00:35:05 gdt Exp $
+
+BLAKE2s (bup-0.33.51.872-1b4976f9fc100f12b8b1a34d1a7e96e5fcdd4116.tar.gz) = 8a89a6bc73817ac814e101b15c52edafd27843070fa654893fb2df3845034045
+SHA512 (bup-0.33.51.872-1b4976f9fc100f12b8b1a34d1a7e96e5fcdd4116.tar.gz) = 294e5e9f9518d01bde13cb9072656e9e5802f2d32c33aa521eb885a0410b3aa212b856efeef99c346db717036d2bda09bb9be6ed86b5937322bf2eb29496f56e
+Size (bup-0.33.51.872-1b4976f9fc100f12b8b1a34d1a7e96e5fcdd4116.tar.gz) = 651813 bytes
+BLAKE2s (bup-man-26d961455dc071f166a3f6f54e6ceb0b71cf2524.tar.gz) = 8c4037e8e8e226fa0f23e4f7deb8c06ca43c6514416bb32fd66ec3a3a1b1fca5
+SHA512 (bup-man-26d961455dc071f166a3f6f54e6ceb0b71cf2524.tar.gz) = c0a9ba7d3a3a752bc4a993b9da5745959e17a523bf59d42d47dc7e2df30eb8804a3feaf9ae9f768d417d2fc0d6918c4991cfc89353b08cac56c75f5c254f03c3
+Size (bup-man-26d961455dc071f166a3f6f54e6ceb0b71cf2524.tar.gz) = 34265 bytes
+SHA1 (patch-lib_bup___helpers.c) = 2d0d70118858e9765fb5663a54f899c9084bf51a
diff --git a/bup-snapshot/options.mk b/bup-snapshot/options.mk
new file mode 100644
index 0000000000..dac6b9b4c2
--- /dev/null
+++ b/bup-snapshot/options.mk
@@ -0,0 +1,17 @@
+# $NetBSD: options.mk,v 1.2 2019/11/19 15:01:25 gdt Exp $
+
+PKG_OPTIONS_VAR=	PKG_OPTIONS.bup
+PKG_SUPPORTED_OPTIONS=	fuse
+# fuse is disabled by default because it doesn't build on Mac, and
+# because the fuse implementation in bup doesn't work on NetBSD.
+# After it's fixed upstream, an OS-specific default is probably
+# appropriate.
+PKG_SUGGESTED_OPTIONS=
+
+.include "../../mk/bsd.prefs.mk"
+
+.include "../../mk/bsd.options.mk"
+
+.if !empty(PKG_OPTIONS:Mfuse)
+.include "../../filesystems/py-fuse-bindings/buildlink3.mk"
+.endif
diff --git a/bup-snapshot/patches/patch-lib_bup___helpers.c b/bup-snapshot/patches/patch-lib_bup___helpers.c
new file mode 100644
index 0000000000..6ecbfd6948
--- /dev/null
+++ b/bup-snapshot/patches/patch-lib_bup___helpers.c
@@ -0,0 +1,24 @@
+$NetBSD: patch-lib_bup___helpers.c,v 1.4 2025/12/17 23:46:21 nia Exp $
+
+If OS does not define htonll as a macro, avoid colliding with it.
+
+--- lib/bup/_helpers.c.orig	2025-12-17 14:20:36.236008733 +0000
++++ lib/bup/_helpers.c
+@@ -137,7 +137,7 @@ static void *checked_malloc(size_t n, size_t size)
+ // This function should technically be macro'd out if it's going to be used
+ // more than ocasionally.  As of this writing, it'll actually never be called
+ // in real world bup scenarios (because our packs are < MAX_INT bytes).
+-static uint64_t htonll(uint64_t value)
++static uint64_t my_htonll(uint64_t value)
+ {
+     static const int endian_test = 42;
+ 
+@@ -145,6 +145,8 @@ static uint64_t htonll(uint64_t value)
+ 	return ((uint64_t)htonl(value & 0xFFFFFFFF) << 32) | htonl(value >> 32);
+     return value; // already in network byte order MSB-LSB
+ }
++
++#define htonll my_htonll
+ #endif
+ 
+ #define INTEGRAL_ASSIGNMENT_FITS(dest, src) INT_ADD_OK(src, 0, dest)


Home | Main Index | Thread Index | Old Index