GNOME: Difference between revisions
→Installation: Spruce up wording, add disclaimer about xorg/wayland support. |
→Installation: Move extension installation information out of configuration. |
||
Line 21: | Line 21: | ||
Despite the options in NixOS versions before 25.11 being under the <code>xserver</code> namespace, GNOME runs offers [[Wayland]] by default. 25.11 and later versions remove support for the [[Xorg]] session entirely (though Xwayland is still included and supported for compatibility). | Despite the options in NixOS versions before 25.11 being under the <code>xserver</code> namespace, GNOME runs offers [[Wayland]] by default. 25.11 and later versions remove support for the [[Xorg]] session entirely (though Xwayland is still included and supported for compatibility). | ||
=== GNOME Extensions === | |||
GNOME offers support for changing/overhauling the user interface (GNOME Shell) through the use of ''[https://extensions.gnome.org/about/ Extensions].'' Extensions are bundles of third-party [https://gjs.guide/extensions/ GJS] modules that are loaded while GNOME is running to augment the user experience. A repository of GNOME extensions can be found on GNOME's official [https://extensions.gnome.org/ webpage] and can be installed imperatively if needed by unpacking the extension in <code>~/.local/share/gnome-shell/extensions</code> directory. Extensions can only be activated if it supports the GNOME release that it's installed alongside with. | |||
However, Nix automatically packages all available GNOME extensions under the <code>pkgs.gnomeExtensions</code> attribute. Extensions which require additional dependencies are then manually packaged if needed. Installed extensions can be enabled graphically through the built-in "Extensions" application or through the <code>gnome-extensions</code> command line interface. | |||
{{file|/etc/nixos/configuration.nix|nix|<nowiki> | |||
{ | |||
environment.systemPackages = with pkgs; [ | |||
gnomeExtensions.blur-my-shell | |||
gnomeExtensions.just-perfection | |||
gnomeExtensions.arc-menu | |||
]; | |||
} | |||
</nowiki>}} | |||
=== Excluding GNOME Applications === | === Excluding GNOME Applications === | ||
Line 86: | Line 101: | ||
=== Managing extensions === | === Managing extensions === | ||
Installed extensions can be enabled and configured in Extension app that comes preinstalled with GNOME. If you want to do that declaratively in your configuration, you can use [[Home Manager]] <code>dconf</code> module by adding following lines. | Installed extensions can be enabled and configured in Extension app that comes preinstalled with GNOME. If you want to do that declaratively in your configuration, you can use [[Home Manager]] <code>dconf</code> module by adding following lines. |