commit: 2fdec44028f9ca59ffb10018be9b0b6af79d3ceb Author: Pacho Ramos <pacho <AT> gentoo <DOT> org> AuthorDate: Sat Dec 26 15:28:17 2015 +0000 Commit: Pacho Ramos <pacho <AT> gentoo <DOT> org> CommitDate: Sat Dec 26 15:28:50 2015 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2fdec440
gnome-extra/gnome-shell-extensions: Upstream finally solved the bug with missing entries, use the patches from 'master' then Package-Manager: portage-2.2.26 .../gnome-shell-extensions-3.18.2-apps-menu.patch | 29 ++++++++ .../gnome-shell-extensions-3.18.2-apps-menu2.patch | 44 +++++++++++ .../gnome-shell-extensions-3.18.2-r2.ebuild | 86 ++++++++++++++++++++++ 3 files changed, 159 insertions(+) diff --git a/gnome-extra/gnome-shell-extensions/files/gnome-shell-extensions-3.18.2-apps-menu.patch b/gnome-extra/gnome-shell-extensions/files/gnome-shell-extensions-3.18.2-apps-menu.patch new file mode 100644 index 0000000..5c8ca71 --- /dev/null +++ b/gnome-extra/gnome-shell-extensions/files/gnome-shell-extensions-3.18.2-apps-menu.patch @@ -0,0 +1,29 @@ +From 1958ce779467f03672e8d72afa45e2ab14bee5f5 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Florian=20M=C3=BCllner?= <[email protected]> +Date: Wed, 16 Dec 2015 22:32:59 +0100 +Subject: apps-menu: Remove unused variable + +https://bugzilla.gnome.org/show_bug.cgi?id=759004 +--- + extensions/apps-menu/extension.js | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +diff --git a/extensions/apps-menu/extension.js b/extensions/apps-menu/extension.js +index 3180f3a..925d344 100644 +--- a/extensions/apps-menu/extension.js ++++ b/extensions/apps-menu/extension.js +@@ -405,10 +405,8 @@ const ApplicationsButton = new Lang.Class({ + continue; + } + let app = appSys.lookup_app(id); +- if (appInfo.should_show()) { +- let menu_id = dir.get_menu_id(); ++ if (appInfo.should_show()) + this.applicationsByCategory[categoryId].push(app); +- } + } else if (nextType == GMenu.TreeItemType.DIRECTORY) { + let subdir = iter.get_directory(); + if (!subdir.get_is_nodisplay()) +-- +cgit v0.11.2 + diff --git a/gnome-extra/gnome-shell-extensions/files/gnome-shell-extensions-3.18.2-apps-menu2.patch b/gnome-extra/gnome-shell-extensions/files/gnome-shell-extensions-3.18.2-apps-menu2.patch new file mode 100644 index 0000000..31dbaf2 --- /dev/null +++ b/gnome-extra/gnome-shell-extensions/files/gnome-shell-extensions-3.18.2-apps-menu2.patch @@ -0,0 +1,44 @@ +From 79c76a87e29e5ca70e74f3d62857c341a4ecae6c Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Florian=20M=C3=BCllner?= <[email protected]> +Date: Wed, 16 Dec 2015 18:46:42 +0100 +Subject: apps-menu: Fix .desktop entries in subdirectories + +GMenu's TreeEntries return an AppInfo that is created from the +.desktop filename, not from a desktop ID as expected by the +AppSystem. As a result, g_app_info_get_id() will simply return +the file's basename, which only matches the desktop ID if no +prefix-to-subdirectory mapping as described in the menu spec +is involved. +Fix this by basing the app lookup on the entry's desktop ID instead +of the AppInfo. + +https://bugzilla.gnome.org/show_bug.cgi?id=759004 +--- + extensions/apps-menu/extension.js | 5 ++--- + 1 file changed, 2 insertions(+), 3 deletions(-) + +diff --git a/extensions/apps-menu/extension.js b/extensions/apps-menu/extension.js +index 925d344..796d235 100644 +--- a/extensions/apps-menu/extension.js ++++ b/extensions/apps-menu/extension.js +@@ -397,15 +397,14 @@ const ApplicationsButton = new Lang.Class({ + while ((nextType = iter.next()) != GMenu.TreeItemType.INVALID) { + if (nextType == GMenu.TreeItemType.ENTRY) { + let entry = iter.get_entry(); +- let appInfo = entry.get_app_info(); + let id; + try { +- id = appInfo.get_id(); // catch non-UTF8 filenames ++ id = entry.get_desktop_file_id(); // catch non-UTF8 filenames + } catch(e) { + continue; + } + let app = appSys.lookup_app(id); +- if (appInfo.should_show()) ++ if (app.get_app_info().should_show()) + this.applicationsByCategory[categoryId].push(app); + } else if (nextType == GMenu.TreeItemType.DIRECTORY) { + let subdir = iter.get_directory(); +-- +cgit v0.11.2 + diff --git a/gnome-extra/gnome-shell-extensions/gnome-shell-extensions-3.18.2-r2.ebuild b/gnome-extra/gnome-shell-extensions/gnome-shell-extensions-3.18.2-r2.ebuild new file mode 100644 index 0000000..5601a69 --- /dev/null +++ b/gnome-extra/gnome-shell-extensions/gnome-shell-extensions-3.18.2-r2.ebuild @@ -0,0 +1,86 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" +GCONF_DEBUG="no" + +inherit gnome2 readme.gentoo + +DESCRIPTION="JavaScript extensions for GNOME Shell" +HOMEPAGE="https://wiki.gnome.org/Projects/GnomeShell/Extensions" + +LICENSE="GPL-2" +SLOT="0" +IUSE="examples" +KEYWORDS="~amd64 ~x86" + +COMMON_DEPEND=" + >=dev-libs/glib-2.26:2 + >=gnome-base/libgtop-2.28.3[introspection] + >=app-eselect/eselect-gnome-shell-extensions-20111211 +" +RDEPEND="${COMMON_DEPEND} + >=dev-libs/gjs-1.29 + dev-libs/gobject-introspection:= + dev-libs/atk[introspection] + gnome-base/gnome-menus:3[introspection] + >=gnome-base/gnome-shell-3.14.2 + media-libs/clutter:1.0[introspection] + net-libs/telepathy-glib[introspection] + x11-libs/gdk-pixbuf:2[introspection] + x11-libs/gtk+:3[introspection] + x11-libs/pango[introspection] + x11-themes/gnome-icon-theme-symbolic +" +DEPEND="${COMMON_DEPEND} + >=dev-util/intltool-0.50 + sys-devel/gettext + virtual/pkgconfig +" +# eautoreconf needs gnome-base/gnome-common + +DISABLE_AUTOFORMATTING="yes" +DOC_CONTENTS="Installed extensions installed are initially disabled by default. +To change the system default and enable some extensions, you can use +# eselect gnome-shell-extensions + +Alternatively, to enable/disable extensions on a per-user basis, +you can use the https://extensions.gnome.org/ web interface, the +gnome-extra/gnome-tweak-tool GUI, or modify the org.gnome.shell +enabled-extensions gsettings key from the command line or a script." + +src_prepare() { + # Fix https://bugzilla.gnome.org/show_bug.cgi?id=759004 (from + # 'master') + epatch "${FILESDIR}"/${PN}-3.18.2-apps-menu{,2}.patch + gnome2_src_prepare +} + +src_configure() { + gnome2_src_configure --enable-extensions=all +} + +src_install() { + gnome2_src_install + + local example="[email protected]" + if use examples; then + mv "${ED}usr/share/gnome-shell/extensions/${example}" \ + "${ED}usr/share/doc/${PF}/" || die + else + rm -r "${ED}usr/share/gnome-shell/extensions/${example}" || die + fi + + readme.gentoo_create_doc +} + +pkg_postinst() { + gnome2_pkg_postinst + + ebegin "Updating list of installed extensions" + eselect gnome-shell-extensions update + eend $? + + readme.gentoo_print_elog +}
