From ab71df859c1fe6e9a3186d85b99787acde396094 Mon Sep 17 00:00:00 2001 From: Mateusz Wieloch Date: Fri, 25 Nov 2022 10:52:31 +0100 Subject: [PATCH] keyd-application-mapper: Improve GNOME desktop environment detection --- scripts/keyd-application-mapper | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/scripts/keyd-application-mapper b/scripts/keyd-application-mapper index aa277a9..e022e17 100755 --- a/scripts/keyd-application-mapper +++ b/scripts/keyd-application-mapper @@ -40,6 +40,12 @@ def assert_env(var): if not os.getenv(var): raise Exception(f'Missing environment variable {var}') +def assert_gnome(): + if 'gnome' not in os.getenv('XDG_CURRENT_DESKTOP', '').lower() and \ + not os.getenv('GNOME_SETUP_DISPLAY'): + raise Exception(f'Gnome desktop environment not detected by inspecting' + 'XDG_CURRENT_DESKTOP and GNOME_SETUP_DISPLAY environment variables') + def run(cmd): return subprocess.check_output(['/bin/sh', '-c', cmd]).decode('utf8') @@ -253,7 +259,7 @@ class XMonitor(): # :( class GnomeMonitor(): def __init__(self, on_window_change): - assert_env('GNOME_SETUP_DISPLAY') + assert_gnome() self.on_window_change = on_window_change