nixpkgs/pkgs/desktops/gnome/extensions
Florian Klink fbd5b7c68a gnomeExtensions.paperwm: 38.2 -> unstable-2022-12-14
Contains experimental GNOME 43 support, which is probably better than
simply refusing to start for current versions of GNOME.
2022-12-28 10:54:32 +01:00
..
arcmenu gnomeExtensions.arcmenu: 37 -> 43 2022-12-03 08:07:17 -05:00
argos gnomeExtensions.argos: init at 20220930 2022-10-17 15:00:18 -07:00
clock-override gnomeExtensions: integrate manually packaged extensions better with the others 2021-07-14 03:35:11 +02:00
dash-to-dock gnomeExtensions.dash-to-dock: 74 -> 75 2022-10-20 22:22:21 +02:00
drop-down-terminal gnomeExtensions: integrate manually packaged extensions better with the others 2021-07-14 03:35:11 +02:00
EasyScreenCast gnomeExtensions.easyScreenCast: unstable-2020-11-25 -> 1.4.0 2021-10-26 16:47:40 +03:00
extensionOverridesPatches gnomeExtensions.freon: fix patch for v48, simplify 2022-06-02 22:51:41 +03:00
gnome-browser-connector gnome-browser-connector: 42.0 → 42.1 2022-10-27 10:35:46 +02:00
gsconnect gnomeExtensions.gsconnect: 50 -> 54 2022-10-18 10:15:10 -04:00
icon-hider gnomeExtensions: integrate manually packaged extensions better with the others 2021-07-14 03:35:11 +02:00
impatience gnome-shell-extension-impatience: unstable-2019-09-23 -> unstable-2022-03-26 2022-04-16 00:43:51 +01:00
no-title-bar gnomeExtensions: integrate manually packaged extensions better with the others 2021-07-14 03:35:11 +02:00
paperwm gnomeExtensions.paperwm: 38.2 -> unstable-2022-12-14 2022-12-28 10:54:32 +01:00
pidgin-im-integration gnomeExtensions: integrate manually packaged extensions better with the others 2021-07-14 03:35:11 +02:00
pop-shell gnomeExtensions.pop-shell: unstable-2022-03-25 -> unstable-2022-10-11 2022-10-18 17:11:58 +02:00
sound-output-device-chooser gnomeExtensions.sound-output-device-chooser: remove myself from maintainers 2022-10-26 20:44:49 +02:00
system-monitor gnomeExtensions.system-monitor: Patch for GNOME 43 compatibility 2022-11-01 16:26:22 -04:00
taskwhisperer gnomeExtensions.taskwhisperer: 16 -> 20 2022-01-04 11:20:23 +01:00
tilingnome gnomeExtensions.tilingGnome: remove unstable in pname 2021-09-11 01:18:08 +02:00
topicons-plus gnomeExtensions: rename uuid field to extensionUuid 2021-07-14 03:23:36 +02:00
window-corner-preview gnomeExtensions.window-corner-preview: remove myself from maintainers 2022-10-26 20:53:04 +02:00
buildGnomeExtension.nix treewide: extraPostFetch -> postFetch 2022-05-23 17:18:50 +03:00
collisions.json gnomeExtensions: auto-update 2022-11-14 22:38:19 +01:00
default.nix pkgs.gnome43Extensions: expose GNOME 43 extensions 2022-10-18 17:11:57 +02:00
extensionOverrides.nix gnomeExtensions.freon: package automatically 2022-03-27 20:15:31 +03:00
extensionRenames.nix gnomeExtensions: auto-update 2022-11-14 22:38:19 +01:00
extensions.json gnomeExtensions: auto-update 2022-11-26 02:03:41 +01:00
manuallyPackaged.nix gnomeExtensions.emoji-selecter: Use automatic package 2022-11-18 00:32:36 +01:00
README.md gnomeExtensions: improve README 2021-11-23 15:08:30 +01:00
update-extensions.py gnomeExtensions: Update for GNOME 43 2022-09-27 13:39:06 +02:00

GNOME Shell extensions

All extensions are packaged automatically. They can be found in the pkgs.gnomeXYExtensions for XY being a GNOME version. The package names are the extensions UUID, which can be a bit unwieldy to use. pkgs.gnomeExtensions is a set of manually curated extensions that match the current gnome.gnome-shell versions. Their name is human-friendly, compared to the other extensions sets. Some of its extensions are manually packaged.

Automatically packaged extensions

The actual packages are created by buildGnomeExtension.nix, provided the correct arguments are fed into it. The important extension data is stored in extensions.json, one line/item per extension. That file is generated by running update-extensions.py. Furthermore, the automatic generated names are dumped in collisions.json for manual inspection. extensionRenames.nix contains new names for all extensions that collide.

Extensions updates

For everyday updates,

  1. Run update-extensions.py.
  2. Update extensionRenames.nix according to the comment at the top.

For GNOME updates,

  1. Add a new gnomeXYExtensions set
  2. Remove old ones for GNOME versions we dont want to support any more
  3. Update supported_versions in ./update-extensions.py and re-run it
  4. Change gnomeExtensions to the new version
  5. Update ./extensionsRenames.nix accordingly
  6. Update all-packages.nix accordingly (grep for gnomeExtensions)

Manually packaged extensions

Manually packaged extensions overwrite some of the automatically packaged ones in pkgs.gnomeExtensions. They are listed in manuallyPackaged.nix, every extension has its own sub-folder.