release: Add images for almost all packages, with & without toolchain

Contains almost everything of use in a container except:

- *lib32
- *dev
- *dbg
- *src
- anything expecting hardware such as device config tools

Differential Revision:	https://reviews.freebsd.org/D51471

Reviewed by:	dfr, emaste
Approved by:	cperciva
MFC after:	1 day
Sponsored by:	SkunkWerks, GmbH
This commit is contained in:
Dave Cottlehuber
2025-09-17 21:16:37 +00:00
parent a2783fb754
commit 728ec0c094
4 changed files with 90 additions and 4 deletions
+5 -3
View File
@@ -3,7 +3,7 @@
#
.if defined(WITH_OCIIMAGES) && !empty(WITH_OCIIMAGES)
OCI_IMAGES= static dynamic runtime
OCI_IMAGES= static dynamic runtime notoolchain toolchain
.endif
oci-install:
@@ -16,8 +16,10 @@ oci-install:
OCI_TARGETS=
OCI_DEPS_static=
OCI_DEPS_dynamic= container-image-static.txz
OCI_DEPS_runtime= container-image-dynamic.txz
OCI_DEPS_dynamic=container-image-static.txz
OCI_DEPS_runtime=container-image-dynamic.txz
OCI_DEPS_notoolchain=container-image-runtime.txz
OCI_DEPS_toolchain=container-image-notoolchain.txz
.for _IMG in ${OCI_IMAGES}
OCI_TARGETS+= container-image-${_IMG}.txz
+1 -1
View File
@@ -47,7 +47,7 @@ install_packages() {
# metadata for what was installed). This trims more than 40Mb from the
# resulting image.
env IGNORE_OSVERSION=yes ABI=${abi} pkg --rootdir ${rootdir} --repo-conf-dir ${workdir}/repos \
install -yq "$@" || exit $?
install -yq -g "$@" || exit $?
rm -rf ${rootdir}/var/db/pkg/repos
}
+68
View File
@@ -0,0 +1,68 @@
#! /bin/sh
# Build OCI container image with almost all packages suitable for jails, excluding compiler
OCI_BASE_IMAGE=runtime
oci_image_build() {
set_cmd ${workdir} /bin/sh
install_packages ${abi} ${workdir} \
FreeBSD-acct \
FreeBSD-at \
FreeBSD-audit \
FreeBSD-autofs \
FreeBSD-blocklist \
FreeBSD-bsnmp \
FreeBSD-caroot \
FreeBSD-certctl \
FreeBSD-clibs \
FreeBSD-console-tools \
FreeBSD-cron \
FreeBSD-csh \
FreeBSD-dma \
FreeBSD-ee \
FreeBSD-fd \
FreeBSD-fetch \
FreeBSD-ftp \
FreeBSD-ftpd \
FreeBSD-inetd \
FreeBSD-ipf \
FreeBSD-ipfw \
FreeBSD-iscsi \
FreeBSD-jail \
FreeBSD-kerberos \
FreeBSD-kerberos-lib \
FreeBSD-libarchive \
FreeBSD-libcompiler_rt-dev \
FreeBSD-libexecinfo \
FreeBSD-libucl \
FreeBSD-locales \
FreeBSD-lp \
FreeBSD-mtree \
FreeBSD-natd \
FreeBSD-netmap \
FreeBSD-newsyslog \
FreeBSD-nfs \
FreeBSD-nuageinit \
FreeBSD-openssl \
FreeBSD-periodic \
FreeBSD-pf \
FreeBSD-pkg-bootstrap \
FreeBSD-quotacheck \
FreeBSD-rc \
FreeBSD-rcmds \
FreeBSD-rescue \
FreeBSD-resolvconf \
FreeBSD-runtime \
FreeBSD-ssh \
FreeBSD-syslogd \
FreeBSD-tcpd \
FreeBSD-telnet \
FreeBSD-ufs \
FreeBSD-unbound \
FreeBSD-utilities \
FreeBSD-vi \
FreeBSD-yp \
FreeBSD-zfs \
FreeBSD-zoneinfo
}
+16
View File
@@ -0,0 +1,16 @@
#! /bin/sh
# Build Open Container Initiative (OCI) container image with almost all of FreeBSD base.txz
OCI_BASE_IMAGE=notoolchain
oci_image_build() {
set_cmd ${workdir} /bin/sh
install_packages ${abi} ${workdir} \
FreeBSD-clang \
FreeBSD-ctf-tools \
FreeBSD-lld \
FreeBSD-lldb \
FreeBSD-toolchain \
FreeBSD-*-dev
}