gnome-extra/gnome-shell-extension-desktop-icons-ng: Support gnome 44

Thanks-to: David
Closes: https://bugs.gentoo.org/905760
Signed-off-by: Pacho Ramos <pacho@gentoo.org>
This commit is contained in:
Pacho Ramos
2023-05-05 15:46:29 +02:00
parent 50257231b0
commit 6c07f5a8a6
2 changed files with 120 additions and 0 deletions

View File

@@ -0,0 +1,72 @@
From 6a2787f5500c50162933de88d09bc20e7b0718b9 Mon Sep 17 00:00:00 2001
From: Daniel van Vugt <daniel.van.vugt@canonical.com>
Date: Fri, 3 Feb 2023 15:20:52 +0800
Subject: [PATCH 1/2] extension: Attempt Mutter 44 API if the old one fails
There is no other way to detect this nicely. The API changed in
Mutter 44 but the shell version is still advertised as 43.1 at time of
writing, and there are no new exports we can look for in the offending
mutter commit. So just try both APIs.
Fixes: https://launchpad.net/bugs/2004623
---
extension.js | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/extension.js b/extension.js
index 138ba4ca..db3f13a6 100644
--- a/extension.js
+++ b/extension.js
@@ -19,6 +19,7 @@
const GLib = imports.gi.GLib;
const Gio = imports.gi.Gio;
const Meta = imports.gi.Meta;
+const Shell = imports.gi.Shell;
const St = imports.gi.St;
const Main = imports.ui.main;
@@ -489,7 +490,14 @@ var LaunchSubprocess = class {
this.cancellable = new Gio.Cancellable();
this._launcher = new Gio.SubprocessLauncher({flags: flags | Gio.SubprocessFlags.STDOUT_PIPE | Gio.SubprocessFlags.STDERR_MERGE});
if (Meta.is_wayland_compositor()) {
- this._waylandClient = Meta.WaylandClient.new(this._launcher);
+ try {
+ this._waylandClient = Meta.WaylandClient.new(this._launcher);
+ } catch (e) {
+ let context = Shell.Global.get().context;
+ this._waylandClient = Meta.WaylandClient.new(context,
+ this._launcher);
+ }
+
if (Config.PACKAGE_VERSION == '3.38.0') {
// workaround for bug in 3.38.0
this._launcher.ref();
--
GitLab
From 5671fea5ab89e2b79b22a11cc1ca936e6fb85505 Mon Sep 17 00:00:00 2001
From: Daniel van Vugt <daniel.van.vugt@canonical.com>
Date: Fri, 3 Feb 2023 15:24:00 +0800
Subject: [PATCH 2/2] metadata: When GNOME 44 comes, we're ready.
---
metadata.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/metadata.json b/metadata.json
index ffd85e4e..32eac471 100644
--- a/metadata.json
+++ b/metadata.json
@@ -1,7 +1,7 @@
{
"description": "Adds icons to the desktop. Fork of the original Desktop Icons extension, with several enhancements .",
"name": "Desktop Icons NG (DING)",
- "shell-version": ["3.38", "40", "41", "42", "43"],
+ "shell-version": ["3.38", "40", "41", "42", "43", "44"],
"uuid": "ding@rastersoft.com",
"url": "https://gitlab.com/rastersoft/desktop-icons-ng"
}
--
GitLab

View File

@@ -0,0 +1,48 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit gnome2-utils meson
MY_PN="desktop-icons-ng"
MY_P="${MY_PN}-${PV}"
COMMIT="9c2f2bc688e9c95335c64f1b3a6ad0cc2051d7b4"
DESCRIPTION="Fork from the desktop-icons project, with several enhancements like Drag'n'Drop"
HOMEPAGE="https://gitlab.com/rastersoft/desktop-icons-ng"
SRC_URI="https://gitlab.com/rastersoft/desktop-icons-ng/-/archive/${PV}/${P}.tar.bz2"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
COMMON_DEPEND="dev-libs/glib:2"
RDEPEND="${COMMON_DEPEND}
app-eselect/eselect-gnome-shell-extensions
>=gnome-base/gnome-shell-3.38
>=gnome-base/nautilus-3.38
"
DEPEND="${COMMON_DEPEND}"
BDEPEND=""
S="${WORKDIR}/${MY_P}-${COMMIT}"
PATCHES=(
"${FILESDIR}/${P}-gnome44.patch"
)
pkg_preinst() {
gnome2_schemas_savelist
}
pkg_postinst() {
gnome2_schemas_update
ebegin "Updating list of installed extensions"
eselect gnome-shell-extensions update
eend $?
}
pkg_postrm() {
gnome2_schemas_update
}