From 0da5e3e7edc130c998fb8a0a34ca8ec126f19f0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Lima?= Date: Sat, 17 May 2025 18:16:36 +0100 Subject: [PATCH] gnomeExtensions.applications-menu: fix GMenu import (cherry picked from commit c77b9c5842f064adcfb3d5f3163bd9cbf451928d) --- .../gnome/extensions/extensionOverrides.nix | 12 ++++++++++++ ...me-shell-extensions.gcampax.github.com.patch | 17 +++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 pkgs/desktops/gnome/extensions/extensionOverridesPatches/apps-menu_at_gnome-shell-extensions.gcampax.github.com.patch diff --git a/pkgs/desktops/gnome/extensions/extensionOverrides.nix b/pkgs/desktops/gnome/extensions/extensionOverrides.nix index 6e180edce187..6dda124d7033 100644 --- a/pkgs/desktops/gnome/extensions/extensionOverrides.nix +++ b/pkgs/desktops/gnome/extensions/extensionOverrides.nix @@ -6,6 +6,7 @@ easyeffects, gjs, glib, + gnome-menus, nautilus, gobject-introspection, hddtemp, @@ -47,6 +48,17 @@ in # the upstream repository's sources. super: lib.trivial.pipe super [ + (patchExtension "apps-menu@gnome-shell-extensions.gcampax.github.com" (old: { + patches = [ + (replaceVars + ./extensionOverridesPatches/apps-menu_at_gnome-shell-extensions.gcampax.github.com.patch + { + gmenu_path = "${gnome-menus}/lib/girepository-1.0"; + } + ) + ]; + })) + (patchExtension "caffeine@patapon.info" (old: { meta.maintainers = with lib.maintainers; [ eperuffo ]; })) diff --git a/pkgs/desktops/gnome/extensions/extensionOverridesPatches/apps-menu_at_gnome-shell-extensions.gcampax.github.com.patch b/pkgs/desktops/gnome/extensions/extensionOverridesPatches/apps-menu_at_gnome-shell-extensions.gcampax.github.com.patch new file mode 100644 index 000000000000..58f539d1525f --- /dev/null +++ b/pkgs/desktops/gnome/extensions/extensionOverridesPatches/apps-menu_at_gnome-shell-extensions.gcampax.github.com.patch @@ -0,0 +1,17 @@ +diff --git a/extension.js b/extension.js +index c608441..2b25335 100644 +--- a/extension.js ++++ b/extension.js +@@ -9,7 +9,11 @@ import Atk from 'gi://Atk'; + import Clutter from 'gi://Clutter'; + import Gio from 'gi://Gio'; + import GLib from 'gi://GLib'; +-import GMenu from 'gi://GMenu'; ++ ++import GIRepository from 'gi://GIRepository'; ++GIRepository.Repository.prepend_search_path('@gmenu_path@'); ++const {default: GMenu} = await import('gi://GMenu'); ++ + import GObject from 'gi://GObject'; + import Gtk from 'gi://Gtk'; + import Meta from 'gi://Meta';