commit:     1fd5a98ac0b6f26bcde5ab7916716369ce26d990
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Mon Mar  2 16:24:38 2020 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Mon Mar  2 16:35:09 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1fd5a98a

gnome-extra/gnome-shell-extensions-topicons-plus: add snapshot for 3.34 
compatibility

Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 .../gnome-shell-extensions-topicons-plus/Manifest  |  1 +
 .../files/restore-3.22-compat.patch                | 42 +++++++++++++++++++
 ...ll-extensions-topicons-plus-22_p20190929.ebuild | 49 ++++++++++++++++++++++
 3 files changed, 92 insertions(+)

diff --git a/gnome-extra/gnome-shell-extensions-topicons-plus/Manifest 
b/gnome-extra/gnome-shell-extensions-topicons-plus/Manifest
index 4fec0da8f31..7875895145f 100644
--- a/gnome-extra/gnome-shell-extensions-topicons-plus/Manifest
+++ b/gnome-extra/gnome-shell-extensions-topicons-plus/Manifest
@@ -1 +1,2 @@
 DIST gnome-shell-extensions-topicons-plus-22.tar.gz 2757811 BLAKE2B 
8bfe719d4a0e4d58db9b21d354e841ea69b88d82c69ba6aa4ebc8db65acde9330553487d0a0d3b623d5a6a2a18ff67e6ad4e45133c6e7b8a77e07bd90c589e63
 SHA512 
f0589bd8ed6697d616772ab374e9aa80779512d38c50f82c375820c02c06ef26a50b2a8c78c4e5fab5dc8588ed5fdcf0b7e73e7868af0855545528e741aa280d
+DIST gnome-shell-extensions-topicons-plus-22_p20190929.tar.gz 2759460 BLAKE2B 
2eb001f472395ade58503a860d3ea8248bb8aeb36b4d6f13f65e1074694aecc02f814d18d449206e1055984177896ac787fd925b4cf2680f226ffaace042cc5d
 SHA512 
47cb156f7a61780a53311855d716c4e4f539832080fc011db634b472b5a8aa0e9fad5b6f44bf2da30665cd97b850725822ee9fb9ed9da014388cf4adeee60fbe

diff --git 
a/gnome-extra/gnome-shell-extensions-topicons-plus/files/restore-3.22-compat.patch
 
b/gnome-extra/gnome-shell-extensions-topicons-plus/files/restore-3.22-compat.patch
new file mode 100644
index 00000000000..9d3104a7da5
--- /dev/null
+++ 
b/gnome-extra/gnome-shell-extensions-topicons-plus/files/restore-3.22-compat.patch
@@ -0,0 +1,42 @@
+From 0a357137c27d3e1f2f236a1e76e7b38f6e39d846 Mon Sep 17 00:00:00 2001
+From: "Robin A. Meade" <robin.a.me...@gmail.com>
+Date: Thu, 31 Oct 2019 16:08:24 -1000
+Subject: [PATCH] Fix TopIcons no longer working with gnome-shell < 3.33.90
+
+This fixes the following error:
+gnome-shell: JS ERROR: TypeError: Main.extensionManager is undefined
+onTrayIconAdded@/usr/share/gnome-shell/extensions/topic...@phocean.net/extension.js:85:1
+
+Related:
+https://github.com/phocean/TopIcons-plus/commit/43f991d1533e8d4002bd25ae6afd8a1568c39b36#diff-06f1274e40de25abda72d812b1cce86a
+https://bugzilla.redhat.com/show_bug.cgi?id=1767544
+---
+ extension.js | 15 ++++++++++++---
+ 1 file changed, 12 insertions(+), 3 deletions(-)
+
+diff --git a/extension.js b/extension.js
+index 191fa5c..116a60b 100644
+--- a/extension.js
++++ b/extension.js
+@@ -82,9 +82,18 @@ function onTrayIconAdded(o, icon, role, delay=1000) {
+     // loop through the array and hide the extension if extension X is 
enabled and corresponding application is running
+     let iconWmClass = icon.wm_class ? icon.wm_class.toLowerCase() : '';
+     for (let [wmClass, uuid] of blacklist) {
+-        if (Main.extensionManager.lookup(uuid) &&
+-            iconWmClass === wmClass)
+-            return;
++        if (Main.extensionManager === undefined) {
++            // For gnome-shell < 3.33.90
++            if (ExtensionUtils.extensions[uuid] !== undefined &&
++                ExtensionUtils.extensions[uuid].state === 1 &&
++                iconWmClass === wmClass)
++                return;
++        } else {
++            // For gnome-shell >= 3.33.90
++            if (Main.extensionManager.lookup(uuid) &&
++                iconWmClass === wmClass)
++                return;
++        }
+     }
+ 
+     let iconContainer = new St.Button({child: icon, visible: false});

diff --git 
a/gnome-extra/gnome-shell-extensions-topicons-plus/gnome-shell-extensions-topicons-plus-22_p20190929.ebuild
 
b/gnome-extra/gnome-shell-extensions-topicons-plus/gnome-shell-extensions-topicons-plus-22_p20190929.ebuild
new file mode 100644
index 00000000000..31bf7980e4f
--- /dev/null
+++ 
b/gnome-extra/gnome-shell-extensions-topicons-plus/gnome-shell-extensions-topicons-plus-22_p20190929.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+COMMIT_HASH="ad2dd1ad48ad9a5899e14a9e0873244a3e15b82e"
+DESCRIPTION="Moves legacy tray icons to top panel"
+HOMEPAGE="https://extensions.gnome.org/extension/1031/topicons/";
+SRC_URI="https://github.com/phocean/TopIcons-plus/archive/${COMMIT_HASH}.tar.gz
 -> ${P}.tar.gz"
+S="${WORKDIR}/TopIcons-plus-${COMMIT_HASH}"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+# glib for glib-compile-schemas at build time, needed at runtime anyways
+DEPEND="
+       dev-libs/glib:2
+"
+RDEPEND="${DEPEND}
+       app-eselect/eselect-gnome-shell-extensions
+       >=gnome-base/gnome-shell-3.16
+"
+BDEPEND=""
+
+PATCHES=(
+       "${FILESDIR}"/restore-3.22-compat.patch # 
https://github.com/phocean/TopIcons-plus/pull/136
+)
+
+#src_compile() {
+       # It redoes this with "make install" later due to a dumb Makefile, so 
don't bother
+       #make build
+#}
+
+src_install() {
+       # TODO: Figure out if we can get the schemas to standard location, in a 
way that works properly runtime too
+       make install INSTALL_PATH="${ED}/usr/share/gnome-shell/extensions/"
+       rm 
"${ED}/usr/share/gnome-shell/extensions/topic...@phocean.net/README.md" || die
+       # Assuming it needs only compiled gettext catalogs at runtime
+       rm 
"${ED}/usr/share/gnome-shell/extensions/topic...@phocean.net/locale"/*/LC_MESSAGES/*.po
 || die
+       dodoc README.md
+}
+
+pkg_postinst() {
+       ebegin "Updating list of installed extensions"
+       eselect gnome-shell-extensions update
+       eend $?
+}

Reply via email to