summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Szuba <marecki@gentoo.org>2023-12-24 19:01:00 +0100
committerMarek Szuba <marecki@gentoo.org>2023-12-24 22:06:57 +0100
commit70fe36bfd4c4dc46d52cb17d2f33c92165e7f9d3 (patch)
treee155fc0b3b75ac70a5b740465105750b2b27cec0 /app-containers/apptainer
parentnet-p2p/syncthing: add 1.27.1 (diff)
downloadgentoo-70fe36bfd4c4dc46d52cb17d2f33c92165e7f9d3.tar.gz
gentoo-70fe36bfd4c4dc46d52cb17d2f33c92165e7f9d3.tar.bz2
gentoo-70fe36bfd4c4dc46d52cb17d2f33c92165e7f9d3.zip
app-containers/apptainer: add 1.2.5
Signed-off-by: Marek Szuba <marecki@gentoo.org>
Diffstat (limited to 'app-containers/apptainer')
-rw-r--r--app-containers/apptainer/Manifest1
-rw-r--r--app-containers/apptainer/apptainer-1.2.5.ebuild92
2 files changed, 93 insertions, 0 deletions
diff --git a/app-containers/apptainer/Manifest b/app-containers/apptainer/Manifest
index 30b4374440e6..d10be46fdbed 100644
--- a/app-containers/apptainer/Manifest
+++ b/app-containers/apptainer/Manifest
@@ -1,2 +1,3 @@
DIST apptainer-1.2.3.tar.gz 14387465 BLAKE2B b7aacb0e85ea1f8cbd2b27f321f539cee8d048cdb7f75894e9d4be39add40a0c61763bc4e8984542b1410ddea4ca67c9d341505856870075ec3f1907d5c9bc98 SHA512 d9146760c6602cddc9d7a29bfb637fe5332adb405e54667812a618245052334a97c23198b7d59296522f614654e555e083e4ed0eec72115469b3be35e2f5a0ae
DIST apptainer-1.2.4.tar.gz 14387522 BLAKE2B 8435bf590149c4e83dc32a866198fdcaa44270cad4e6722e9174352c7b00e4b13c1aa4c290991c289d71797afcd9e2411e3bcc0a2b80440528babdcf3e19bec5 SHA512 bc2ad5f10f2c8e69b4bc5b997083e2dd5f62913d195eda6213d572c3dbfe03923845882e55e1a60d395ed3019100ce26919323f9523c59ccda51d7f1397bcba3
+DIST apptainer-1.2.5.tar.gz 14360956 BLAKE2B 4ee50229e800c5505c127731944d102fd688bc5f24ea4fc11cf8216d4f3d49f8d3cb19c8f6f03d34004c36acacfe729ba51f00661b6dcd046d6f4b862a6b8dd9 SHA512 58b7e9947bfc2e2d267e126ae7f9766d04ffa943c72e9a00b649ba93fd66828ee55c8d93b114f542067b305822737516675cdca79ce0d8c1153c61fa88d058d7
diff --git a/app-containers/apptainer/apptainer-1.2.5.ebuild b/app-containers/apptainer/apptainer-1.2.5.ebuild
new file mode 100644
index 000000000000..b5e7811c6f00
--- /dev/null
+++ b/app-containers/apptainer/apptainer-1.2.5.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit 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"
+
+SLOT="0"
+LICENSE="BSD"
+KEYWORDS="~amd64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+IUSE="examples +network 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.19.0
+ dev-libs/openssl
+ sys-apps/util-linux
+ sys-fs/cryptsetup
+ sys-fs/squashfs-tools
+ sys-libs/libseccomp
+ !suid? (
+ sys-fs/e2fsprogs[fuse]
+ sys-fs/squashfuse
+ )"
+RDEPEND="${DEPEND}
+ !sys-cluster/singularity"
+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() {
+ 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 \
+ $(usex network "" "--without-network") \
+ $(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
+ if use examples; then
+ dodoc -r examples
+ fi
+}
+
+pkg_postinst() {
+ if ! use suid; then
+ local oldver
+ for oldver in ${REPLACING_VERSIONS}; do
+ if ver_test "${oldver}" -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}"
+ break
+ fi
+ done
+ fi
+}