Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 24 Sep 2025 09:16:54 GMT
From:      Lexi Winter <ivy@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: aba986215fc9 - main - release: Install pkg from the pkgbase repo
Message-ID:  <202509240916.58O9Gstq001696@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by ivy:

URL: https://cgit.FreeBSD.org/src/commit/?id=aba986215fc99d09655d4dcfc5e37f8b1ac83edf

commit aba986215fc99d09655d4dcfc5e37f8b1ac83edf
Author:     Lexi Winter <ivy@FreeBSD.org>
AuthorDate: 2025-09-23 22:37:26 +0000
Commit:     Lexi Winter <ivy@FreeBSD.org>
CommitDate: 2025-09-24 09:16:13 +0000

    release: Install pkg from the pkgbase repo
    
    If we're building pkgbase media, install the pkg package from the
    pkgbase repository we already created, not from pkg.freebsd.org.
    Aside from being more desirable, this also fixes make release for
    version/architecture combinations which are missing repository
    on pkg.f.o (which is nearly all of them at the time of writing).
    
    This doesn't yet work for bootonly, since we don't build the pkgbase
    repository there.  For now, restore the old behaviour of attempting
    to install pkg from pkg.freebsd.org for bootonly.
    
    MFC after:      1 day
    Reviewed by:    ifreund_freebsdfoundation.org, cperciva (previous version)
    Differential Revision:  https://reviews.freebsd.org/D52637
---
 release/Makefile | 24 +++++++++++++++++++-----
 1 file changed, 19 insertions(+), 5 deletions(-)

diff --git a/release/Makefile b/release/Makefile
index 296ce83f6dac..491c343398b4 100644
--- a/release/Makefile
+++ b/release/Makefile
@@ -79,11 +79,16 @@ VOLUME_LABEL=	${REVISION:C/[.-]/_/g}_${BRANCH:C/[.-]/_/g}_${TARGET_ARCH}
 PKG_ENV+=	INSTALL_AS_USER=yes
 PKG_ENV+=	ASSUME_ALWAYS_YES=yes
 PKG_ARGS+=	-o METALOG=METALOG
-PKG_ARGS+=	-r ${.TARGET} -o REPOS_DIR=${.CURDIR}/pkg_repos
+PKG_ARGS+=	-r ${.TARGET}
+PKG_REPO_ARGS=	-o REPOS_DIR=${.CURDIR}/pkg_repos
+PKGBASE_REPO_ARGS=-o REPOS_DIR=${.OBJDIR}/pkgbase-repo-conf
 # Pass -f to make sure pkg writes to the METALOG even if the package
 # is already installed from a previous build
-PKG_INSTALL=	env ${PKG_ENV} ${PKG_CMD} ${PKG_ARGS} install -f
-PKG_CLEAN=	env ${PKG_ENV} ${PKG_CMD} ${PKG_ARGS} clean -a
+PKG_INSTALL=	env ${PKG_ENV} ${PKG_CMD} ${PKG_ARGS} ${PKG_REPO_ARGS} install -f
+PKG_CLEAN=	env ${PKG_ENV} ${PKG_CMD} ${PKG_ARGS} ${PKG_REPO_ARGS} clean -a
+# This installs from the pkgbase repo we created during build.
+PKGBASE_INSTALL=env ${PKG_ENV} ${PKG_CMD} ${PKG_ARGS} ${PKGBASE_REPO_ARGS} install -f
+PKGBASE_CLEAN=	env ${PKG_ENV} ${PKG_CMD} ${PKG_ARGS} ${PKGBASE_REPO_ARGS} clean -a
 .endif
 
 .if !defined(VOLUME_LABEL) || empty(VOLUME_LABEL)
@@ -238,7 +243,12 @@ disc1: ${PKGBASE_REPO}
 .endif
 .if ${.MAKE.OS} == "FreeBSD" && (!defined(NOPKG) || empty(NOPKG))
 # Install packages onto release media.
+.if !defined(NOPKGBASE) || empty(NOPKGBASE)
+	${PKGBASE_INSTALL} pkg
+	${PKGBASE_CLEAN}
+.else
 	${PKG_INSTALL} pkg
+.endif
 	${PKG_INSTALL} wifi-firmware-kmod-release || true
 	${PKG_CLEAN} || true
 .endif
@@ -278,8 +288,7 @@ bootonly:
 	echo "./usr/freebsd-dist/MANIFEST type=file uname=root gname=wheel mode=0644" >> ${.TARGET}/METALOG
 .endif
 .if ${.MAKE.OS} == "FreeBSD" && (!defined(NOPKG) || empty(NOPKG))
-# Install packages onto release media.
-	${PKG_INSTALL} pkg
+	${PKG_INSTALL} pkg || true
 	${PKG_INSTALL} wifi-firmware-iwlwifi-kmod wifi-firmware-rtw88-kmod || true
 	${PKG_CLEAN} || true
 .endif
@@ -333,7 +342,12 @@ dvd: ${PKGBASE_REPO}
 .endif
 .if ${.MAKE.OS} == "FreeBSD" && (!defined(NOPKG) || empty(NOPKG))
 # Install packages onto release media.
+.if !defined(NOPKGBASE) || empty(NOPKGBASE)
+	${PKGBASE_INSTALL} pkg
+	${PKGBASE_CLEAN}
+.else
 	${PKG_INSTALL} pkg
+.endif
 	${PKG_INSTALL} wifi-firmware-kmod-release || true
 	${PKG_CLEAN} || true
 .endif



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202509240916.58O9Gstq001696>