diff options
Diffstat (limited to 'app-emulation/virt-manager')
3 files changed, 131 insertions, 0 deletions
diff --git a/app-emulation/virt-manager/Manifest b/app-emulation/virt-manager/Manifest new file mode 100644 index 00000000..f9c73776 --- /dev/null +++ b/app-emulation/virt-manager/Manifest @@ -0,0 +1 @@ +DIST virt-manager-4.0.0.tar.gz 3096236 BLAKE2B cf6ae282c6a351aab832a06387bf9daf9093c8cce3688cf0597f33d037db875638429a5320ffe28d8d860c83484ba5d6a02a8dc758c98914fa2af483552dede8 SHA512 115dc3feb499bb2f1f6df537bffe150d23b9b568fe8047d43577a138ff9b9180b10259dde3476136cdc85750576da1104e81a8c2f5761b4f2a89852467761f81 diff --git a/app-emulation/virt-manager/files/virt-manager-4.0.0-setuptools-61-fix.patch b/app-emulation/virt-manager/files/virt-manager-4.0.0-setuptools-61-fix.patch new file mode 100644 index 00000000..ace16902 --- /dev/null +++ b/app-emulation/virt-manager/files/virt-manager-4.0.0-setuptools-61-fix.patch @@ -0,0 +1,34 @@ +From c6fc4524d4448259ea85f93f85898b64a4380154 Mon Sep 17 00:00:00 2001 +From: Peter Alfredsen <crabbedhaloablution@icloud.com> +Date: Tue, 5 Apr 2022 22:04:20 +0200 +Subject: [PATCH] setup: add bits for setuptools-61 + +Quoting https://github.com/pypa/setuptools/issues/3227 +"Setuptools >= 61, intentionally changes the way packages are built in the + sensec that it will try to find files and fail if something is weird. + + Empty packages (like this one), are asked to explicitly add packages=[] + to their configuration. + + This intentional change in behaviour is described in + https://setuptools.pypa.io/en/latest/history.html#v61-0-0." + +Bug: https://bugs.gentoo.org/836645 +Signed-off-by: Peter Alfredsen <crabbedhaloablution@icloud.com> +--- + setup.py | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/setup.py b/setup.py +index e95acd39..7e47e7c7 100755 +--- a/setup.py ++++ b/setup.py +@@ -547,4 +547,5 @@ setuptools.setup( + }, + + distclass=VMMDistribution, ++ packages=[], + ) +-- +2.35.1 + diff --git a/app-emulation/virt-manager/virt-manager-4.0.0-r10.ebuild b/app-emulation/virt-manager/virt-manager-4.0.0-r10.ebuild new file mode 100644 index 00000000..b5d47432 --- /dev/null +++ b/app-emulation/virt-manager/virt-manager-4.0.0-r10.ebuild @@ -0,0 +1,96 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{8,9,10} ) +DISTUTILS_SINGLE_IMPL=1 + +DISTUTILS_USE_SETUPTOOLS=no +inherit gnome2 distutils-r1 optfeature + +DESCRIPTION="A graphical tool for administering virtual machines" +HOMEPAGE="https://virt-manager.org https://github.com/virt-manager/virt-manager" + +if [[ ${PV} = *9999* ]]; then + inherit git-r3 + SRC_URI="" + EGIT_REPO_URI="https://github.com/virt-manager/virt-manager.git" + EGIT_BRANCH="master" +else + SRC_URI="http://virt-manager.org/download/sources/${PN}/${P}.tar.gz" + KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="gtk policykit sasl" + +RDEPEND="${PYTHON_DEPS} + app-cdr/cdrtools + >=app-emulation/libvirt-glib-1.0.0[introspection] + $(python_gen_cond_dep ' + dev-libs/libxml2[python,${PYTHON_USEDEP}] + dev-python/argcomplete[${PYTHON_USEDEP}] + >=dev-python/libvirt-python-6.10.0[${PYTHON_USEDEP}] + dev-python/pygobject:3[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + ') + >=sys-libs/libosinfo-0.2.10[introspection] + gtk? ( + gnome-base/dconf + >=net-libs/gtk-vnc-0.3.8[gtk3(+),introspection] + net-misc/spice-gtk[usbredir,gtk3,introspection,sasl?] + policykit? ( sys-auth/polkit[introspection] ) + sys-apps/dbus[X] + x11-libs/gtk+:3[introspection] + x11-libs/gtksourceview:4[introspection] + x11-libs/vte:2.91[introspection] + )" +DEPEND="${RDEPEND}" +BDEPEND="dev-python/docutils" + +DOCS=( README.md NEWS.md ) + +# Doesn't seem to play nicely in a sandboxed environment. +RESTRICT="test" +distutils_enable_tests pytest + +src_prepare() { + distutils-r1_src_prepare + eapply "${FILESDIR}/virt-manager-4.0.0-setuptools-61-fix.patch" +} + +python_configure() { + esetup.py configure --default-graphics=spice +} + +python_install() { + esetup.py install +} + +src_install() { + local DISTUTILS_ARGS=( --no-update-icon-cache --no-compile-schemas ) + distutils-r1_src_install +} + +pkg_preinst() { + if use gtk; then + gnome2_pkg_preinst + + cd "${ED}" || die + export GNOME2_ECLASS_ICONS=$(find 'usr/share/virt-manager/icons' -maxdepth 1 -mindepth 1 -type d 2> /dev/null || die) + else + rm -r "${ED}/usr/share/virt-manager/ui/" || die + rm -r "${ED}/usr/share/virt-manager/icons/" || die + rm -r "${ED}/usr/share/icons/" || die + rm -r "${ED}/usr/share/applications/virt-manager.desktop" || die + rm -r "${ED}/usr/bin/virt-manager" || die + fi +} + +pkg_postinst() { + use gtk && gnome2_pkg_postinst + optfeature "SSH_ASKPASS program implementation" lxqt-base/lxqt-openssh-askpass net-misc/ssh-askpass-fullscreen net-misc/x11-ssh-askpass + optfeature "QEMU host support" app-emulation/qemu[usbredir,spice] +} |