GNOME: Difference between revisions
→dconf: Add section to reset all dconf changes. |
m →Discover dconf settings: Use code font instead of erroneous backticks. |
||
(10 intermediate revisions by 3 users not shown) | |||
Line 8: | Line 8: | ||
To use the GNOME desktop environment on NixOS, the following configuration options must be set: | To use the GNOME desktop environment on NixOS, the following configuration options must be set: | ||
{{file| | {{file|3={ config, pkgs, ... }: | ||
{ | { | ||
# Pre 25.11 | # Pre 25.11 | ||
services.xserver.enable = true; | services.xserver.enable = true; | ||
Line 18: | Line 20: | ||
services.displayManager.gdm.enable = true; | services.displayManager.gdm.enable = true; | ||
services.desktopManager.gnome.enable = true; | services.desktopManager.gnome.enable = true; | ||
} | |||
# To disable installing GNOME's suite of applications | |||
# and only be left with GNOME shell. | |||
services.gnome.core-apps.enable = false; | |||
services.gnome.core-developer-tools.enable = false; | |||
services.gnome.games.enable = false; | |||
environment.gnome.excludePackages = with pkgs; [ gnome-tour gnome-user-docs ]; | |||
}|name=/etc/nixos/configuration.nix|lang=nix}} | |||
Despite the options in NixOS versions before 25.11 being under the <code>xserver</code> module, GNOME uses [[Wayland]] by default. NixOS 25.11 and later removes 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> module, GNOME uses [[Wayland]] by default. NixOS 25.11 and later removes support for the [[Xorg]] session entirely (though Xwayland is still included and supported for compatibility). | ||
Line 26: | Line 35: | ||
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. | 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. | ||
In addition, NixOS automatically packages all officially 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|3={ | {{file|3={ | ||
Line 162: | Line 171: | ||
=== Discover dconf settings === | === Discover dconf settings === | ||
If you wish to discover the corresponding dconf entry for a given setting in a program, you can run | If you wish to discover the corresponding dconf entry for a given setting in a program, you can run <code>dconf watch /</code> inside of a terminal and change the setting graphically. For example, when changing toggling the Quick-Settings option "Dark Style" from "on" to "off" and back to "on," this will be the output:<syntaxhighlight lang="shell-session"> | ||
$ dconf watch / | $ dconf watch / | ||
/org/gnome/desktop/interface/color-scheme | /org/gnome/desktop/interface/color-scheme | ||
Line 230: | Line 239: | ||
=== Excluding GNOME Applications === | === Excluding GNOME Applications === | ||
To exclude certain applications that are installed by default with GNOME, set the {{nixos:option|environment.gnome.excludePackages}} module option: | To exclude certain applications that are installed by default with GNOME, set the {{nixos:option|environment.gnome.excludePackages}} module option (Optional Packages: [https://github.com/NixOS/nixpkgs/blob/nixos-unstable/nixos/modules/services/desktop-managers/gnome.nix#L449-L471 gnome.nix]): | ||
{{file|/etc/nixos/configuration.nix|nix|<nowiki> | {{file|/etc/nixos/configuration.nix|nix|<nowiki> | ||
Line 278: | Line 287: | ||
}|name=/etc/nixos/configuration.nix|lang=nix}} | }|name=/etc/nixos/configuration.nix|lang=nix}} | ||
: | : | ||
== | == References == | ||
[[Category:Desktop environment]] | [[Category:Desktop environment]] | ||
[[Category:Applications]] | [[Category:Applications]] | ||
[[Category:NixOS Manual]] | [[Category:NixOS Manual]] | ||
[[Category:GNOME]] | [[Category:GNOME]] |