diff options
author | Marek Szuba <marecki@gentoo.org> | 2023-09-18 16:48:43 +0100 |
---|---|---|
committer | Marek Szuba <marecki@gentoo.org> | 2023-09-18 16:50:00 +0100 |
commit | 03bc01cdc57cec891e65f89d276490afdfa67ac1 (patch) | |
tree | 6d9ecde5b2dc9e2b14ba2b7457c2630e0de51716 /app-containers | |
parent | app-admin/ansible-lint: add 6.19.0, drop 6.17.2 (diff) | |
download | gentoo-03bc01cdc57cec891e65f89d276490afdfa67ac1.tar.gz gentoo-03bc01cdc57cec891e65f89d276490afdfa67ac1.tar.bz2 gentoo-03bc01cdc57cec891e65f89d276490afdfa67ac1.zip |
app-containers/apptainer: add 1.2.3
Signed-off-by: Marek Szuba <marecki@gentoo.org>
Diffstat (limited to 'app-containers')
-rw-r--r-- | app-containers/apptainer/Manifest | 1 | ||||
-rw-r--r-- | app-containers/apptainer/apptainer-1.2.3.ebuild | 92 |
2 files changed, 93 insertions, 0 deletions
diff --git a/app-containers/apptainer/Manifest b/app-containers/apptainer/Manifest index 68b2a2c9665b..d4e49c24a546 100644 --- a/app-containers/apptainer/Manifest +++ b/app-containers/apptainer/Manifest @@ -1,2 +1,3 @@ DIST apptainer-1.1.8.tar.gz 12935652 BLAKE2B a9c34bb407d002fa50cb5f96c0e7071aa05f8a17f3c98689d9392f23fc9336364137f23b582eb84ba860497f274fc393634d3702df62b99ad4320d0ac1ed69b0 SHA512 726fd7da3d43980c3d3914b089288d27cde941fa0ff7e206b3330bc7b0085de45a192e12ed794c2d81661d90260e10512bca61bfd7344cb1ae74ff64b5f8ebb5 DIST apptainer-1.2.2.tar.gz 14398077 BLAKE2B 86f5ed5218928854a7266251378480fdf76b370dad194995d55b5b85127b82dee2f2462b2b5a7ce1bd6e86552890286cf6c6f28c14c6ae98f7e56f4a3078c78f SHA512 e93f4b01379fdfce475bac3896b51fec4bbb208bd643b839572e2b9844a653e60f292b560207b460f1d087a49464291430dd6705b11741885900746856f33384 +DIST apptainer-1.2.3.tar.gz 14387465 BLAKE2B b7aacb0e85ea1f8cbd2b27f321f539cee8d048cdb7f75894e9d4be39add40a0c61763bc4e8984542b1410ddea4ca67c9d341505856870075ec3f1907d5c9bc98 SHA512 d9146760c6602cddc9d7a29bfb637fe5332adb405e54667812a618245052334a97c23198b7d59296522f614654e555e083e4ed0eec72115469b3be35e2f5a0ae diff --git a/app-containers/apptainer/apptainer-1.2.3.ebuild b/app-containers/apptainer/apptainer-1.2.3.ebuild new file mode 100644 index 000000000000..b5e7811c6f00 --- /dev/null +++ b/app-containers/apptainer/apptainer-1.2.3.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 +} |