Code change:
<ins> { lib, stdenvNoCC, fetchFromGitHub, glib, # These loosen security a bit, so we don't install them by default. See also: # https://github.com/hardpixel/systemd-manager?tab=readme-ov-file#without-password-prompt allowPolkitPolicy ? "none", config, systemd ? config.systemd.package, }: assert lib.elem allowPolkitPolicy [ "none" "pkexec" "systemctl" ]; stdenvNoCC.mkDerivation rec { pname = "gnome-shell-extension-systemd-manager"; version = "16"; # Upstream doesn't post new versions in extensions.gnome.org anymore, see also: # https://github.com/hardpixel/systemd-manager/issues/19 src = fetchFromGitHub { owner = "hardpixel"; repo = "systemd-manager"; rev = "v${version}"; hash = "sha256-JecSIRj582jJWdrCQYBWFRkIhosxRhD3BxSAy8/0nVw="; }; nativeBuildInputs = [ glib ]; postInstall = '' rm systemd-manager@hardpixel.eu/schemas/gschemas.compiled glib-compile-schemas systemd-manager@hardpixel.eu/schemas mkdir -p $out/share/gnome-shell/extensions mv systemd-manager@hardpixel.eu $out/share/gnome-shell/extensions '' + lib.optionalString (allowPolkitPolicy == "pkexec") '' local bn=org.freedesktop.policykit.pkexec.systemctl.policy mkdir -p $out/share/polkit-1/actions substitute systemd-policies/$bn $out/share/polkit-1/actions/$bn  --replace-fail /usr/bin/systemctl ${lib.getBin systemd}/bin/systemctl '' + lib.optionalString (allowPolkitPolicy == "systemctl") '' install -Dm0644  systemd-policies/10-service_status.rules  $out/share/polkit-1/rules.d/10-gnome-extension-systemd-manager.rules ''; passthru = { extensionUuid = "systemd-manager@hardpixel.eu"; extensionPortalSlug = "systemd-manager"; }; meta = with lib; { description = "GNOME Shell extension to manage systemd services"; homepage = "https://github.com/hardpixel/systemd-manager"; license = licenses.gpl3Only; maintainers = with maintainers; [ linsui doronbehar ]; }; } </ins>

Related discussion:
text: Maintaining an extension like this should be as simple as increasing the version number when a new release exists, given it's lack of external dependencies or nixos-specific quirks that need to be patched (there may be some out there). What I meant by not mantaining it is that I do not actively use it within my setup. And I assume these manually packaged ones would need at least a "reference" mantainer to keep it in check and direct issues to.
Thanks for the good info ! Well, I can be the maintainer, but I might need help from time to time. I will use your code if that is okay? So, next steps to put in the PR and then add me as the maintainer. Also, would you want to be on this as well?
piegamesde was only the maintainer of the original extension package because they're the . Manually packaged extensions go in and generally have a maintainer attribute set.
Circling back to this... I would like to be the maintainer of this plugin. However, I have never maintained a piece of software on github and I only have minimal skills with shell and nix configuration files. I have never made or packaged a nix module before. Should this task be reserved for someone else with more skills or is there someone who could mentor me in how to be a maintainer? Thank you all for the help in this.
Added this to extension creator's github :
Okay, I figured out how to add 's code into my existing setup. For all the noobs out there this is what I did it: I did NOT use the "overlay" process in NixOS as describe here: I used the process as described here: This is an excellent write up BTW! Save this link for future use. With these resources in mind, this is what I did. I used 's code and named the file . This naming is arbitrary. It can be anything you want as long it has at the end. Then, move that file into directory. Do this via terminal and you must be the user. Then in my NixOS (not nix) configuration file () I simply into the Then, like always, as root This is all explained in the link above. Limitations: hack does not put the new is in the official repository.