Date: Wednesday, February 1, 2023 @ 17:50:36
Author: heftig
Revision: 467741
43.2-2: FS#71250 Add patch to work around exit crashes
Added:
gnome-shell/trunk/0001-main-Leak-the-GJS-context-and-ShellGlobal.patch
Modified:
gnome-shell/trunk/PKGBUILD
------------------------------------------------------+
0001-main-Leak-the-GJS-context-and-ShellGlobal.patch | 28 +++++++++++++++++
PKGBUILD | 10 ++++--
2 files changed, 36 insertions(+), 2 deletions(-)
Added: 0001-main-Leak-the-GJS-context-and-ShellGlobal.patch
===================================================================
--- 0001-main-Leak-the-GJS-context-and-ShellGlobal.patch
(rev 0)
+++ 0001-main-Leak-the-GJS-context-and-ShellGlobal.patch 2023-02-01
17:50:36 UTC (rev 467741)
@@ -0,0 +1,28 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jonas=20=C3=85dahl?= <[email protected]>
+Date: Wed, 6 Oct 2021 10:00:43 +0200
+Subject: [PATCH] main: Leak the GJS context and ShellGlobal
+
+There are many crash-on-exit happening as a side effect of destroying
+the GJS context. Work around these until we have a better solution by
+leaking them.
+---
+ src/main.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/main.c b/src/main.c
+index 29275cda0725..2311a74bd110 100644
+--- a/src/main.c
++++ b/src/main.c
+@@ -589,9 +589,11 @@ main (int argc, char **argv)
+
+ shell_profiler_shutdown ();
+
++#if 0
+ g_debug ("Doing final cleanup");
+ _shell_global_destroy_gjs_context (shell_global_get ());
+ g_object_unref (shell_global_get ());
++#endif
+
+ return ecode;
+ }
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2023-02-01 16:59:04 UTC (rev 467740)
+++ PKGBUILD 2023-02-01 17:50:36 UTC (rev 467741)
@@ -4,7 +4,7 @@
pkgname=gnome-shell
pkgver=43.2
-pkgrel=1
+pkgrel=2
epoch=1
pkgdesc="Next generation desktop shell"
url="https://wiki.gnome.org/Projects/GnomeShell"
@@ -57,9 +57,11 @@
source=(
"git+https://gitlab.gnome.org/GNOME/gnome-shell.git#commit=$_commit"
"git+https://gitlab.gnome.org/GNOME/libgnome-volume-control.git"
+ 0001-main-Leak-the-GJS-context-and-ShellGlobal.patch
)
b2sums=('SKIP'
- 'SKIP')
+ 'SKIP'
+
'5636fd813bc0aeafbdd52eb6335ef79b5801b800e332119b3d127a6cd188aa24051ebc718449f22bea7bedc37347ff98c7d491b35d84f573f0e4cff2046117d4')
pkgver() {
cd gnome-shell
@@ -69,6 +71,10 @@
prepare() {
cd gnome-shell
+ # https://bugs.archlinux.org/task/71250
+ # https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5560#note_1636124
+ git apply -3 ../0001-main-Leak-the-GJS-context-and-ShellGlobal.patch
+
git submodule init
git submodule set-url subprojects/gvc "$srcdir/libgnome-volume-control"
git -c protocol.file.allow=always submodule update