diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/Manifest b/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/Manifest index b9dd2990b2..89a5ff8627 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/Manifest @@ -1 +1,2 @@ DIST open-vmdk-0.3.12.tar.gz 72452 BLAKE2B 36600b454c45b8ac1c5fda3f4fde982baf02f4883f454d817eb0a5f7e388df7daefce148bd4d5baee1a6b97c90b29d70ef09c4de1db06342ad92c2583ae2df7f SHA512 4a038c899a9e3c013b830dab6514260e72d6905d6e5c2da864bdcc71f125639dc2aba68e9a4a27e96037a0200bd04d0ca2cc17306e8eaf2bf2913f9eaa0afb41 +DIST open-vmdk-0.3.13.tar.gz 85587 BLAKE2B b55e16c33eb2ac8f2700ff96f0e4008164df31c24a1f4f8ebd9f73d7343977a245cf15893830e9c1c9268714cefc5f82e858f12667281c5d24d1b6b7a9ad00d6 SHA512 ec729f4975d7d6c7206f1d4694abda9278a6203210415c9bcd0c17eb7174f947e5d0b841f33a6f211de42ec32f58937065edeb2e9e901f0c5f23f01a87ddbfea diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/metadata.xml b/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/metadata.xml index 8f2f214cac..84d8b7bddd 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/metadata.xml @@ -6,6 +6,7 @@ James Le Cuirot + Install the vmdk-fuse tool Install Python-based tools diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/open-vmdk-0.3.13.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/open-vmdk-0.3.13.ebuild new file mode 100644 index 0000000000..32fbb2ec3b --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-emulation/open-vmdk/open-vmdk-0.3.13.ebuild @@ -0,0 +1,81 @@ +# Copyright 2025-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +inherit python-single-r1 toolchain-funcs + +DESCRIPTION="Tools for creating and converting OVA virtual appliance files" +HOMEPAGE="https://github.com/vmware/open-vmdk" +SRC_URI="https://github.com/vmware/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64" +IUSE="fuse +python test" +RESTRICT="!test? ( test )" +PROPERTIES="test_network fuse? ( test_privileged )" + +REQUIRED_USE=" + python? ( ${PYTHON_REQUIRED_USE} ) + test? ( ${PYTHON_REQUIRED_USE} ) +" + +PYDEPEND=" + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-libs/libxml2[python,${PYTHON_USEDEP}] + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/xmltodict[${PYTHON_USEDEP}] + ') +" +DEPEND=" + virtual/zlib + fuse? ( sys-fs/fuse:3= ) +" +RDEPEND=" + ${DEPEND} + python? ( ${PYDEPEND} ) +" +BDEPEND=" + fuse? ( virtual/pkgconfig ) + test? ( + fuse? ( sys-fs/e2fsprogs[fuse] ) + python? ( ${PYDEPEND} ) + $(python_gen_cond_dep ' + dev-python/pytest[${PYTHON_USEDEP}] + ') + ) +" + +pkg_setup() { + if use python || use test; then + python-single-r1_pkg_setup + fi +} + +my_emake() { + emake \ + "$(use python || echo DIRS='vmdk ova templates')" \ + PREFIX="${EPREFIX}/usr" \ + "${@}" +} + +src_compile() { + my_emake all $(usev fuse) CC="$(tc-getCC)" +} + +src_test() { + local ignore=() + use python || ignore+=( pytest/test_*configs.py $(grep -Flr .py pytest) ) + use fuse || ignore+=( pytest/test_fuse.py ) + use fuse && addwrite /dev/fuse + epytest "${ignore[@]/#/--ignore=}" +} + +src_install() { + my_emake install $(usex fuse install-fuse "") DESTDIR="${D}" + use python && python_fix_shebang "${ED}"/usr/bin +}