summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-video/totem')
-rw-r--r--media-video/totem/Manifest1
-rw-r--r--media-video/totem/files/3.38.0-gst-inspect-sandbox.patch42
-rw-r--r--media-video/totem/totem-3.38.0.ebuild119
3 files changed, 162 insertions, 0 deletions
diff --git a/media-video/totem/Manifest b/media-video/totem/Manifest
index 5b4ecf3ff768..b2ee154b2b48 100644
--- a/media-video/totem/Manifest
+++ b/media-video/totem/Manifest
@@ -1 +1,2 @@
DIST totem-3.34.1.tar.xz 2157160 BLAKE2B 9ae9c8f6485c7377af07803c328e8ea3cc6fa80d8e30a7045bd2b50f7bc3d5a12582e5b60d901d22683f89e994c619c26ddb8b0890e343c873d4457fa177786d SHA512 9a3556f5cf522fca29926db185c2e5d25bdb80a25e14d0ba3062a7f15fc3ec40ae9f25752763bc444d4fd82ec2098efd732da662a1b1c5923ec19fde432606db
+DIST totem-3.38.0.tar.xz 2235672 BLAKE2B 31a69bce69316e06b6ba1b1c98bfc5b87cae0b30e682bb1b32bbac713fb2ff262084e76c19690eb78495969a67c2be484bc45adcd1b432a3de7a33c3dc04109c SHA512 231aca873bb53f23f81a7981177761d0bf7768baa845309b0dc0821db58377d692cf7e8a65135090dac14e856aa3e1dc0c1f11c55a7b25d694822019bfa9eecf
diff --git a/media-video/totem/files/3.38.0-gst-inspect-sandbox.patch b/media-video/totem/files/3.38.0-gst-inspect-sandbox.patch
new file mode 100644
index 000000000000..ef3ea1140217
--- /dev/null
+++ b/media-video/totem/files/3.38.0-gst-inspect-sandbox.patch
@@ -0,0 +1,42 @@
+From abb91b315f407b7e180bc00eb96f1cd6bb0ab25d Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Thu, 7 Jun 2018 23:47:48 +0200
+Subject: [PATCH] Make gst-inspect calls optional at build-time
+
+Crashes on Gentoo due to plugins trying to access dri nodes which are sandboxed
+---
+ meson_options.txt | 1 +
+ src/backend/meson.build | 2 ++
+ 2 files changed, 3 insertions(+)
+
+diff --git a/meson_options.txt b/meson_options.txt
+index 7070fd5d0..678b8f588 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -3,3 +3,4 @@ option('enable-python', type: 'combo', choices: ['yes', 'no', 'auto'], value: 'a
+ option('with-plugins', type: 'combo', choices: ['all', 'none', 'auto'], value: 'auto', description: 'Which Totem plugins to compile (default: auto; "all", "none" and "auto" are valid)')
+ option('enable-gtk-doc', type: 'boolean', value: false, description: 'use gtk-doc to build documentation')
+ option('profile', type: 'combo', choices: ['default', 'development'], value: 'default', description: 'Build profiles')
++option('gst-inspect', type: 'boolean', value: true, description: 'build-time test of available gstreamer plugins')
+diff --git a/src/backend/meson.build b/src/backend/meson.build
+index fbf74258b..1e025a5b9 100644
+--- a/src/backend/meson.build
++++ b/src/backend/meson.build
+@@ -1,5 +1,6 @@
+ backend_inc = include_directories('.')
+
++if get_option('gst-inspect')
+ gst_inspect = find_program(
+ 'gst-inspect-1.0',
+ join_paths(gst_dep.get_pkgconfig_variable('toolsdir'), 'gst-inspect-1.0'),
+@@ -31,6 +32,7 @@ foreach plugin: gst_good_plugins
+ assert(r.returncode() == 0,
+ 'Cannot find required GStreamer-1.0 plugin "' + plugin + '". It should be part of gst-plugins-good. Please install it.')
+ endforeach
++endif
+
+ sources = files(
+ 'bacon-time-label.c',
+--
+2.26.3
+
diff --git a/media-video/totem/totem-3.38.0.ebuild b/media-video/totem/totem-3.38.0.ebuild
new file mode 100644
index 000000000000..89b5506cb674
--- /dev/null
+++ b/media-video/totem/totem-3.38.0.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_REQ_USE="threads(+)"
+
+inherit gnome.org gnome2-utils meson virtualx xdg python-single-r1
+
+DESCRIPTION="Media player for GNOME"
+HOMEPAGE="https://wiki.gnome.org/Apps/Videos"
+
+LICENSE="GPL-2+ LGPL-2+"
+SLOT="0"
+IUSE="gtk-doc +python test"
+# see bug #359379
+REQUIRED_USE="
+ python? ( ${PYTHON_REQUIRED_USE} )
+"
+RESTRICT="!test? ( test )"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86"
+
+DEPEND="
+ >=dev-libs/glib-2.56.0:2
+ >=x11-libs/gtk+-3.19.4:3[introspection]
+ >=media-libs/gstreamer-1.6.0:1.0
+ >=media-libs/gst-plugins-base-1.6.0:1.0[pango]
+ >=media-libs/gst-plugins-good-1.6.0:1.0
+ >=media-libs/grilo-0.3.0:0.3[playlist]
+ >=dev-libs/libpeas-1.1.0[gtk]
+ >=dev-libs/totem-pl-parser-3.26.5:0=[introspection]
+ >=media-libs/clutter-1.17.3:1.0[gtk]
+ >=media-libs/clutter-gst-2.99.2:3.0
+ >=media-libs/clutter-gtk-1.8.1:1.0
+ gnome-base/gnome-desktop:3=
+ gnome-base/gsettings-desktop-schemas
+ >=x11-libs/cairo-1.14
+ x11-libs/gdk-pixbuf:2
+ >=dev-libs/gobject-introspection-1.54:=
+
+ python? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep '
+ >=dev-python/pygobject-2.90.3:3[${PYTHON_MULTI_USEDEP}]
+ ')
+ )
+"
+RDEPEND="${DEPEND}
+ media-plugins/grilo-plugins:0.3
+ media-plugins/gst-plugins-meta:1.0
+ media-plugins/gst-plugins-taglib:1.0
+ x11-themes/adwaita-icon-theme
+ python? (
+ x11-libs/pango[introspection]
+ >=dev-libs/libpeas-1.1.0[python,${PYTHON_SINGLE_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/dbus-python[${PYTHON_MULTI_USEDEP}]
+ ')
+ )
+"
+BDEPEND="
+ dev-lang/perl
+ gtk-doc? ( >=dev-util/gtk-doc-1.14
+ app-text/docbook-xml-dtd:4.5 )
+ dev-util/glib-utils
+ dev-util/itstool
+ >=sys-devel/gettext-0.19.8
+ virtual/pkgconfig
+ x11-base/xorg-proto
+"
+# perl for pod2man
+# Prevent dev-python/pylint dep, bug #482538
+
+PATCHES=(
+ "${FILESDIR}"/${PV}-gst-inspect-sandbox.patch # Allow disabling calls to gst-inspect (sandbox issue)
+)
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ # Drop pointless samplepython plugin from build
+ sed -e '/samplepython/d' -i src/plugins/meson.build || die
+ xdg_src_prepare
+}
+
+src_configure() {
+ local emesonargs=(
+ -Denable-easy-codec-installation=yes
+ -Denable-python=$(usex python yes no)
+ -Dwith-plugins=all # in 3.34.1 only builtin and python plugins are left, and python is extra controlled by enable-python
+ $(meson_use gtk-doc enable-gtk-doc)
+ -Dgst-inspect=false
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ if use python ; then
+ python_optimize "${ED}"/usr/$(get_libdir)/totem/plugins/
+ fi
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ gnome2_schemas_update
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ gnome2_schemas_update
+}
+
+src_test() {
+ virtx meson_src_test
+}