aboutsummaryrefslogtreecommitdiff
path: root/release
Commit message (Collapse)AuthorAgeFilesLines
* release: Turn off debugging in pkg(8)Colin Percival5 days1-1/+1
| | | | | | | | | | Running `pkg -d` in pkg-stage.sh results in multiple GB of network traffic being written into the log files, which is less than helpful when it comes to tracking down build failures. Remove the -d flag. MFC after: 5 days X-MFC-note: The code in 15 has diverged from 14, but the flag is there, just in a different place.
* release: Pass optional VM_IMAGE_CONFIG to vm-imagePat Maddox6 days1-0/+1
| | | | | | | | | | | | | | | | | | | | | | | `make vm-image` calls mk-vmimage.sh, which supports `-c CONFFILE`. This file gets sourced before building the image. One example of how to use it is to define vm_extra_filter_base_packages() to filter the list of packages installed into the VM image: # vm-nodbg32.conf vm_extra_filter_base_packages() { grep -v -E '(-dbg|lib32)' } $ make VM_IMAGE_CONFIG=path/to/vm-nodbg32.conf \ VMFORMATS=raw \ -DWITH_VMIMAGES \ vm-image Signed-off-by: Pat Maddox <pat@patmaddox.com> Reviewed by: cperciva Closes: https://github.com/freebsd/freebsd-src/pull/1993
* pkgbase-stage.lua: Add '*-jail-dbg' variant to dvd1zxbv310 days1-2/+2
| | | | | | | | - Add *-jail-dbg variant to dvd1 to match the non-jail variant; - Remove assertion introduced in the previous commit for consistency with existing code. Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1991
* pkgbase-stage.lua: Add *-jail metapackages to the offline repozxbv310 days1-0/+3
| | | | | | | Having *-jail metapackage variants on the installation media allows convenient offline jail creation. Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1991
* release: Ship firmware from kmods repo on DVDColin Percival13 days2-7/+25
| | | | | | | | | | | | | | | | The packages for X.Y-RELEASE are a snapshot of the quarterly branch for stable/X, i.e. typically built on X.(Y-1)-RELEASE. (The case of Y=0 is an exception for obvious reasons.) This works for most ports but not for kernel modules, which may need to be built on the release in question; this is why we have a separate "kmods" repository. Make sure that we put the packages from the kmods repository onto the mini-pkg-repo on the DVD rather than shipping unusable firmware. Reviewed by: bz MFC after: 1 week Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D52581
* release: Remove not-NO_ROOT casesEd Maste14 days6-149/+92
| | | | | | | | | | | | | | | We always use NO_ROOT for release artifact builds, so remove the alternate code paths. For the first step we set NO_ROOT unconditionally in cases that invoke submakes, and turn NO_ROOT being unset into an error in lover-level targets so that we can catch potential out-of-tree build scripts (or missed in-tree cases) that expect to run not-NO_ROOT builds. The second step will be to remove those entirely. Reviewed by: cperciva Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54179
* loader: Prefer comma-separated list of values for "console"Michael Osipov14 days2-2/+2
| | | | | | | PR: 292595 Reviewed by: imp MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54923
* release/tools: use same pkg settings in containers as in /etc/pkg/FreeBSD.confDave Cottlehuber2026-01-271-5/+1
| | | | | | | | | | | | Instructions in /etc/pkg/FreeBSD.conf and elsewhere recommend putting changes in /usr/local/etc/pkg/repos/FreeBSD.conf so bring OCI containers into line as well. Reviewed by: dfr, ivy Differential Revision: https://reviews.freebsd.org/D54090 MFC after: 5 days Sponsored by: SkunkWerks, GmbH
* vmimage.subr: Install pkg on pkgbase imagesColin Percival2026-01-241-0/+3
| | | | | | | | When building VM and Cloud images with a packaged base system, install the pkg package; this makes it possible for the base system to be updated without installing pkg from the FreeBSD-ports repository. Sponsored by: Amazon
* EC2: Add extra SSM Parameter names for releasesColin Percival2026-01-111-1/+5
| | | | | | | | | | | | | | | Record releases in the SSM Parameter Store not just as e.g. /aws/service/freebsd/arm64/small/ufs/15.0/RELEASE but also as .../RELEASE/latest, e.g. /aws/service/freebsd/arm64/small/ufs/15.0/RELEASE/latest The latter parameters will be updated when new AMIs are built with security and errata updates appplied, and have been backfilled for 15.0. MFC after: 3 days MFC to: stable/15 (14.x will not get security-update AMIs) Sponsored by: Amazon
* powerpc: fix release image building for Apple partitionsAdrian Chadd2026-01-111-1/+1
| | | | | | | | | | | | | awk changed somewhere between 14 and 15 and it stopped accepting a hexadecimal number as its input - it will always return 0. This results in a very badly written apple boot block. So just remove it; do the math in shell. PR: kern/292341 Differential Revision: https://reviews.freebsd.org/D54639 Reviewed by: imp MFC after: 1 week
* release: remove powerpcspeMinsoo Choo2026-01-091-9/+0
| | | | | | Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: jhibbits, emaste Pull request: https://github.com/freebsd/freebsd-src/pull/1914
* release: make sh the default shellBaptiste Daroussin2026-01-092-2/+2
| | | | | | | | | | The default shell for root has been changed to sh(1) followup changing in release images sh(1) the shell for the "freebsd" user. MFC After: 1 week Reviewed by: manu, emaste (re) Approved by: manu, emaste (re) Differential Revision: https://reviews.freebsd.org/D54602
* GCE: ARM64 Support: Add hw.pci.honor_msi_blacklist=0.William Carrel2026-01-081-0/+3
| | | | | | | | | | | | | This is required for MSI support on GCE ARM64 instances which is prerequisite to gve(4) not panicking at boot, and nvme(4) also has a real sad time without interrupts. Tested on a variety of c4a VMs. This is meant to be a temporary hack; long term fix would be to check for the hypervisor and quirk gve(4) device with PCI_QUIRK_ENABLE_MSI_VM. PR: kern/292081 MFC after: 1 week
* GCE: Enable vtnet(4) Multiqueue.William Carrel2026-01-081-1/+0
| | | | | | | | | | | | | | | Removes hw.vtnet.mq_disable=1. This workaround was originally introduced nearly a decade ago to address stability issues on KVM that have long since been resolved in both the FreeBSD driver and the GCE hypervisor. Removing this allows network interrupts to scale across multiple vCPUs. Tested on n2-highcpu-16 VM with 15.0-RELEASE and confirmed multiple queue pairs active and interrupts handling across cores. PR: kern/292081 MFC after: 1 day
* GCE: Fix growfs pathWilliam Carrel2026-01-081-1/+1
| | | | | | | | | | The sed command was missing the ${DESTDIR} prefix, meaning it was attempting to modify the build host's /etc/rc.d/growfs instead of the target image's script. Tested in an arm64 builder that builds as non-root. PR: kern/292081 MFC after: 1 day
* release: stop disabling sendmailBaptiste Daroussin2026-01-075-20/+0
| | | | | | | | | sendmail is already disabled by default everywhere since 14.0 MFC After: 1 week Approved by: emaste (re) Reviewed by: emaste (re) Differential Revision: https://reviews.freebsd.org/D54575
* zstd: Move to a new zstd packageLexi Winter2026-01-061-0/+30
| | | | | | | | | | | | | | | | | | Zstd is a discrete, self-contained system component. To match how we package zlib, bzip2 and xz, move it to its own package, with a separate lib package. Add the new package to the minimal set, since this is a core component that users expect to be installed. This change adds a new package to the system so, until we have a proper policy on how to handle this in release/stable branches, it should not be MFC'd. MFC after: never Reviewed by: bapt Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53603
* release: Use make's `:H` rather than `/..`Ed Maste2026-01-052-3/+3
| | | | | | | | | In general we want to strip subdir components, rather than appending `..`s. Reviewed by: lwhsu Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54373
* release: Include comms/usbmuxd to DVD to ensure ipheth(4) worksLi-Wen Hsu2025-12-051-0/+1
| | | | | | | | PR: 291370 Reviewed by: emaste, aokblast, dch MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54074
* release: match comment for if statementMinsoo Choo2025-11-291-1/+1
| | | | | | Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1903
* release: Ship DVD with only emacs@nox flavourColin Percival2025-11-231-1/+1
| | | | | | | | | | | | | | | | Contrary to the claim made in a previous commit, removing KDE and adding all of vim and emacs results in an image which does not fit into 4.7 GB; to be specific, it lands at 4.722 GB rather than the claimed 4.689 GB. (This descrepancy resulted from doing test DVD image builds using an out-of-date tree, and became visible when the 15.0-RC3 images were built.) Limit the emacs packages shipped on the DVD to the "nox" flavor; this brings the disk image down to 4.407 GB, aka under the 4.7 GB limit for standard DVDs. Fixes: 6cc6beb4c889 ("release: Remove KDE from dvd1.iso") MFC after: 1 day (for 15.0-RC4)
* release: Remove KDE from dvd1.isoColin Percival2025-11-191-1/+2
| | | | | | | | | | | | | | | | | | | | | | | Prior to this commit, we were shipping 2155 MB of packages (from the ports tree, not counting pkgbase) on dvd1.iso. Due to the amount of space required by shipping pkgbase packages *and* distribution sets on the DVD images, we only have 1696 MB available if we want to fit into the 4.7 GB limit for DVDs. Many users have indicated that this is indeed important. It is practically impossible to hit this target without removing KDE; while KDE and its dependencies narrowly fit (1550 MB), we exceed the limit as soon as we include either of freebsd-doc-all or gnome. While we would pick KDE over GNOME (surveys regularly indicate that KDE is the more widely used of the two), we believe that documentation is the most important thing to include. Since removing KDE leaves a bit of extra space, add editors/emacs and editors/vim. This takes the 15.0 amd64 dvd1.iso up to 4.689 GB. [1] Requested by: adamw [1] MFC after: immediately (for 15.0-RC3) Differential Revision: https://reviews.freebsd.org/D53800
* release: Add a MISSING_METALOGS hack to VMsColin Percival2025-11-185-0/+55
| | | | | | | | | | | | | | The packages for 15.0-RELEASE built without the bug fix needed to make files created via @sample get properly listed in METALOG. Fix the cloudware which contain @sample-using packages by adding the necessary files to METALOG manually. This should be reverted after the next full package build, and live on only in releng/15.0. Reviewed by: markj MFC after: immediately (15.0-RC2) Differential Revision: https://reviews.freebsd.org/D53797
* GCE: Add /usr/src and /usr/ports to METALOGColin Percival2025-11-181-0/+8
| | | | | | | | | | We ship these in order to comply with GCE Marketplace rules about providing source code and licenses for all the software we ship as part of images. Reviewed by: markj MFC after: immediately (15.0-RC2) Differential Revision: https://reviews.freebsd.org/D53796
* release: Add /boot/loader.conf to some cloudwareColin Percival2025-11-182-0/+2
| | | | | | | | These were forgotten during the METALOGization process earlier. Reviewed by: markj MFC after: immediately (for 15.0-RC2) Differential Revision: https://reviews.freebsd.org/D53795
* vmimage.subr: Log correct paths into METALOGColin Percival2025-11-161-2/+2
| | | | | | | Paths all need to start with "./" because that's what newfs wants. Fixes: e0c41af9256b ("vmimage.subr: Enable FreeBSD-base repo if pkgbase") MFC after: immediately
* vmimage.subr: Don't log missing files from pkgsColin Percival2025-11-161-1/+8
| | | | | | | | | | | | | | | | | | | | | | | When installing "extra" packages (aka those built from the ports tree), we record everything being installed in METALOG.pkg; the contents of that file is appended to METALOG before we generate the filesystem. There are two cases when files recorded in METALOG.pkg will no longer exist by the time we create the final disk image: 1. If a pkg bug results in false dependencies being installed which are later removed by "pkg autoremove", and 2. If the pkg we build and install from /usr/ports is older than the pkg on pkg.freebsd.org, and pkg gets upgraded automatically as part of installing extra packages. The ultimate issue in both cases is that there's no mechanism for removing entries from METALOG when we run 'pkg delete'. Address this build breakage by checking, line by line, if filesystem objects mentioned in METALOG.pkg exist before appending them to METALOG. Fixes: 6a13aeac3c1f ("vmimage.subr: pkg autoremove after pkg install") MFC after: immediately (needed for 15.0-RC1)
* vmimage.subr: autoremove -yColin Percival2025-11-161-2/+2
| | | | | | | | Running 'pkg autoremove' without -y results in VM image builds failing when (bogusly installed) packages are removed. Fixes: 6a13aeac3c1f ("vmimage.subr: pkg autoremove after pkg install") MFC after: immediately (needed for 15.0-RC1)
* vmimage.subr: Enable FreeBSD-base repo if pkgbaseColin Percival2025-11-151-0/+4
| | | | | | | | | | When creating a VM image using pkgbase, create a configuration file in /usr/local/etc/pkg/repos/FreeBSD.conf which enables the FreeBSD-base repository. (This repository is defined in /etc/pkg/FreeBSD.conf as being disabled by default.) Reported by: Mark Millard MFC after: immediately (needed for 15.0-RC1)
* vmimage.subr: Log pkg/local.sqlite if pkgbaseColin Percival2025-11-151-1/+4
| | | | | | | | | | | | | | We were doing this in vm_extra_install_packages but VM images without any extra packages installed would not get this installed. This results in a pkgbase system which thinks it doesn't have any packages installed (even though all the files are right there). Add a "metalog_add_data ./var/db/pkg/local.sqlite" call to the pkgbase install code path, and make the call from vm_extra_install_packages conditional on !PKGBASE. Reported by: Michael Dexter MFC after: immediately (needed for 15.0-RC1)
* GCE: Don't .error on unsupported targetsColin Percival2025-11-151-1/+1
| | | | | | | | | | We ingest Makefile.gce even when we're not trying to create GCE images so we don't want to .error here. Instead, set GCE_ARCH to a dummy value which should make the problem clear to anyone who attempts to create GCE images on an unsupported architecture. Reported by: Jenkins Fixes: 0a8ecca4e315 ("GCE: Specify the architecture of images")
* GCE: Specify the architecture of imagesAndrew Jorgensen2025-11-151-0/+9
| | | | | | Without a specified architecture, a user can attempt to create an arm64 instance with an amd64 image or vice versa. With the change the API will prevent that mismatch.
* GCE: Add TARGET and FS to image familyAndrew Jorgensen2025-11-151-2/+2
| | | | | | | | | | | GCE image family is meant to be unique per set of image characteristics so that a user can create instances using the image family instead of the image name to reliably get a similar image with updated software, but no other changes. Without this change, the instances create API would select the most recent non-deprecated image matching the name, regardless of architecture or filesystem.
* Azure: Fix image namesColin Percival2025-11-111-1/+1
| | | | | | | | | | | We need to specify the correct image names -- *.vhdf, not *.vhd -- in order for them to upload. 15.0 candidate Reviewed by: lwhsu MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D53684
* libpam: Move to a new "pam" packageLexi Winter2025-11-101-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | | OpenPAM is a discrete, largely self-contained system component. Users may not need PAM for many use-cases (e.g. jails, containers), so move it to its own package. Use LIB_PACKAGE to create a separate pam-lib package for libpam, so that applications that support PAM don't need to bring in all the PAM modules if PAM isn't actually in use. Add pam to the minimal sets, since this is a core system component that people expect to be installed. This means all supported installation methods will install the PAM modules by default, so don't add explicit dependencies on the PAM modules from things that use PAM (e.g. runtime), allowing custom/embedded systems to omit these easily. This change adds a new package to the system so, until we have a proper policy on how to handle this in release/stable branches, it should not be MFC'd. MFC after: never Reviewed by: des, bapt Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53602
* release: Add WITHOUT_QEMU to IMAKEColin Percival2025-11-071-1/+1
| | | | | | | | | | We have NO_ROOT here, so we need WITHOUT_QEMU to avoid problems. 15.0 candidate. Reviewed by: emaste, markj MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D53637
* release: Comply with Azure Marketplace requirements for aarch64Li-Wen Hsu2025-11-071-1/+5
| | | | | | | | | | | | | | | Azure requires the first 1 MB (2,048 sectors) of the OS disk to remain empty for VM images: https://learn.microsoft.com/partner-center/marketplace-offers/azure-vm-certification-faq#vm-images-must-have-1-mb-of-free-space Also append the BOOTPARTSOFFSET suffix for aarch64 images, which only has an ESP partition for booting. Co-authored-by: Brad Davis <brd@FreeBSD.org> Approved by: cperciva Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D53628
* lib/googletest: Move to a new googletest packageLexi Winter2025-11-063-19/+53
| | | | | | | | | | | | | | | | | | | gtest/gmock are not normally used by users unless running the tests, so they shouldn't be in the utilities package. Move them to a new googletest package, to match what we did with ATF/Kyua. While here, move tests dependencies from tests-all.ucl to tests.ucl, which is the canonical place for that. This change adds a new package to the system so, until we have a proper policy on how to handle this in release/stable branches, it should not be MFC'd. MFC after: never Reported by: emaste Reviewed by: manu Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53607
* packages: Make set-base-dbg depend on set-optional-dbgLexi Winter2025-11-051-0/+3
| | | | | | | | | | | As set-base depends on set-optional, so should set-base-dbg depend on set-optional-dbg. Otherwise, people who install set-base-dbg will be missing a bunch of debug packages. MFC after: 1 day Reviewed by: emaste Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53575
* release: Make fetch happen in GCE imagesColin Percival2025-11-041-2/+3
| | | | | | | | | | We want to fetch distfiles, regardless of whether they contain known vulnerabilities or we're building images for a different version of FreeBSD. Reviewed by: ivy MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D53569
* release: Don't try to fetch distfiles for pkgbaseColin Percival2025-11-041-1/+1
| | | | | | | | | | | In order to comply with the require that GCE images must include their source code, we fetch distfiles for all of the packages installed into GCE images. This fails for obvious reasons for packages with an origin of base/*; filter those out to generate the list to fetch. Reviewed by: ivy MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D53568
* release: GCE builds depend on ftpColin Percival2025-11-041-0/+7
| | | | | | | | | | | | GCE images are required by Google to include their source code; we do this by extracting {src,ports}.txz into the images, from the (legacy) distribution sets. Make sure those distribution sets actually exist. Reviewed by: ivy MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D53567
* vmimage.subr: pkg autoremove after pkg installColin Percival2025-11-031-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | A bug in pkg, which somehow only surfaced as a consequence of pkgbase, results in pkg install sometimes pulling in false dependencies. This problem might be limited to cases when the lib32 pkgbase packages are not installed. In the case of EC2 "small" images, installing the ebsnvme-id package results in binutils, gcc12-devel, gmp, indexinfo, liblz4, mpc, mpfr, and zstd packages being installed. These false dependencies are however not recorded as dependencies -- at some level pkg does understand that they're not needed -- so running pkg autoremove immediately after pkg install cleans them up. Note: This does not remove lines from METALOG corresponding to these packages, and makefs emits an error when it attempts to create the filesystem but cannot find the files listed in METALOG -- but makefs does seem to complete normally despite the error messages. This change should be reverted once the pkg issue has been located and fixed. Reviewed by: ivy MFC after: 3 days Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D53543
* release: Spell metalog_add_data conventionallyColin Percival2025-11-021-1/+1
| | | | | | | Reviewed by: markj MFC after: 3 days Fixes: f1995d6fc13f ("release: Prepare GCE cloudware images for building as non-root") Differential Revision: https://reviews.freebsd.org/D53530
* release: Only check no-root/no-qemu when buildingColin Percival2025-10-301-0/+3
| | | | | | | | | | | | | | | | | | | | Building VMs as non-root requires no-QEMU code paths (installing packages from outside the VM image rather than inside it) and vice versa; we have a check for broken combinations. Unfortunately that check was breaking make -C src/usr.sbin/pkg NO_ROOT=YES -V PKGCONFBRANCH because that code reaches into src/release to determine the branch name (which is then used to determine which /etc/pkg/FreeBSD.conf to install). Wrap the no-root/no-qemu check in an .if to only run when we've asked for VM and/or CLOUD building to be enabled. Reviewed by: ivy MFC after: 5 minutes Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D53486
* zlib: Move to a new zlib packageLexi Winter2025-10-281-0/+32
| | | | | | | | | | | | | zlib is a standalone third-party component, and deserves its own package rather than living in runtime. For example, this will make future security updates less invasive. This also means there's no dependency on runtime for ports that just require zlib, which is useful for service jails. MFC after: 3 days Reviewed by: bapt, emaste Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53058
* packages: dhclient, local-unbound require resolvconfLexi Winter2025-10-262-0/+34
| | | | | | | | | | Both of these packages use resolvconf for various things. Add a dependency to make this work. MFC after: 3 days Reviewed by: des Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53115
* packages: Put dhclient in the minimal-jail setLexi Winter2025-10-261-1/+1
| | | | | | | | | | | This is somewhat widely used in VNET jails, it's fairly small (150kB on amd64) and it's enough of a core system component that it's reasonable to include, even if many jails don't require it. MFC after: 3 days Reviewed by: dch Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53154
* flua: Move to a new flua packageLexi Winter2025-10-264-0/+71
| | | | | | | | | | | | | | | flua is a standalone third-party component that deserves its own package. In particular, this means things can use flua without having to depend on FreeBSD-utilities, which will be useful as more base utilities use flua. This saves ~500kB in FreeBSD-utilities for systems which don't need flua. MFC after: 3 days Reviewed by: kevans Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53161