Automatic conversion of the NetBSD pkgsrc CVS module, use with care
Find a file
bsiegert c3be0f3cc7 Update py-borgbackup to 1.1.11.
Pre-1.1.11 potential index corruption / data loss issue
-------------------------------------------------------

A bug was discovered in our hashtable code, see issue #4829.
The code is used for the client-side chunks cache and the server-side repo index.

Although borg uses the hashtables very heavily, the index corruption did not
happen too frequently, because it needed specific conditions to happen.

Data loss required even more specific conditions, so it should be rare (and
also detectable via borg check).

You might be affected if borg crashed with / complained about:
- AssertionError: Corrupted segment reference count - corrupted index or hints
- ObjectNotFound: Object with key ... not found in repository ...
- Index mismatch for key b'...'. (..., ...) != (-1, -1)
- ValueError: stats_against: key contained in self but not in master_index.

Advised procedure to fix any related issue in your indexes/caches:
- install fixed borg code (on client AND server)
- for all of your clients and repos remove the cache by:
  borg delete --cache-only YOURREPO
  (later, the cache will be re-built automatically)
- for all your repos, rebuild the repo index by:
  borg check --repair YOURREPO
  This will also check all archives and detect if there is any data-loss issue.

Affected branches / releases:

fd06497 introduced the bug into 1.1-maint branch - it affects all borg 1.1.x since 1.1.0b4.
fd06497 introduced the bug into master branch - it affects all borg 1.2.0 alpha releases.
c5cd882 introduced the bug into 1.0-maint branch - it affects all borg 1.0.x since 1.0.11rc1.

The bug was fixed by:

701159a fixes the bug in 1.1-maint branch - will be released with borg 1.1.11.
fa63150 fixes the bug in master branch - will be released with borg 1.2.0a8.
7bb90b6 fixes the bug in 1.0-maint branch. Branch is EOL, no new release is planned as of now.
2020-03-15 10:30:34 +00:00
archivers arqiver: update to 0.4.0 2020-03-14 22:26:26 +00:00
audio audio/fasttracker2: Update to v1.12 2020-03-14 03:21:42 +00:00
benchmarks httperf: Update to 0.9.0.20190829 2020-03-11 14:24:44 +00:00
biology librsvg: update bl3.mk to remove libcroco in rust case 2020-03-10 22:08:37 +00:00
bootstrap bootstrap: use $* instead of $@ where appropriate 2020-02-23 18:32:46 +00:00
cad oce: fix option check in bl3.mk file 2020-03-14 00:16:03 +00:00
chat chat/ircd-hybrid: Updates to 8.2.30 2020-03-14 02:52:35 +00:00
comms librsvg: update bl3.mk to remove libcroco in rust case 2020-03-10 22:08:37 +00:00
converters librsvg: update bl3.mk to remove libcroco in rust case 2020-03-10 22:08:37 +00:00
cross (cross/cc65) Updated to 2.18 .. distinfo also updated now 2020-03-14 11:15:03 +00:00
databases databases: mysql51-* were removed. 2020-03-14 08:01:32 +00:00
devel devel/hdf5-c++: Install missing headers 2020-03-14 23:09:48 +00:00
distfiles
doc doc/TODO: add some 2020-03-15 10:14:41 +00:00
editors featherpad: update to 0.13.1 2020-03-14 22:17:55 +00:00
emulators qemu: enable iscsi initiator support 2020-03-13 13:57:04 +00:00
filesystems filesystems/glusterfs: Exempt bash script from bashisms check 2020-03-12 23:52:37 +00:00
finance py-tryton*: put python-2.7 restriction only in those packages where it belongs 2020-03-13 20:20:48 +00:00
fonts spleen: also install PSF versions of the fonts, for the Linux console. 2020-03-11 15:11:17 +00:00
games 7kaa-music: Needs 7kaa 2020-03-13 15:57:20 +00:00
geography geography/osm2pgsql: cmake build dir cleanup 2020-03-13 14:50:40 +00:00
graphics librsvg: rust debug_info is hundreds of MB. Don't build with it. Bump. 2020-03-14 22:40:47 +00:00
ham gpredict: update to 2.2.1. 2020-03-11 19:55:56 +00:00
inputmethod *: bump for vala 0.48.0 2020-03-11 09:53:51 +00:00
lang rust: Add missing patch lost in the pkglint noise. 2020-03-14 08:02:46 +00:00
licenses Added cc-by-nc-nd-v4.0-license 2020-02-28 11:21:36 +00:00
mail py-tryton*: put python-2.7 restriction only in those packages where it belongs 2020-03-13 20:20:48 +00:00
math Remove math/arpack successor math/arpack-ng 2020-03-13 07:48:57 +00:00
mbone all: migrate homepages from http to https 2020-01-26 17:30:40 +00:00
meta-pkgs py-tryton*: put python-2.7 restriction only in those packages where it belongs 2020-03-13 20:20:48 +00:00
misc py-tryton*: put python-2.7 restriction only in those packages where it belongs 2020-03-13 20:20:48 +00:00
mk mk: fix typo in example 2020-03-14 13:28:38 +00:00
multimedia gst-plugins1-*: fix unportable test(1) operator 2020-03-13 07:39:41 +00:00
net net/unifi: Update to 5.12.35 2020-03-14 13:43:40 +00:00
news librsvg: update bl3.mk to remove libcroco in rust case 2020-03-10 22:08:37 +00:00
packages
parallel librsvg: update bl3.mk to remove libcroco in rust case 2020-03-10 22:08:37 +00:00
pkgtools pkgtools/check-portability: fix function names 2020-03-14 09:47:09 +00:00
print print/cups-filters: Avoid portablity check fail 2020-03-12 23:51:53 +00:00
regress mk/pkginstall/files: allow spaces in configuration file names 2020-02-11 01:59:30 +00:00
security security/Makefile: add php-gnupg 2020-03-14 04:42:12 +00:00
shells Register oksh in /etc/shells; ++pkgrevision 2020-03-07 21:14:45 +00:00
sysutils Update py-borgbackup to 1.1.11. 2020-03-15 10:30:34 +00:00
templates
textproc sonnet: Add PLIST.Darwin 2020-03-14 10:21:53 +00:00
time py-tryton*: put python-2.7 restriction only in those packages where it belongs 2020-03-13 20:20:48 +00:00
wm cwm: update HOMEPAGE 2020-03-13 08:37:59 +00:00
www firefox: firefox 74.0 explicitly requires cbindgen>=0.13.0. 2020-03-14 06:12:48 +00:00
x11 xfce4-whiskermenu-plugin: update to 2.4.3 2020-03-15 05:35:08 +00:00
Makefile Makefile: fix outdated documentation 2020-02-12 15:04:51 +00:00
pkglocate
README.md README.md: minor adjustments 2020-01-15 16:19:22 +00:00

pkgsrc

pkgsrc is a framework for building software for a variety of UNIX-like systems.

It produces binary packages, which can be managed with tools such as pkgin.

Bootstrapping

To use pkgsrc on operating systems other than NetBSD, you first need to bootstrap:

cd pkgsrc/bootstrap
./bootstrap

Note that this is only for the most simple case, using pkgsrc's defaults.

Please consult bootstrap/README and bootstrap/README.OS for detailed information about bootstrapping.

Building packages

cd pkgsrc/category/package-name
$PREFIX/bin/bmake install

Where $PREFIX is where you've chosen to install packages (typically /usr/pkg)

On NetBSD, bmake is simply the built-in make tool.

To build packages in bulk, tools such as pkgtools/pbulk and pkgtools/pkg_comp can be used.

Troubleshooting

Latest sources

To fetch the main CVS repository:

cvs -d anoncvs@anoncvs.NetBSD.org:/cvsroot checkout -P pkgsrc

To work in the Git mirror, which is updated every few hours from CVS:

git clone https://github.com/NetBSD/pkgsrc.git