Merge pull request #146953 from piegamesde/gnome-extensions

This commit is contained in:
piegames 2021-11-23 15:16:36 +01:00 committed by GitHub
commit d2d03f071a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 23 additions and 16 deletions

View File

@ -4,7 +4,7 @@ All extensions are packaged automatically. They can be found in the `pkgs.gnomeX
## Automatically packaged extensions
The actual packages are created by `buildGnomeExtensions.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 provides new names for all extensions that collide.
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
@ -20,6 +20,7 @@ For GNOME updates,
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

View File

@ -3,31 +3,36 @@
, gjs
, xprop
}:
let
# Helper method to reduce redundancy
patchExtension = name: override: super: (super // {
${name} = super.${name}.overrideAttrs override;
});
in
# A set of overrides for automatically packaged extensions that require some small fixes.
# The input must be an attribute set with the extensions' UUIDs as keys and the extension
# derivations as values. Output is the same, but with patches applied.
#
# Note that all source patches refer to the built extension as published on extensions.gnome.org, and not
# the upstream repository's sources.
super: super // {
"caffeine@patapon.info" = super."caffeine@patapon.info".overrideAttrs (old: {
super: lib.trivial.pipe super [
(patchExtension "caffeine@patapon.info" (old: {
meta.maintainers = with lib.maintainers; [ eperuffo ];
});
}))
"dash-to-dock@micxgx.gmail.com" = super."dash-to-dock@micxgx.gmail.com".overrideAttrs (old: {
(patchExtension "dash-to-dock@micxgx.gmail.com" (old: {
meta.maintainers = with lib.maintainers; [ eperuffo jtojnar rhoriguchi ];
});
}))
"display-brightness-ddcutil@themightydeity.github.com" = super."display-brightness-ddcutil@themightydeity.github.com".overrideAttrs (old: {
(patchExtension "display-brightness-ddcutil@themightydeity.github.com" (old: {
# Has a hard-coded path to a run-time dependency
# https://github.com/NixOS/nixpkgs/issues/136111
postPatch = ''
substituteInPlace "extension.js" --replace "/usr/bin/ddcutil" "${ddcutil}/bin/ddcutil"
'';
});
}))
"gnome-shell-screenshot@ttll.de" = super."gnome-shell-screenshot@ttll.de".overrideAttrs (old: {
(patchExtension "gnome-shell-screenshot@ttll.de" (old: {
# Requires gjs
# https://github.com/NixOS/nixpkgs/issues/136112
postPatch = ''
@ -35,12 +40,11 @@ super: super // {
substituteInPlace $file --replace "gjs" "${gjs}/bin/gjs"
done
'';
});
}))
"unite@hardpixel.eu" = super."unite@hardpixel.eu".overrideAttrs (old: {
(patchExtension "unite@hardpixel.eu" (old: {
buildInputs = [ xprop ];
meta.maintainers = with lib.maintainers; [ rhoriguchi ];
});
}
}))
]

View File

@ -30914,7 +30914,9 @@ with pkgs;
inherit (callPackage ../desktops/gnome/extensions { })
gnomeExtensions
gnome38Extensions
gnome40Extensions;
gnome40Extensions
gnome41Extensions
;
gnome-connections = callPackage ../desktops/gnome/apps/gnome-connections { };