summary refs log tree commit diff
path: root/pkgs/desktops/gnome/extensions/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/desktops/gnome/extensions/default.nix')
-rw-r--r--pkgs/desktops/gnome/extensions/default.nix21
1 files changed, 14 insertions, 7 deletions
diff --git a/pkgs/desktops/gnome/extensions/default.nix b/pkgs/desktops/gnome/extensions/default.nix
index f98e2fb4e67..2937cf6ac79 100644
--- a/pkgs/desktops/gnome/extensions/default.nix
+++ b/pkgs/desktops/gnome/extensions/default.nix
@@ -60,17 +60,24 @@ in rec {
   gnome38Extensions = mapUuidNames (produceExtensionsList "38");
   gnome40Extensions = mapUuidNames (produceExtensionsList "40");
 
-  gnomeExtensions = lib.recurseIntoAttrs (
-    (mapReadableNames
-      (lib.attrValues (gnome40Extensions // (callPackages ./manuallyPackaged.nix {})))
-    )
-    // lib.optionalAttrs (config.allowAliases or true) {
+  gnomeExtensions = lib.trivial.pipe gnome40Extensions [
+    # Apply some custom patches for automatically packaged extensions
+    (callPackage ./extensionOverrides.nix {})
+    # Add all manually packaged extensions
+    (extensions: extensions // (callPackages ./manuallyPackaged.nix {}))
+    # Map the extension UUIDs to readable names
+    (lib.attrValues)
+    (mapReadableNames)
+    # Add some aliases
+    (extensions: extensions // lib.optionalAttrs (config.allowAliases or true) {
       unite-shell = gnomeExtensions.unite; # added 2021-01-19
       arc-menu = gnomeExtensions.arcmenu; # added 2021-02-14
 
       nohotcorner = throw "gnomeExtensions.nohotcorner removed since 2019-10-09: Since 3.34, it is a part of GNOME Shell configurable through GNOME Tweaks.";
       mediaplayer = throw "gnomeExtensions.mediaplayer deprecated since 2019-09-23: retired upstream https://github.com/JasonLG1979/gnome-shell-extensions-mediaplayer/blob/master/README.md";
       remove-dropdown-arrows = throw "gnomeExtensions.remove-dropdown-arrows removed since 2021-05-25: The extensions has not seen an update sine GNOME 3.34. Furthermore, the functionality it provides is obsolete as of GNOME 40.";
-    }
-  );
+    })
+    # Make the set "public"
+    lib.recurseIntoAttrs
+  ];
 }