diff --git a/dev-util/mock/Manifest b/dev-util/mock/Manifest index 8ced9060ef..6e2efc13e3 100644 --- a/dev-util/mock/Manifest +++ b/dev-util/mock/Manifest @@ -1 +1,2 @@ DIST mock-6.3.tar.gz 198503 BLAKE2B 4d901871986758b778882710a105d564e266d7c0f276e4ec58cc25e9c1f2ad78dac795a790ce9d0aa7232880c1a51683e95ac58d0c80d8ec0683cecdb40ed350 SHA512 ebfaca2d8fd75c684f1d62e36118c0708a80bcfb319a4e0d1c421734bec2df18ebc37e93ef9fdf1bb3488fddc6b632b91acc26f7890ff455ff0b0145eaa4b879 +DIST mock-6.5.tar.gz 203392 BLAKE2B 7d635b941e8e827e6cf90b3348c2c5c266ce16bfc9c6c06b6ba45f1e16f03e386fd6178a8679b4bf7c91f21819c1ae06ed81874920f6fd08a855cb1c389d36d4 SHA512 bd7a33293a1a4b0bc0ddd1c9aaaee2f71ff98e93ea2fd909ea65105a009ae22e8450ddff4cc821890fdec3007386fe7a30b31fb0444b7fa87b86b6da370758ed diff --git a/dev-util/mock/mock-6.5.ebuild b/dev-util/mock/mock-6.5.ebuild new file mode 100644 index 0000000000..cf85b5c4b0 --- /dev/null +++ b/dev-util/mock/mock-6.5.ebuild @@ -0,0 +1,102 @@ +# Copyright 2023-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..14} ) + +inherit bash-completion-r1 optfeature python-single-r1 + +DESCRIPTION="Simple chroot build environment manager for building RPMs" +HOMEPAGE=" + https://rpm-software-management.github.io/mock/ + https://github.com/rpm-software-management/mock/ +" +SRC_URI="https://github.com/rpm-software-management/mock/releases/download/${P}-1/${P}.tar.gz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64" +IUSE="test" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +RESTRICT="!test? ( test )" + +RDEPEND=" + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + app-arch/rpm[caps,python,${PYTHON_SINGLE_USEDEP}] + dev-python/backoff[${PYTHON_USEDEP}] + dev-python/distro[${PYTHON_USEDEP}] + dev-python/pyroute2[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/rpmautospec-core[${PYTHON_USEDEP}] + dev-python/templated-dictionary[${PYTHON_USEDEP}] + ') + acct-group/mock + || ( app-containers/podman sys-apps/dnf5 ) + dev-util/distribution-gpg-keys + dev-util/mock-core-configs +" +BDEPEND=" + ${PYTHON_DEPS} + $(python_gen_cond_dep 'dev-python/argparse-manpage[${PYTHON_USEDEP}]') + test? ( $(python_gen_cond_dep ' + dev-python/jsonschema[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + ') ) +" + +src_prepare() { + default + + sed -i -e "s|^VERSION\s*=.*|VERSION=\"${PV}\"|" \ + -e "s|^SYSCONFDIR\s*=.*|SYSCONFDIR=\"${EPREFIX}/etc\"|" \ + -e "s|^PYTHONDIR\s*=.*|PYTHONDIR=\"$(python_get_sitedir)\"|" \ + -e "s|^PKGPYTHONDIR\s*=.*|PKGPYTHONDIR=\"$(python_get_sitedir)/mockbuild\"|" \ + py/mockbuild/constants.py py/mock-parse-buildlog.py || die + + sed -i -e "s|^_MOCK_NVR = None$|_MOCK_NVR = \"${P}-1\"|" py/mock.py || die + sed -i -e "s|@VERSION@|${PV}|" docs/mock.1 docs/mock-parse-buildlog.1 || die + + sed -i -e 's|"/bin/free"|"/usr/bin/free"|' py/mockbuild/plugins/hw_info.py || die + + # bug #928266: remove unnecessary completion target for us + sed -i -e "s/ mock.py//" -e "s/ mock-parse-buildlog.py//" etc/bash_completion.d/mock || die +} + +src_compile() { + argparse-manpage --pyfile py/mock-hermetic-repo.py --function _argparser > mock-hermetic-repo.1 || die +} + +src_install() { + python_domodule py/mockbuild + python_newscript py/mock.py mock + python_newscript py/mock-hermetic-repo.py mock-hermetic-repo + python_newscript py/mock-parse-buildlog.py mock-parse-buildlog + dobin mockchain + + dobashcomp etc/bash_completion.d/mock + bashcomp_alias mock mock-parse-buildlog + dodoc docs/site-defaults.cfg + doman docs/mock.1 docs/mock-parse-buildlog.1 mock-hermetic-repo.1 + + insinto /etc/mock + doins etc/mock/* + insinto /etc/pki/mock + doins etc/pki/* + + diropts -m0775 -o root -g mock + keepdir /var/lib/mock +} + +src_test() { + PYTHONPATH=py epytest tests +} + +pkg_postinst() { + optfeature "chain mode support" app-arch/createrepo_c + optfeature "pigz in root_cache plugin" app-arch/pigz + optfeature "nspawn instead of chroot" sys-apps/systemd + optfeature "lvm_root plugin support" sys-fs/lvm2 + optfeature "procenv plugin support" sys-process/procenv +}