commit:     4191551675427827018593e059f04801981f4541
Author:     Florian Schmaus <flow <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 16 08:01:14 2025 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Thu Oct 16 08:09:43 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=41915516

app-containers/apptainer: add 1.4.3

Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>

 app-containers/apptainer/Manifest               |  1 +
 app-containers/apptainer/apptainer-1.4.3.ebuild | 89 +++++++++++++++++++++++++
 2 files changed, 90 insertions(+)

diff --git a/app-containers/apptainer/Manifest 
b/app-containers/apptainer/Manifest
index e6b3a116447a..3c0736ffcb58 100644
--- a/app-containers/apptainer/Manifest
+++ b/app-containers/apptainer/Manifest
@@ -1 +1,2 @@
 DIST apptainer-1.4.2.tar.gz 17404816 BLAKE2B 
c7bea7a4fd4385816ca1c2bff57dac1de5051545f0944f23cb67ae3eec1704726768c9450712fb0217f18c2a8d9a5d6c6b5cf8e6d5fda8fae6bec672338aa287
 SHA512 
370f4b9a447d627bf9a5cf97c8058735ff2be8280fb663d106f357961c9a948aac406a52d86eda9189788f38be8e0a62385f6e4fc051fad1cac3c28705d6c7b3
+DIST apptainer-1.4.3.tar.gz 17404041 BLAKE2B 
e8a39c571ebbac5ce66467f5d589a172894dc85e66e67c020302372bbc25cb1cdf9ce3edf8a215ff662e3bbed3dc946ecbde5720fa63eae53c1093d259d20e92
 SHA512 
bdbbb65b1a717424dcf2e075765bcf14f5b733eca566cfc3a9c8b2c5ad023930896a07c3288fec867b3fd45c4782ad67615d890ea8f502393742cc679cd2c1f4

diff --git a/app-containers/apptainer/apptainer-1.4.3.ebuild 
b/app-containers/apptainer/apptainer-1.4.3.ebuild
new file mode 100644
index 000000000000..93464060d5fc
--- /dev/null
+++ b/app-containers/apptainer/apptainer-1.4.3.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit eapi9-ver linux-info toolchain-funcs
+
+DESCRIPTION="The container system for secure high-performance computing"
+HOMEPAGE="https://apptainer.org/";
+SRC_URI="https://github.com/apptainer/${PN}/releases/download/v${PV}/${P}.tar.gz";
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+IUSE="+network rootless +seccomp suid systemd"
+
+# Do not complain about CFLAGS etc. since go projects do not use them.
+QA_FLAGS_IGNORED='.*'
+
+DEPEND="app-crypt/gpgme
+       >=dev-lang/go-1.23.6
+       dev-libs/openssl
+       sys-apps/util-linux
+       sys-fs/cryptsetup
+       sys-fs/squashfs-tools
+       rootless? ( sys-apps/shadow:= )
+       seccomp? ( sys-libs/libseccomp )
+       !suid? (
+               sys-fs/e2fsprogs[fuse]
+               sys-fs/squashfuse
+       )"
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+CONFIG_CHECK="~SQUASHFS"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-1.0.2-trim_upstream_cflags.patch
+)
+
+DOCS=( README.md CONTRIBUTORS.md CONTRIBUTING.md )
+
+src_configure() {
+       tc-export PKG_CONFIG
+       local myconfargs=(
+               -c "$(tc-getBUILD_CC)"
+               -x "$(tc-getBUILD_CXX)"
+               -C "$(tc-getCC)"
+               -X "$(tc-getCXX)"
+               --prefix="${EPREFIX}"/usr
+               --sysconfdir="${EPREFIX}"/etc
+               --runstatedir="${EPREFIX}"/run
+               --localstatedir="${EPREFIX}"/var
+               $(usev !network --without-network)
+               $(usev !seccomp --without-seccomp)
+               $(usev !rootless --without-libsubid)
+               $(use_with suid)
+       )
+       ./mconfig -v ${myconfargs[@]} || die "Error invoking mconfig"
+}
+
+src_compile() {
+       emake -C builddir
+}
+
+src_install() {
+       emake DESTDIR="${D}" -C builddir install
+       keepdir /var/${PN}/mnt/session
+
+       if use systemd; then
+               sed -i -e '/systemd cgroups/ s/no/yes/' 
"${ED}"/etc/${PN}/${PN}.conf \
+                       || die "Failed to enable systemd use in configuration"
+       else
+               sed -i -e '/systemd cgroups/ s/yes/no/' 
"${ED}"/etc/${PN}/${PN}.conf \
+                       || die "Failed to disable systemd use in configuration"
+       fi
+
+       einstalldocs
+       dodoc -r examples
+}
+
+pkg_postinst() {
+       if ! use suid; then
+               if ver_replacing -lt 1.1.0; then
+                       ewarn "Since version 1.1.0 ${PN} no longer installs 
setuid-root components by default, relying on unprivileged user namespaces 
instead. For details, see 
https://apptainer.org/docs/admin/main/user_namespace.html";
+                       ewarn "Make sure user namespaces (possibly except 
network ones for improved security) are enabled on your system, or re-enable 
installation of setuid root components by passing USE=suid to ${CATEGORY}/${PN}"
+               fi
+       fi
+}

Reply via email to