diff --git a/srcpkgs/gnome-shell/patches/fix-ibus-env.patch b/srcpkgs/gnome-shell/patches/fix-ibus-env.patch new file mode 100644 index 00000000000..94688d46814 --- /dev/null +++ b/srcpkgs/gnome-shell/patches/fix-ibus-env.patch @@ -0,0 +1,43 @@ +From 050d0e10c79b1c16d8be4feb6035f7755f8c8b0a Mon Sep 17 00:00:00 2001 +From: xiaofan +Date: Sun, 10 Sep 2023 09:56:33 +0200 +Subject: [PATCH] ibusManager: Add missing environment variables required to + launch ibus-daemon + +IBus requires XAUTHORITY and XDG_RUNTIME_DIR to be able to spawn its XIM +implementation correctly. Using launch context to get environment can correctly +launch on non-systemd setups. + +Closes: #6998 + +Signed-off-by: xiaofan +Part-of: +--- + js/misc/ibusManager.js | 14 +++----------- + 1 file changed, 3 insertions(+), 11 deletions(-) + +diff --git a/js/misc/ibusManager.js b/js/misc/ibusManager.js +index 8988992121..510561b4d0 100644 +--- a/js/misc/ibusManager.js ++++ b/js/misc/ibusManager.js +@@ -115,17 +115,9 @@ class IBusManager extends Signals.EventEmitter { + + _spawn(extraArgs = []) { + try { +- let cmdLine = ['ibus-daemon', '--panel', 'disable', ...extraArgs]; +- let env = []; +- +- this._tryAppendEnv(env, 'DBUS_SESSION_BUS_ADDRESS'); +- this._tryAppendEnv(env, 'WAYLAND_DISPLAY'); +- this._tryAppendEnv(env, 'HOME'); +- this._tryAppendEnv(env, 'LANG'); +- this._tryAppendEnv(env, 'LC_CTYPE'); +- this._tryAppendEnv(env, 'COMPOSE_FILE'); +- this._tryAppendEnv(env, 'DISPLAY'); +- ++ const cmdLine = ['ibus-daemon', '--panel', 'disable', ...extraArgs]; ++ const launchContext = global.create_app_launch_context(0, -1); ++ const env = launchContext.get_environment(); + // Use DO_NOT_REAP_CHILD to avoid adouble-fork internally + // since ibus-daemon refuses to start with init as its parent. + const [success_, pid] = GLib.spawn_async( diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template index aae10f6b66c..7e9e525e505 100644 --- a/srcpkgs/gnome-shell/template +++ b/srcpkgs/gnome-shell/template @@ -1,7 +1,7 @@ # Template file for 'gnome-shell' pkgname=gnome-shell version=44.2 -revision=4 +revision=5 build_style=meson build_helper=gir configure_args="-Dsystemd=false -Dtests=false"