diff options
Diffstat (limited to 'media-video')
-rw-r--r-- | media-video/totem/Manifest | 9 | ||||
-rw-r--r-- | media-video/totem/files/totem-2.26.1-smclient-target-detection.patch | 46 | ||||
-rw-r--r-- | media-video/totem/files/totem-2.30.1-fix-gmp-plugin.patch | 87 | ||||
-rw-r--r-- | media-video/totem/files/totem-2.30.1-fix-pygtk-include.patch | 41 | ||||
-rw-r--r-- | media-video/totem/files/totem-2.30.1-fix-qt-eos.patch | 30 | ||||
-rw-r--r-- | media-video/totem/files/totem-2.90.0-smclient-target-detection.patch | 39 | ||||
-rw-r--r-- | media-video/totem/totem-2.30.1.ebuild | 182 | ||||
-rw-r--r-- | media-video/totem/totem-2.90.5.ebuild | 189 |
8 files changed, 623 insertions, 0 deletions
diff --git a/media-video/totem/Manifest b/media-video/totem/Manifest new file mode 100644 index 0000000..9956c1a --- /dev/null +++ b/media-video/totem/Manifest @@ -0,0 +1,9 @@ +AUX totem-2.26.1-smclient-target-detection.patch 1420 RMD160 4808f108ff486f5dc992ce3ea7aa1ac5d0e463da SHA1 d56ea9d8bbe96cd2edf0c68607732d4a8345c29e SHA256 5270fdce107cf60566bcd3a3eac49edeb85307503cc5228bad8ddbfbfcb695b3 +AUX totem-2.30.1-fix-gmp-plugin.patch 2659 RMD160 98ea3e484960fb15edc2df76842427bfd70d0a5b SHA1 d4d69b338aa476cc77ec802530376b42ca9ef3f9 SHA256 21dde71ce2807841f369d600f5d0e1369af9ad580e9396c66d4d0fd3d922ccd0 +AUX totem-2.30.1-fix-pygtk-include.patch 1426 RMD160 e4a186bafe7b00340f82937c145e6412021e485e SHA1 10464e94e1b77c2489d6ff5a667f80cdf6dc1d4b SHA256 b72260c8993860d6639e5524445b653b41bc4b756378b66a06e343c65f700345 +AUX totem-2.30.1-fix-qt-eos.patch 1199 RMD160 1d4e0d09ea5581a2c0670eca85a2b7a8e10743b3 SHA1 a0d7fcd8fbed625b31458b65cc63710dbe810ed0 SHA256 eb5bf9646e12b980e2fc0ab44338cddf1bd7be6058c4afe6d2413907f708de1a +AUX totem-2.90.0-smclient-target-detection.patch 1347 RMD160 d8036450e777d4ed8602f6e274b60db21b85d47a SHA1 2329108629cb3736f5a521b58a97458872b5c9ca SHA256 4a40366c2a7e7ce7e9e88279f18757c7e5ccff8d18ced75bf5efb6dee3930a3e +DIST totem-2.30.1.tar.bz2 3218782 RMD160 bf9fae0c8bb8ad23d2b33e21eeaebbb09c6ab279 SHA1 e8f68ed4c97e20210bd12d5e8431c439f7b392e1 SHA256 b6ad5ca26de437d24ca919357154b67d95d27dbebaa292ab7b66cc64e574eff7 +DIST totem-2.90.5.tar.bz2 3214471 RMD160 ea080c7d28080bd8e31e7fbb00a01bc4747fbb07 SHA1 bca4e544fa3968f73a9c81ad67357661d14ec93b SHA256 0a107492e0bf40bffedb004057746e308ec25eec50b751a1f3338f41cc7846ab +EBUILD totem-2.30.1.ebuild 4945 RMD160 e050f6c2c970a2f6fccb0b9426d664eb14963633 SHA1 e7ed9961f858477077ffce110b40b2ece9055802 SHA256 069219161da696a61d9ae5220dbe8f4e069266d9270699b1e6e4caa129b963e0 +EBUILD totem-2.90.5.ebuild 5340 RMD160 54cb9e6426d5b80c97ca9b7d5592211dcdae2ee8 SHA1 efd693d5748b84bcfb2d2a3366bc46211cdfdd05 SHA256 07a7f9f339533dd4206a12b63f600d342c375d6801bfe06cee6e570023bc6ada diff --git a/media-video/totem/files/totem-2.26.1-smclient-target-detection.patch b/media-video/totem/files/totem-2.26.1-smclient-target-detection.patch new file mode 100644 index 0000000..6be089a --- /dev/null +++ b/media-video/totem/files/totem-2.26.1-smclient-target-detection.patch @@ -0,0 +1,46 @@ +--- + Fixing passing any kind of argument to --with-smclient + + configure.in | 23 +++++++++++++++++------ + 1 file changed, 17 insertions(+), 6 deletions(-) + +Index: b/configure.in +=================================================================== +--- a/configure.in ++++ b/configure.in +@@ -226,18 +226,29 @@ GDK_TARGET="$($PKG_CONFIG --variable tar + SMCLIENT_PKGS= + AC_MSG_CHECKING([which smclient backend to use]) + AC_ARG_WITH([smclient], +- [AS_HELP_STRING([--with-smclient],[which smclient backend to use (xsmp/win32/quartz)])], ++ [AS_HELP_STRING([--with-smclient],[which smclient backend to use @<:@xsmp/win32/quartz/auto@:>@])], + [], +- [case "$GDK_TARGET" in +- x11) with_smclient=xsmp SMCLIENT_PKGS="sm" ;; ++ [$with_smclient=auto]) ++ ++ ++if test "$with_smclient" != "no"; then ++ ++ if test "$with_smclient" != "auto" -a "$with_smclient" != "yes"; then ++ GDK_TARGET="$with_smclient" ++ fi ++ ++ case "$GDK_TARGET" in ++ x11|xsmp) with_smclient=xsmp SMCLIENT_PKGS="sm" ;; + win32|quartz) with_smclient=$GDK_TARGET ;; + *) with_smclient=no ;; +- esac]) +-AC_MSG_RESULT([$with_smclient]) ++ esac ++ ++ AC_MSG_RESULT([$with_smclient]) + +-if test "$with_smclient" != "no"; then + PKG_CHECK_MODULES([SMCLIENT],[$SMCLIENT_PKGS]) + AC_DEFINE([WITH_SMCLIENT],[1],[Define if smclient is enabled]) ++else ++ AC_MSG_RESULT([$with_smclient]) + fi + + AM_CONDITIONAL([WITH_SMCLIENT],[test "$with_smclient" != "no"]) diff --git a/media-video/totem/files/totem-2.30.1-fix-gmp-plugin.patch b/media-video/totem/files/totem-2.30.1-fix-gmp-plugin.patch new file mode 100644 index 0000000..df13ef1 --- /dev/null +++ b/media-video/totem/files/totem-2.30.1-fix-gmp-plugin.patch @@ -0,0 +1,87 @@ +From d3b494595f7be012c400a4426bc89dcca1528f66 Mon Sep 17 00:00:00 2001 +From: Bastien Nocera <hadess@hadess.net> +Date: Wed, 05 May 2010 16:50:52 +0000 +Subject: Fix URL parameter usage in GMP plugin + +The URL parameter is never the baseURI, it's the same as the SRC +parameter, so some websites use both. + +Add support for the actual "baseURL" parameter instead. + +Fixes playback at: +http://www.ta3.com/sk/relacie/23_hlavne-spravy/9167_hlavne-spravy-z-27-aprila + +https://bugzilla.gnome.org/show_bug.cgi?id=617639 +--- +diff --git a/browser-plugin/totemPlugin.cpp b/browser-plugin/totemPlugin.cpp +index a30ffcc..25cf7ff 100644 +--- a/browser-plugin/totemPlugin.cpp ++++ b/browser-plugin/totemPlugin.cpp +@@ -1042,7 +1042,6 @@ totemPlugin::RequestStream (bool aForceViewer) + /* Prefer filename over src */ + if (mURLURI) { + requestURI = mURLURI; +- baseURI = mSrcURI; /* FIXME: that correct? */ + } + #endif /* TOTEM_GMP_PLUGIN */ + +@@ -1655,7 +1654,23 @@ totemPlugin::SetURL (const char* aURL) + + mURLURI = g_strdup (aURL); + +- /* FIXME: what is the correct base for the URL param? mSrcURI or mBaseURI? */ ++ /* FIXME: security checks? */ ++ /* FIXMEchpe: resolve the URI here? */ ++} ++ ++void ++totemPlugin::SetBaseURL (const char *aBaseURL) ++{ ++ g_free (mBaseURI); ++ ++ /* Don't allow empty URL */ ++ if (!aBaseURL || !aBaseURL[0]) { ++ mBaseURI = NULL; ++ return; ++ } ++ ++ mBaseURI = g_strdup (aBaseURL); ++ + /* FIXME: security checks? */ + /* FIXMEchpe: resolve the URI here? */ + } +@@ -2006,6 +2021,12 @@ totemPlugin::Init (NPMIMEType mimetype, + if (filename) { + SetURL (filename); + } ++ ++ /* http://msdn.microsoft.com/en-us/library/dd564090(v=VS.85).aspx */ ++ const char *base = (const char *) g_hash_table_lookup (args, "baseurl"); ++ if (base) ++ SetBaseURL (base); ++ + #endif /* TOTEM_GMP_PLUGIN */ + + #ifdef TOTEM_NARROWSPACE_PLUGIN +@@ -2141,6 +2162,7 @@ totemPlugin::Init (NPMIMEType mimetype, + + /* Dump some disagnostics */ + D ("mSrcURI: %s", mSrcURI ? mSrcURI : ""); ++ D ("mBaseURI: %s", mBaseURI ? mBaseURI : ""); + D ("mCache: %d", mCache); + D ("mControllerHidden: %d", mControllerHidden); + D ("mShowStatusbar: %d", mShowStatusbar); +diff --git a/browser-plugin/totemPlugin.h b/browser-plugin/totemPlugin.h +index 1cd33d1..d42b9e1 100644 +--- a/browser-plugin/totemPlugin.h ++++ b/browser-plugin/totemPlugin.h +@@ -284,6 +284,7 @@ class totemPlugin { + #ifdef TOTEM_GMP_PLUGIN + public: + void SetURL (const char* aURL); ++ void SetBaseURL (const char* aBaseURL); + const char* URL() const { return mURLURI; } + + private: +-- +cgit v0.8.3.1 diff --git a/media-video/totem/files/totem-2.30.1-fix-pygtk-include.patch b/media-video/totem/files/totem-2.30.1-fix-pygtk-include.patch new file mode 100644 index 0000000..8980dad --- /dev/null +++ b/media-video/totem/files/totem-2.30.1-fix-pygtk-include.patch @@ -0,0 +1,41 @@ +From aeeb165117a80080b044d54d5dc8b64df3128c26 Mon Sep 17 00:00:00 2001 +From: Jonathan Matthew <jonathan@kaolin.wh9.net> +Date: Fri, 07 May 2010 12:23:17 +0000 +Subject: Fix version requirements for PyGTK + +pygtk.require() actually needs the major GTK+ version, and +doesn't use the minor version in the require. + +Also make sure to check for the return value to avoid surprises. + +https://bugzilla.gnome.org/show_bug.cgi?id=617821 +--- +diff --git a/src/plugins/totem-python-module.c b/src/plugins/totem-python-module.c +index 5db787d..7eee97c 100644 +--- a/src/plugins/totem-python-module.c ++++ b/src/plugins/totem-python-module.c +@@ -151,7 +151,7 @@ totem_python_module_init_python (void) + + PySys_SetArgv (1, argv); + +- /* pygtk.require("2.8") */ ++ /* pygtk.require("2.0") */ + pygtk = PyImport_ImportModule ("pygtk"); + if (pygtk == NULL) { + g_warning ("Could not import pygtk, check your installation"); +@@ -161,7 +161,12 @@ totem_python_module_init_python (void) + + mdict = PyModule_GetDict (pygtk); + require = PyDict_GetItemString (mdict, "require"); +- PyObject_CallObject (require, Py_BuildValue ("(S)", PyString_FromString ("2.8"))); ++ PyObject_CallObject (require, Py_BuildValue ("(S)", PyString_FromString ("2.0"))); ++ if (PyErr_Occurred ()) { ++ g_warning ("Could not get required pygtk version, check your installation"); ++ PyErr_Print(); ++ return; ++ } + + /* import gobject */ + init_pygobject (); +-- +cgit v0.8.3.1 diff --git a/media-video/totem/files/totem-2.30.1-fix-qt-eos.patch b/media-video/totem/files/totem-2.30.1-fix-qt-eos.patch new file mode 100644 index 0000000..36147aa --- /dev/null +++ b/media-video/totem/files/totem-2.30.1-fix-qt-eos.patch @@ -0,0 +1,30 @@ +From f6fa6e869330bb2e64b67f966f6873412c3ca081 Mon Sep 17 00:00:00 2001 +From: Bastien Nocera <hadess@hadess.net> +Date: Fri, 07 May 2010 09:10:55 +0000 +Subject: Fix position when QT gets to EOS + +When QuickTime reaches the end of a stream, the expected behaviour +is for the position to stay at the end of the file, rather than +back at 0. +--- +diff --git a/browser-plugin/totemPlugin.cpp b/browser-plugin/totemPlugin.cpp +index 25cf7ff..5382bb2 100644 +--- a/browser-plugin/totemPlugin.cpp ++++ b/browser-plugin/totemPlugin.cpp +@@ -1276,9 +1276,12 @@ totemPlugin::TickCallback (DBusGProxy *proxy, + scriptable->mPluginState = totemNarrowSpacePlayer::eState_Playable; + break; + case TOTEM_STATE_STOPPED: +- if (scriptable->mPluginState == totemNarrowSpacePlayer::eState_Playable) ++ if (scriptable->mPluginState == totemNarrowSpacePlayer::eState_Playable) { + scriptable->mPluginState = totemNarrowSpacePlayer::eState_Complete; +- else ++ /* The QuickTime plugin expects the duration to be the ++ * length of the file on EOS */ ++ plugin->mTime = plugin->mDuration; ++ } else + scriptable->mPluginState = totemNarrowSpacePlayer::eState_Waiting; + break; + default: +-- +cgit v0.8.3.1 diff --git a/media-video/totem/files/totem-2.90.0-smclient-target-detection.patch b/media-video/totem/files/totem-2.90.0-smclient-target-detection.patch new file mode 100644 index 0000000..ad6cc69 --- /dev/null +++ b/media-video/totem/files/totem-2.90.0-smclient-target-detection.patch @@ -0,0 +1,39 @@ +diff -pur totem-2.90.0.orig/configure.in totem-2.90.0/configure.in +--- totem-2.90.0.orig/configure.in 2010-06-19 14:22:16.000000000 -0400 ++++ totem-2.90.0/configure.in 2010-06-25 20:52:05.720211025 -0400 +@@ -153,18 +153,29 @@ GDK_TARGET="$($PKG_CONFIG --variable tar + SMCLIENT_PKGS= + AC_MSG_CHECKING([which smclient backend to use]) + AC_ARG_WITH([smclient], +- [AS_HELP_STRING([--with-smclient],[which smclient backend to use (xsmp/win32/quartz)])], ++ [AS_HELP_STRING([--with-smclient],[which smclient backend to use @<:@xsmp/win32/quartz/auto@:>@])], + [], +- [case "$GDK_TARGET" in +- x11) with_smclient=xsmp SMCLIENT_PKGS="sm ice" ;; ++ [$with_smclient=auto]) ++ ++ ++if test "$with_smclient" != "no"; then ++ ++ if test "$with_smclient" != "auto" -a "$with_smclient" != "yes"; then ++ GDK_TARGET="$with_smclient" ++ fi ++ ++ case "$GDK_TARGET" in ++ x11|xsmp) with_smclient=xsmp SMCLIENT_PKGS="sm ice" ;; + win32|quartz) with_smclient=$GDK_TARGET ;; + *) with_smclient=no ;; +- esac]) +-AC_MSG_RESULT([$with_smclient]) ++ esac ++ ++ AC_MSG_RESULT([$with_smclient]) + +-if test "$with_smclient" != "no"; then + PKG_CHECK_MODULES([SMCLIENT],[$SMCLIENT_PKGS]) + AC_DEFINE([WITH_SMCLIENT],[1],[Define if smclient is enabled]) ++else ++ AC_MSG_RESULT([$with_smclient]) + fi + + AM_CONDITIONAL([WITH_SMCLIENT],[test "$with_smclient" != "no"]) diff --git a/media-video/totem/totem-2.30.1.ebuild b/media-video/totem/totem-2.30.1.ebuild new file mode 100644 index 0000000..e0803cd --- /dev/null +++ b/media-video/totem/totem-2.30.1.ebuild @@ -0,0 +1,182 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI="2" + +inherit autotools eutils gnome2 multilib python + +DESCRIPTION="Media player for GNOME" +HOMEPAGE="http://gnome.org/projects/totem/" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +#KEYWORDS="~amd64 ~x86 ~x86-fbsd" +KEYWORDS="-amd64 -x86 -x86-fbsd" + +# FIXME: Enable for now python USE flag per bug #316409 +# this change should only be noticed by people not following current +# current linux profiles default +IUSE="bluetooth debug doc galago iplayer lirc nautilus nsplugin +python tracker +youtube" #zeroconf + +# TODO: +# Cone (VLC) plugin needs someone with the right setup (remi ?) +# check gmyth requirement ? -> waiting for updates in tree +# coherence plugin not enabled until we have deps in tree +# vala ( dev-lang/vala ) requires 0.7.5 +RDEPEND=">=dev-libs/glib-2.22 + >=x11-libs/gtk+-2.19.5:2 + >=gnome-base/gconf-2.0 + >=dev-libs/totem-pl-parser-2.29.1 + >=x11-themes/gnome-icon-theme-2.16 + x11-libs/cairo + app-text/iso-codes + >=dev-libs/libxml2-2.6 + >=dev-libs/dbus-glib-0.71 + >=media-libs/gstreamer-0.10.26 + >=media-libs/gst-plugins-good-0.10 + >=media-libs/gst-plugins-base-0.10.26 + >=media-plugins/gst-plugins-gconf-0.10 + + >=media-plugins/gst-plugins-taglib-0.10 + >=media-plugins/gst-plugins-gio-0.10 + >=media-plugins/gst-plugins-pango-0.10 + >=media-plugins/gst-plugins-x-0.10 + >=media-plugins/gst-plugins-meta-0.10-r2 + + dev-libs/libunique + x11-libs/libSM + x11-libs/libX11 + x11-libs/libXtst + >=x11-libs/libXrandr-1.1.1 + >=x11-libs/libXxf86vm-1.0.1 + + bluetooth? ( || ( + net-wireless/bluez + net-wireless/bluez-libs ) ) + galago? ( >=dev-libs/libgalago-0.5.2 ) + iplayer? ( + dev-python/pygobject + dev-python/pygtk + dev-python/httplib2 + dev-python/feedparser + dev-python/beautifulsoup ) + lirc? ( app-misc/lirc ) + nautilus? ( >=gnome-base/nautilus-2.10 ) + python? ( + dev-lang/python[threads] + >=dev-python/pygtk-2.12 + dev-python/pyxdg + dev-python/gst-python + dev-python/dbus-python + dev-python/gconf-python ) + tracker? ( >=app-misc/tracker-0.7.1 ) + youtube? ( + >=dev-libs/libgdata-0.4.0 + media-plugins/gst-plugins-soup )" +# FIXME: freezes totem +# zeroconf? ( >=net-libs/libepc-0.3 ) +DEPEND="${RDEPEND} + x11-proto/xproto + x11-proto/xextproto + x11-proto/xf86vidmodeproto + app-text/scrollkeeper + gnome-base/gnome-common + app-text/gnome-doc-utils + >=dev-util/intltool-0.40 + >=dev-util/pkgconfig-0.20 + dev-util/gtk-doc-am + doc? ( >=dev-util/gtk-doc-1.11 ) + app-text/docbook-xml-dtd:4.5" +# docbook-xml-dtd is needed for user doc + +DOCS="AUTHORS ChangeLog NEWS README TODO" + +pkg_setup() { + G2CONF="${G2CONF} + --disable-scrollkeeper + --disable-schemas-install + --disable-static + --disable-vala + --with-dbus + --with-smclient + --enable-easy-codec-installation + $(use_enable nsplugin browser-plugins)" + + # Plugin configuration + G2CONF="${G2CONF} + BROWSER_PLUGIN_DIR=/usr/$(get_libdir)/nsbrowser/plugins + PLUGINDIR=/usr/$(get_libdir)/totem/plugins" + + local plugins="properties,thumbnail,screensaver,ontop,gromit,media-player-keys,skipto,brasero-disc-recorder,screenshot" + use bluetooth && plugins="${plugins},bemused" + use galago && plugins="${plugins},galago" + use iplayer && plugins="${plugins},iplayer" + use lirc && plugins="${plugins},lirc" + use python && plugins="${plugins},opensubtitles,jamendo,pythonconsole,dbus-service" + use tracker && plugins="${plugins},tracker" + use youtube && plugins="${plugins},youtube" + #use zeroconf && plugins="${plugins},publish" + + G2CONF="${G2CONF} --with-plugins=${plugins}" + + G2CONF="${G2CONF} + $(use_enable debug) + $(use_enable nautilus) + $(use_enable python)" +} + +src_prepare() { + gnome2_src_prepare + + # Fix broken smclient option passing + epatch "${FILESDIR}/${PN}-2.26.1-smclient-target-detection.patch" + + epatch "${FILESDIR}/${P}-fix-gmp-plugin.patch" + epatch "${FILESDIR}/${P}-fix-pygtk-include.patch" + epatch "${FILESDIR}/${P}-fix-qt-eos.patch" + + + intltoolize --force --copy --automake || die "intltoolize failed" + eautoreconf + + # disable pyc compiling + mv py-compile py-compile.orig + ln -s $(type -P true) py-compile +} + +src_configure() { + # FIXME: why does it need write access here, probably need to set up a fake + # home in /var/tmp like other pkgs do + + addpredict "$(unset HOME; echo ~)/.gconf" + addpredict "$(unset HOME; echo ~)/.gconfd" + addpredict "$(unset HOME; echo ~)/.gnome2" + + gnome2_src_configure +} + +src_install() { + gnome2_src_install + # Installed for plugins, but they're dlopen()-ed + # firefox, totem as well as nautilus + find "${D}" -name "*.la" -delete || die "remove of la files failed" +} + +pkg_postinst() { + gnome2_pkg_postinst + if use python; then + python_need_rebuild + python_mod_optimize /usr/$(get_libdir)/totem/plugins + fi + + ewarn + ewarn "If totem doesn't play some video format, please check your" + ewarn "USE flags on media-plugins/gst-plugins-meta" + ewarn +} + +pkg_postrm() { + gnome2_pkg_postrm + python_mod_cleanup /usr/$(get_libdir)/totem/plugins +} diff --git a/media-video/totem/totem-2.90.5.ebuild b/media-video/totem/totem-2.90.5.ebuild new file mode 100644 index 0000000..9b3942c --- /dev/null +++ b/media-video/totem/totem-2.90.5.ebuild @@ -0,0 +1,189 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-video/totem/totem-2.30.0-r1.ebuild,v 1.1 2010/06/13 20:36:55 pacho Exp $ + +EAPI="2" +WANT_AUTOMAKE="1.11" +#PYTHON_DEPEND="python? 2" +#PYTHON_USE_WITH="threads" +#PYTHON_USE_WITH_OPT="python" +inherit autotools eutils gnome2 multilib #python + +DESCRIPTION="Media player for GNOME" +HOMEPAGE="http://gnome.org/projects/totem/" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" + +# FIXME: Enable for now python USE flag per bug #316409 +# this change should only be noticed by people not following current +# current linux profiles default +IUSE="bluetooth debug doc galago lirc nautilus nsplugin tracker +youtube" #iplayer +python vala zeroconf + +# TODO: +# Cone (VLC) plugin needs someone with the right setup (remi ?) +# check gmyth requirement ? -> waiting for updates in tree +# coherence plugin not enabled until we have deps in tree +# vala ( dev-lang/vala ) requires 0.7.5 +RDEPEND=">=dev-libs/glib-2.25.11 + >=x11-libs/gtk+-2.90.3:3 + >=gnome-base/gconf-2.0 + >=dev-libs/totem-pl-parser-2.29.1 + >=dev-libs/libpeas-0.5.2[gtk] + >=x11-themes/gnome-icon-theme-2.16 + x11-libs/cairo + >=dev-libs/libxml2-2.6 + >=dev-libs/dbus-glib-0.71 + >=media-libs/gstreamer-0.10.28.1 + >=media-libs/gst-plugins-good-0.10 + >=media-libs/gst-plugins-base-0.10.26 + >=media-plugins/gst-plugins-gconf-0.10 + + >=media-plugins/gst-plugins-taglib-0.10 + >=media-plugins/gst-plugins-gio-0.10 + >=media-plugins/gst-plugins-pango-0.10 + >=media-plugins/gst-plugins-x-0.10 + >=media-plugins/gst-plugins-meta-0.10-r2 + + x11-libs/libSM + x11-libs/libX11 + x11-libs/libXtst + >=x11-libs/libXrandr-1.1.1 + >=x11-libs/libXxf86vm-1.0.1 + + nsplugin? ( >=x11-misc/shared-mime-info-0.22 ) + + bluetooth? ( || ( + net-wireless/bluez + net-wireless/bluez-libs ) ) + galago? ( >=dev-libs/libgalago-0.5.2 ) + lirc? ( app-misc/lirc ) + nautilus? ( >=gnome-base/nautilus-2.10 ) + tracker? ( >=app-misc/tracker-0.8.1 ) + youtube? ( + >=dev-libs/libgdata-0.4.0 + media-plugins/gst-plugins-soup )" +# FIXME: no libpeas[vala] yet +# vala? ( >=dev-lang/vala-0.7.5 ) + +# FIXME: disabled upstream (introspection not quite stable) +# python? ( +# dev-python/pygobject[introspection] +# >=gnome-base/gconf-2.0[introspection] +# x11-libs/gtk+-2.90.3:3[introspection] +# x11-libs/pango[introspection] +# dev-python/pyxdg +# dev-python/gst-python +# dev-python/dbus-python +# iplayer? ( +# dev-python/httplib2 +# dev-python/feedparser +# dev-python/beautifulsoup ) ) + +# FIXME: freezes totem +# zeroconf? ( >=net-libs/libepc-0.3 ) +DEPEND="${RDEPEND} + sys-devel/gettext + x11-proto/xproto + x11-proto/xextproto + x11-proto/xf86vidmodeproto + app-text/scrollkeeper + gnome-base/gnome-common + app-text/gnome-doc-utils + >=dev-util/intltool-0.40 + >=dev-util/pkgconfig-0.20 + dev-util/gtk-doc-am + doc? ( >=dev-util/gtk-doc-1.11 ) + app-text/docbook-xml-dtd:4.5" +# docbook-xml-dtd is needed for user doc + +DOCS="AUTHORS ChangeLog NEWS README TODO" + +pkg_setup() { +# python_set_active_version 2 + + G2CONF="${G2CONF} + --disable-scrollkeeper + --disable-schemas-install + --disable-static + --disable-vala + --with-dbus + --with-smclient + --enable-easy-codec-installation + $(use_enable nsplugin browser-plugins)" + + # Plugin configuration + G2CONF="${G2CONF} + BROWSER_PLUGIN_DIR=/usr/$(get_libdir)/nsbrowser/plugins" + + local plugins="thumbnail,screensaver,ontop,gromit,media-player-keys,properties,sidebar-test,skipto,screenshot,brasero-disc-recorder" + use bluetooth && plugins="${plugins},bemused" + use galago && plugins="${plugins},galago" +# use iplayer && plugins="${plugins},iplayer" + use lirc && plugins="${plugins},lirc" +# use python && plugins="${plugins},pythonconsole,jamendo,opensubtitles,dbus-service" + use tracker && plugins="${plugins},tracker" + use youtube && plugins="${plugins},youtube" + #use zeroconf && plugins="${plugins},publish" + + G2CONF="${G2CONF} --with-plugins=${plugins}" + + G2CONF="${G2CONF} + $(use_enable debug) + $(use_enable nautilus) + --disable-python + --disable-introspection" +# $(use_enable python) +# $(use_enable python introspection)" +} + +src_prepare() { + gnome2_src_prepare + + # Fix broken smclient option passing + epatch "${FILESDIR}/${PN}-2.90.0-smclient-target-detection.patch" + + intltoolize --force --copy --automake || die "intltoolize failed" + eautoreconf + + # disable pyc compiling + mv py-compile py-compile.orig + ln -s $(type -P true) py-compile +} + +src_configure() { + # FIXME: why does it need write access here, probably need to set up a fake + # home in /var/tmp like other pkgs do + + addpredict "$(unset HOME; echo ~)/.gconf" + addpredict "$(unset HOME; echo ~)/.gconfd" + addpredict "$(unset HOME; echo ~)/.gnome2" + + gnome2_src_configure +} + +src_install() { + gnome2_src_install + # Installed for plugins, but they're dlopen()-ed + # firefox, totem as well as nautilus + find "${D}" -name "*.la" -delete || die "remove of la files failed" +} + +pkg_postinst() { + gnome2_pkg_postinst +# if use python; then +# python_need_rebuild +# python_mod_optimize /usr/$(get_libdir)/totem/plugins +# fi + + ewarn + ewarn "If totem doesn't play some video format, please check your" + ewarn "USE flags on media-plugins/gst-plugins-meta" + ewarn +} + +pkg_postrm() { + gnome2_pkg_postrm +# python_mod_cleanup /usr/$(get_libdir)/totem/plugins +} |