summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-misc/spice-gtk')
-rw-r--r--net-misc/spice-gtk/Manifest1
-rw-r--r--net-misc/spice-gtk/spice-gtk-0.40.ebuild139
-rw-r--r--net-misc/spice-gtk/spice-gtk-9999.ebuild60
3 files changed, 178 insertions, 22 deletions
diff --git a/net-misc/spice-gtk/Manifest b/net-misc/spice-gtk/Manifest
index 5de070645502..258e52e337ea 100644
--- a/net-misc/spice-gtk/Manifest
+++ b/net-misc/spice-gtk/Manifest
@@ -1 +1,2 @@
DIST spice-gtk-0.39.tar.xz 845528 BLAKE2B c886c4c9f0e51d7f2bf6dbfe574f1a2bcab249f863cb7da1f009410572cdaa7a35ef98fc370a7e74f7e490ad3bfe8ffa832601f8bb0b0894b90ec1de76495ce9 SHA512 ff0f3ca6b10a2c415f2fa8d61464c5710aaa2a46c2c83909f146fa45f01151e756d9c3d79cb162dd3d0c1279b6ef55a67fc5c1266af2cb5b46ac1eaa0254c8d2
+DIST spice-gtk-0.40.tar.xz 848688 BLAKE2B 1046361ca40037bca826759bd7dc86f522640d39c08b1579f8e25bc2a2510665034445f7421d4de0485df9ef868e19779000c643035842f18e16555e3a1936b3 SHA512 b6db8b56c5c36158d97b3f7690d18883c4d6076e4ed1de1763fc704f9a2397b60d6170b70882d7d0a977b32be334756b7a27d66849f53e4d3b82abb8a54a0892
diff --git a/net-misc/spice-gtk/spice-gtk-0.40.ebuild b/net-misc/spice-gtk/spice-gtk-0.40.ebuild
new file mode 100644
index 000000000000..7e642d9ecb49
--- /dev/null
+++ b/net-misc/spice-gtk/spice-gtk-0.40.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VALA_MIN_API_VERSION="0.14"
+VALA_USE_DEPEND="vapigen"
+
+PYTHON_COMPAT=( python3_{8..10} )
+
+inherit desktop meson optfeature python-any-r1 readme.gentoo-r1 vala xdg
+
+DESCRIPTION="Set of GObject and Gtk objects for connecting to Spice servers and a client GUI"
+HOMEPAGE="https://www.spice-space.org https://cgit.freedesktop.org/spice/spice-gtk/"
+if [[ ${PV} == *9999* ]] ; then
+ EGIT_REPO_URI="https://anongit.freedesktop.org/git/spice/spice-gtk.git"
+ inherit git-r3
+
+ SPICE_PROTOCOL_VER=9999
+else
+ SRC_URI="https://www.spice-space.org/download/gtk/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+
+ SPICE_PROTOCOL_VER=0.14.3
+fi
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+IUSE="+gtk3 +introspection lz4 mjpeg policykit sasl smartcard usbredir vala wayland webdav"
+
+# TODO:
+# * check if sys-freebsd/freebsd-lib (from virtual/acl) provides acl/libacl.h
+# * use external pnp.ids as soon as that means not pulling in gnome-desktop
+RDEPEND="
+ >=dev-libs/glib-2.46:2
+ dev-libs/json-glib:0=
+ media-libs/gst-plugins-base:1.0
+ media-libs/gst-plugins-good:1.0
+ media-libs/gstreamer:1.0[introspection?]
+ media-libs/opus
+ media-libs/libjpeg-turbo:=
+ sys-libs/zlib
+ >=x11-libs/cairo-1.2
+ >=x11-libs/pixman-0.17.7
+ x11-libs/libX11
+ gtk3? ( x11-libs/gtk+:3[introspection?] )
+ introspection? ( dev-libs/gobject-introspection )
+ dev-libs/openssl:=
+ lz4? ( app-arch/lz4 )
+ sasl? ( dev-libs/cyrus-sasl )
+ smartcard? ( app-emulation/qemu[smartcard] )
+ usbredir? (
+ sys-apps/hwdata
+ >=sys-apps/usbredir-0.4.2
+ virtual/libusb:1
+ policykit? (
+ sys-apps/acl
+ >=sys-auth/polkit-0.110-r1
+ )
+ )
+ webdav? (
+ net-libs/phodav:2.0
+ >=net-libs/libsoup-2.49.91:2.4
+ )
+"
+# TODO: spice-gtk has an automagic dependency on x11-libs/libva without a
+# configure knob. The package is relatively lightweight so we just depend
+# on it unconditionally for now. It would be cleaner to transform this into
+# a USE="vaapi" conditional and patch the buildsystem...
+RDEPEND="${RDEPEND}
+ amd64? ( x11-libs/libva:= )
+ arm64? ( x11-libs/libva:= )
+ x86? ( x11-libs/libva:= )
+"
+DEPEND="${RDEPEND}
+ >=app-emulation/spice-protocol-${SPICE_PROTOCOL_VER}"
+BDEPEND="
+ dev-perl/Text-CSV
+ dev-util/glib-utils
+ >=sys-devel/gettext-0.17
+ virtual/pkgconfig
+ vala? ( $(vala_depend) )
+ $(python_gen_any_dep '
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/pyparsing[${PYTHON_USEDEP}]
+ ')
+"
+
+python_check_deps() {
+ python_has_version "dev-python/six[${PYTHON_USEDEP}]" &&
+ python_has_version "dev-python/pyparsing[${PYTHON_USEDEP}]"
+}
+
+src_prepare() {
+ default
+
+ use vala && vala_src_prepare
+}
+
+src_configure() {
+ local emesonargs=(
+ $(meson_feature gtk3 gtk)
+ $(meson_feature introspection)
+ $(meson_use mjpeg builtin-mjpeg)
+ $(meson_feature policykit polkit)
+ $(meson_feature lz4)
+ $(meson_feature sasl)
+ $(meson_feature smartcard)
+ $(meson_feature usbredir)
+ $(meson_feature vala vapi)
+ $(meson_feature webdav)
+ $(meson_feature wayland wayland-protocols)
+ )
+
+ if use usbredir; then
+ emesonargs+=(
+ -Dusb-acl-helper-dir=/usr/libexec
+ -Dusb-ids-path="${EPREFIX}"/usr/share/hwdata/usb.ids
+ )
+ fi
+
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+
+ # bug #775554
+ fowners root:root /usr/libexec/spice-client-glib-usb-acl-helper
+ fperms 4755 /usr/libexec/spice-client-glib-usb-acl-helper
+
+ make_desktop_entry spicy Spicy "utilities-terminal" "Network;RemoteAccess;"
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ optfeature "Sound support (via pulseaudio)" media-plugins/gst-plugins-pulse
+}
diff --git a/net-misc/spice-gtk/spice-gtk-9999.ebuild b/net-misc/spice-gtk/spice-gtk-9999.ebuild
index 5d2a172d0ec3..7e642d9ecb49 100644
--- a/net-misc/spice-gtk/spice-gtk-9999.ebuild
+++ b/net-misc/spice-gtk/spice-gtk-9999.ebuild
@@ -1,23 +1,32 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
VALA_MIN_API_VERSION="0.14"
VALA_USE_DEPEND="vapigen"
-PYTHON_COMPAT=( python3_{7..10} )
+PYTHON_COMPAT=( python3_{8..10} )
-inherit desktop git-r3 meson python-any-r1 readme.gentoo-r1 vala xdg-utils
+inherit desktop meson optfeature python-any-r1 readme.gentoo-r1 vala xdg
DESCRIPTION="Set of GObject and Gtk objects for connecting to Spice servers and a client GUI"
HOMEPAGE="https://www.spice-space.org https://cgit.freedesktop.org/spice/spice-gtk/"
+if [[ ${PV} == *9999* ]] ; then
+ EGIT_REPO_URI="https://anongit.freedesktop.org/git/spice/spice-gtk.git"
+ inherit git-r3
+
+ SPICE_PROTOCOL_VER=9999
+else
+ SRC_URI="https://www.spice-space.org/download/gtk/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+
+ SPICE_PROTOCOL_VER=0.14.3
+fi
LICENSE="LGPL-2.1"
SLOT="0"
-EGIT_REPO_URI="https://anongit.freedesktop.org/git/spice/spice-gtk.git"
-KEYWORDS=""
-IUSE="+gtk3 +introspection lz4 mjpeg policykit pulseaudio sasl smartcard usbredir vala webdav"
+IUSE="+gtk3 +introspection lz4 mjpeg policykit sasl smartcard usbredir vala wayland webdav"
# TODO:
# * check if sys-freebsd/freebsd-lib (from virtual/acl) provides acl/libacl.h
@@ -29,17 +38,15 @@ RDEPEND="
media-libs/gst-plugins-good:1.0
media-libs/gstreamer:1.0[introspection?]
media-libs/opus
+ media-libs/libjpeg-turbo:=
sys-libs/zlib
- virtual/jpeg:0=
>=x11-libs/cairo-1.2
>=x11-libs/pixman-0.17.7
+ x11-libs/libX11
gtk3? ( x11-libs/gtk+:3[introspection?] )
introspection? ( dev-libs/gobject-introspection )
- dev-libs/openssl:0=
+ dev-libs/openssl:=
lz4? ( app-arch/lz4 )
- pulseaudio? (
- media-plugins/gst-plugins-pulse:1.0
- )
sasl? ( dev-libs/cyrus-sasl )
smartcard? ( app-emulation/qemu[smartcard] )
usbredir? (
@@ -53,7 +60,8 @@ RDEPEND="
)
webdav? (
net-libs/phodav:2.0
- >=net-libs/libsoup-2.49.91:2.4 )
+ >=net-libs/libsoup-2.49.91:2.4
+ )
"
# TODO: spice-gtk has an automagic dependency on x11-libs/libva without a
# configure knob. The package is relatively lightweight so we just depend
@@ -65,16 +73,13 @@ RDEPEND="${RDEPEND}
x86? ( x11-libs/libva:= )
"
DEPEND="${RDEPEND}
- ~app-emulation/spice-protocol-9999
+ >=app-emulation/spice-protocol-${SPICE_PROTOCOL_VER}"
+BDEPEND="
dev-perl/Text-CSV
dev-util/glib-utils
- >=dev-util/gtk-doc-am-1.14
>=sys-devel/gettext-0.17
virtual/pkgconfig
vala? ( $(vala_depend) )
-"
-
-BDEPEND="
$(python_gen_any_dep '
dev-python/six[${PYTHON_USEDEP}]
dev-python/pyparsing[${PYTHON_USEDEP}]
@@ -82,8 +87,8 @@ BDEPEND="
"
python_check_deps() {
- has_version "dev-python/six[${PYTHON_USEDEP}]" &&
- has_version "dev-python/pyparsing[${PYTHON_USEDEP}]"
+ python_has_version "dev-python/six[${PYTHON_USEDEP}]" &&
+ python_has_version "dev-python/pyparsing[${PYTHON_USEDEP}]"
}
src_prepare() {
@@ -98,18 +103,20 @@ src_configure() {
$(meson_feature introspection)
$(meson_use mjpeg builtin-mjpeg)
$(meson_feature policykit polkit)
- $(meson_feature pulseaudio pulse)
$(meson_feature lz4)
$(meson_feature sasl)
$(meson_feature smartcard)
$(meson_feature usbredir)
$(meson_feature vala vapi)
$(meson_feature webdav)
+ $(meson_feature wayland wayland-protocols)
)
if use usbredir; then
- emesonargs+=( -D "usb-acl-helper-dir=/usr/libexec" )
- emesonargs+=( -D "usb-ids-path=${EPREFIX}/usr/share/hwdata/usb.ids" )
+ emesonargs+=(
+ -Dusb-acl-helper-dir=/usr/libexec
+ -Dusb-ids-path="${EPREFIX}"/usr/share/hwdata/usb.ids
+ )
fi
meson_src_configure
@@ -118,6 +125,15 @@ src_configure() {
src_install() {
meson_src_install
+ # bug #775554
+ fowners root:root /usr/libexec/spice-client-glib-usb-acl-helper
+ fperms 4755 /usr/libexec/spice-client-glib-usb-acl-helper
+
make_desktop_entry spicy Spicy "utilities-terminal" "Network;RemoteAccess;"
readme.gentoo_create_doc
}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ optfeature "Sound support (via pulseaudio)" media-plugins/gst-plugins-pulse
+}