commit: f8216de62cab875aa7974f53263cbfeadb139589 Author: Oliver Freyermuth <o.freyermuth <AT> googlemail <DOT> com> AuthorDate: Wed Dec 24 21:45:20 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Fri Dec 26 06:34:20 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f8216de6
sys-cluster/charliecloud: add 0.43 Signed-off-by: Oliver Freyermuth <o.freyermuth <AT> googlemail.com> Part-of: https://github.com/gentoo/gentoo/pull/45153 Closes: https://github.com/gentoo/gentoo/pull/45153 Signed-off-by: Sam James <sam <AT> gentoo.org> sys-cluster/charliecloud/Manifest | 1 + sys-cluster/charliecloud/charliecloud-0.43.ebuild | 118 ++++++++++++++++++++++ 2 files changed, 119 insertions(+) diff --git a/sys-cluster/charliecloud/Manifest b/sys-cluster/charliecloud/Manifest index 781367873c76..f99abec8348a 100644 --- a/sys-cluster/charliecloud/Manifest +++ b/sys-cluster/charliecloud/Manifest @@ -1,2 +1,3 @@ DIST charliecloud-v0.41.tar.bz2 608949 BLAKE2B d832e54a9c0bafcc54041b7950f3707192f579e7880872e850a5b1d7abb49c620ae1d49d44ce65676a0480da0968a28909cb7ac2803f29b85f7f052cbca6ca38 SHA512 57897dc4e30b7ab47783fd8a38dcd5db380322ad02ef7cd524bf890e02861e05d827f332cdbfb3acfb0836e06a7a059d1e2597d8ecac99d7f5ff47d4842a7370 DIST charliecloud-v0.42.tar.bz2 613117 BLAKE2B f380ca095f99e1f96932fbe1ffc501eaf54b2cd9201e7aa7621dfb1e26bfbbc14728dc637952e3c51ede5c4fd527a61eddad8a8e554e0f912c0f4943ff16e07a SHA512 314a8a6cb21718344311e04ae241d6dc525ef8034ed5d407bbc83c33155872d9d943da650d749738a4c7a4a7ee1057cdd9cc7231e53c5fa5747f70f0a0458ef2 +DIST charliecloud-v0.43.tar.bz2 620341 BLAKE2B 3e0707cd273c6e9bacd18f3c99ae32576c842570a71689bf76029bb43b68daf52a0d2dfd2b76f0e9c5a71c0c3db1c4097c075e8ac9f538c237cb2662b7017279 SHA512 de5f25ff8ad42c8f39f6435b7b6574e497c0bae2ce9d4796258e2743c29b8b74e805f6e0092be9a4c2e90cfc86c140da13d62e0645fb281cd12f1aff9c4aa212 diff --git a/sys-cluster/charliecloud/charliecloud-0.43.ebuild b/sys-cluster/charliecloud/charliecloud-0.43.ebuild new file mode 100644 index 000000000000..892f0ea7952c --- /dev/null +++ b/sys-cluster/charliecloud/charliecloud-0.43.ebuild @@ -0,0 +1,118 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{12..14} ) + +inherit autotools optfeature python-single-r1 + +if [[ ${PV} == "9999" ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://gitlab.com/${PN}/${PN}.git" +else + SRC_URI="https://gitlab.com/${PN}/${PN}/-/archive/v${PV}/${PN}-v${PV}.tar.bz2" + KEYWORDS="~amd64 ~x86" + S="${WORKDIR}/${PN}-v${PV}" +fi + +DESCRIPTION="Lightweight user-defined software stacks for high-performance computing" +HOMEPAGE="https://charliecloud.io/" +LICENSE="Apache-2.0" + +SLOT="0" +IUSE="ch-image doc +fuse +gc +json" + +# Extensive test suite exists, but downloads container images +# directly and via Docker and installs packages inside using apt/yum. +# Additionally, clashes with portage namespacing and sandbox. +RESTRICT="test" + +DOCS=( NOTICE README.rst ) + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +DEPEND="elibc_musl? ( sys-libs/argp-standalone )" +COMMON_DEPEND=" + ch-image? ( + $(python_gen_cond_dep ' + dev-python/lark[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + ') + dev-vcs/git + net-misc/rsync + ) + fuse? ( + sys-fs/fuse:3= + sys-fs/squashfuse + ) + gc? ( + dev-libs/boehm-gc:= + ) + json? ( + dev-libs/cJSON + ) +" +RDEPEND=" + ${DEPEND} + ${COMMON_DEPEND} + ${PYTHON_DEPS} +" +BDEPEND=" + ${COMMON_DEPEND} + ${PYTHON_DEPS} + virtual/pkgconfig + doc? ( + $(python_gen_cond_dep ' + dev-python/sphinx[${PYTHON_USEDEP}] + dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}] + ') + net-misc/rsync + ) +" + +src_prepare() { + default + # Remove -W from SPHINXOPTS to prevent failure due to warnings + sed -i 's#^SPHINXOPTS .*=.*#SPHINXOPTS =#' doc/Makefile.am || die "Makefile patching failed" + eautoreconf +} + +src_configure() { + local econf_args=( + $(use_enable doc html) + $(use_enable ch-image) + $(use_with json) + # activates linking against both fuse and squashfuse + $(use_with fuse squashfuse) + $(use_with gc) + # Libdir is used as a libexec-style destination. + --libdir="${EPREFIX}"/usr/lib + # Attempts to call python-exec directly otherwise. + --with-sphinx-python="${EPYTHON}" + # This disables -Werror, see also: https://github.com/hpc/charliecloud/pull/808 + --enable-buggy-build + # Do not use bundled version of dev-python/lark. + --disable-bundled-lark + # Use correct shebang. + --with-python="${PYTHON}" + # Disable configure checks vor OverlayFS causing sandbox violations. + --disable-impolite-checks + ) + econf "${econf_args[@]}" +} + +src_install() { + docompress -x "${EPREFIX}"/usr/share/doc/"${PF}"/examples + default +} + +pkg_postinst() { + elog "Various builders are supported, as alternative to the internal ch-image." + optfeature "Building with Buildah" app-containers/buildah + optfeature "Building with Docker" app-containers/docker + optfeature "Building with Podman" app-containers/podman + optfeature "Progress bars during long operations" sys-apps/pv + optfeature "Pack and unpack squashfs images" sys-fs/squashfs-tools + optfeature "Build versioning with ch-image" dev-vcs/git +}
