git: dc29678709b9 - main - ports-mgmt/pkg: update to 2.8.0
Date: Mon, 20 Jul 2026 09:25:49 UTC
The branch main has been updated by bapt:
URL: https://cgit.FreeBSD.org/ports/commit/?id=dc29678709b9e811de8efab97d22e493f4cc3777
commit dc29678709b9e811de8efab97d22e493f4cc3777
Author: Baptiste Daroussin <bapt@FreeBSD.org>
AuthorDate: 2026-07-20 09:18:22 +0000
Commit: Baptiste Daroussin <bapt@FreeBSD.org>
CommitDate: 2026-07-20 09:23:50 +0000
ports-mgmt/pkg: update to 2.8.0
Major Changes:
==============
Database & performance
- better read/write concurrency on the local DB
- Schema bumped to v42: 15 redundant single-column indexes dropped, flavors VIEW added, shlib_id indexes added
- Read-only databases opened with SQLITE_OPEN_READONLY, falling back to immutable=1
- Binary repositories: 16K pages and synchronous=OFF during bulk catalog updates
- Implicit SQL-89 JOINs converted to explicit JOIN syntax, several queries optimized
- Some database concurrency issues fixed
New features
- pkg-checksum(8): new command to generate and validate checksums
- Blake2b used everywhere possible for checksums; repositories use blake2 instead of sha256
- rwhich: file tracking and search for remote repositories (requires repositories to be built with -l)
- pkg delete -G/--exclude-glob: exclude packages by glob pattern
- Repositories: enable/disable/reset support
- pkg autoremove -qn: quiet, script-friendly output
- pkg query: %{...} falls back to pkg_printf(3) evaluation
- lua: pkg.exec_capture -- captures stdout/stderr of pkg.exec
- plist: @for ... @end loops and # comments
- Triggers: per-file instead of per-directory
- RC script support rewritten to be safer
- DECOMPRESSION_THREADS respected when decompressing
- Arbitrary data can be stored in the repository meta file
- OSVf updated to official JSON schema 1.7.5 with CVE name parsing and osv_type for VuXML compatibility
- Periodic script for dependency checking
- CheriBSD and CheriABI OS/ABI declared
Minor Changes:
==============
- Handle getgrnam_r/getpwnam_r upon ERANGE
- Replace system() with execlp() for man page display
- query_select no longer discards valid input on EOF without newline
- Handle trailing %% in printf format strings
- input validation hardened via fuzzing
- which: always show the matched path
- info -e: only return 0 if all packages on the command line exist
- install: respect -q
- upgrade: do not propose downgrades to solve provides/requires
- upgrade: clarified messages for missing packages and changes
- fetch: respect RFC 3986
- lock: do not error in expected (un)lock state
- shlibs: also remove ignored shlibs provided from shlibs required
- backup_libraries: atomic replacement, fully respects rootdir
- backup_lib: prevent accumulating old libs and badly matching them
- DB: loudly complain if the DB cannot be opened
- DB: in case of remote DB corruption, destroy it to allow rebuilding
- Repo: do not delete repositories in overrides, simply disable them
- Honor --repository flag for disabled repos as documented
- search: improved error message and fixed multiple JSON formatted results
- update: warn when trying to update a non-existent repository
- fingerprints: fallback on the host to find them when using -r
- libelf: fix Linux/powerpc64 build
- libecc: support Linux/ppc64
- pkg-which: fix spurious warning message with -p
- extract: prefer mtime from manifest over archive
- periodic: daily checksum is now off by default
- plug multiple memory leaks and resource leaks
Dependency updates
- SQLite 3.53.2
- Lua 5.4.8
- libucl 0.9.5
PR: 296292
exp-run: antoine
---
ports-mgmt/pkg/Makefile | 8 ++++----
ports-mgmt/pkg/distinfo | 6 +++---
ports-mgmt/pkg/files/patch-src_Makefile.autosetup | 11 -----------
ports-mgmt/pkg/pkg-plist | 2 ++
4 files changed, 9 insertions(+), 18 deletions(-)
diff --git a/ports-mgmt/pkg/Makefile b/ports-mgmt/pkg/Makefile
index 2b1abd1d506e..c255a3ddcc29 100644
--- a/ports-mgmt/pkg/Makefile
+++ b/ports-mgmt/pkg/Makefile
@@ -1,5 +1,5 @@
PORTNAME= pkg
-DISTVERSION= 2.7.5
+DISTVERSION= 2.8.0
_PKG_VERSION= ${DISTVERSION}
CATEGORIES= ports-mgmt
@@ -16,13 +16,13 @@ USE_LDCONFIG= ${PREFIX}/lib/compat/pkg
HAS_CONFIGURE= yes
PORTDOCS= NEWS
PORTSCOUT= ignore:1
-CONFIGURE_ARGS= --prefix="${PREFIX}"
+CONFIGURE_ARGS= --prefix="${PREFIX}" \
+ --mandir="${PREFIX}/share/man"
CONFIGURE_ENV= CC_FOR_BUILD="${CC}"
# Use a submake as 'deinstall install' needs to reevaluate PKG_REGISTER
# so that pkg-static is used from the wrkdir
USE_SUBMAKE= yes
-CFLAGS+= -Wno-error
OPTIONS_DEFINE= DOCS
@@ -53,8 +53,8 @@ PKG_BIN= ${WRKSRC}/src/pkg-static
.endif
post-install:
+ ${INSTALL_DATA} ${WRKSRC}/src/pkg.conf.sample ${STAGEDIR}${PREFIX}/etc/
@${MKDIR} ${STAGEDIR}${PREFIX}/lib/compat/pkg
- ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libpkg.so ${STAGEDIR}${PREFIX}/sbin/pkg*
post-install-DOCS-on:
@${MKDIR} ${STAGEDIR}${DOCSDIR}
diff --git a/ports-mgmt/pkg/distinfo b/ports-mgmt/pkg/distinfo
index b8207735dcc1..f22a3690fb17 100644
--- a/ports-mgmt/pkg/distinfo
+++ b/ports-mgmt/pkg/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1777461622
-SHA256 (freebsd-pkg-2.7.5_GH0.tar.gz) = 51d726f52ad750fcde14d5f041d43df5b12ea4a6f143777c6b02ed7df16ceb39
-SIZE (freebsd-pkg-2.7.5_GH0.tar.gz) = 12347555
+TIMESTAMP = 1784538459
+SHA256 (freebsd-pkg-2.8.0_GH0.tar.gz) = 4e91a5d0e2f487dabbae6493784cc3dd16f1f07017c2cadd6d4dc2bf388d278d
+SIZE (freebsd-pkg-2.8.0_GH0.tar.gz) = 12278833
diff --git a/ports-mgmt/pkg/files/patch-src_Makefile.autosetup b/ports-mgmt/pkg/files/patch-src_Makefile.autosetup
deleted file mode 100644
index 4c3991975e7f..000000000000
--- a/ports-mgmt/pkg/files/patch-src_Makefile.autosetup
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/Makefile.autosetup.orig 2022-12-11 18:22:41 UTC
-+++ src/Makefile.autosetup
-@@ -93,7 +93,7 @@ pkg-static: $(OBJS) $(top_builddir)/libpkg/libpkg_flat
- install: install-static
-
- pkg-static: $(OBJS) $(top_builddir)/libpkg/libpkg_flat.a
-- $(CC) -o $@ $(OBJS) $(STATIC_ARG) $(LDFLAGS) $(STATIC_LDFLAGS)
-+ $(CC) -o $@ $(OBJS) $(STATIC_ARG) $(STATIC_LDFLAGS)
-
- install-static: pkg-static
- install -d -m 755 $(DESTDIR)$(sbindir)
diff --git a/ports-mgmt/pkg/pkg-plist b/ports-mgmt/pkg/pkg-plist
index 8f3ca495cb16..b3c37a629d8d 100644
--- a/ports-mgmt/pkg/pkg-plist
+++ b/ports-mgmt/pkg/pkg-plist
@@ -4,10 +4,12 @@ etc/periodic/daily/490.status-pkg-changes
etc/periodic/security/405.pkg-base-audit
etc/periodic/security/410.pkg-audit
etc/periodic/security/460.pkg-checksum
+etc/periodic/security/470.pkg-dependencies
etc/periodic/weekly/400.status-pkg
@sample etc/pkg.conf.sample
include/pkg.h
include/pkg/audit.h
+include/pkg/checksum.h
include/pkg/vec.h
lib/libpkg.a
lib/libpkg.so