Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@
- any-glob-to-any-file:
- doc/languages-frameworks/gnome.section.md
- nixos/modules/services/desktops/gnome/**/*
- nixos/modules/services/x11/desktop-managers/gnome.nix
- nixos/modules/services/desktop-managers/gnome.nix
- nixos/tests/gnome-xorg.nix
- nixos/tests/gnome.nix
- pkgs/desktops/gnome/**/*
Expand Down
4 changes: 2 additions & 2 deletions nixos/doc/manual/configuration/x-windows.chapter.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ Thus you should pick one or more of the following lines:
{
services.xserver.desktopManager.plasma5.enable = true;
services.xserver.desktopManager.xfce.enable = true;
services.xserver.desktopManager.gnome.enable = true;
services.desktopManager.gnome.enable = true;
services.xserver.desktopManager.mate.enable = true;
services.xserver.windowManager.xmonad.enable = true;
services.xserver.windowManager.twm.enable = true;
Expand All @@ -46,7 +46,7 @@ alternative one by picking one of the following lines:
```nix
{
services.displayManager.sddm.enable = true;
services.xserver.displayManager.gdm.enable = true;
services.displayManager.gdm.enable = true;
}
```

Expand Down
2 changes: 1 addition & 1 deletion nixos/doc/manual/release-notes/rl-2505.section.md
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure what the practice is for release notes now. Do we need to write one for 25.11, or do the release editors generate the list of auto-renames before release?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe after, sounds safer

Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Alongside many enhancements to NixOS modules and general system improvements, th
- GNOME has been updated to version 48.

- `decibels` music player is now installed by default. You can disable it using [](#opt-environment.gnome.excludePackages).
- `gnome-shell-extensions` extension collection (which included GNOME Classic extensions, Apps Menu, and User Themes, among others) are no longer installed by default. You can install them again with [](#opt-services.xserver.desktopManager.gnome.sessionPath).
- `gnome-shell-extensions` extension collection (which included GNOME Classic extensions, Apps Menu, and User Themes, among others) are no longer installed by default. You can install them again with {option}`services.xserver.desktopManager.gnome.sessionPath`.
- Option [](#opt-services.gnome.core-developer-tools.enable) now also installs `sysprof` and `d-spy`.
- Option `services.gnome.core-utilities.enable` has been renamed to [](#opt-services.gnome.core-apps.enable).
- `cantarell-fonts`, `source-code-pro` and `source-sans` fonts are no longer installed by default. They have been replaced by `adwaita-fonts`.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

isoImage.edition = lib.mkDefault "gnome";

services.xserver.desktopManager.gnome = {
services.desktopManager.gnome = {
# Add Firefox and other tools useful for installation to the launcher
favoriteAppsOverride = ''
[org.gnome.shell]
Expand Down Expand Up @@ -35,7 +35,7 @@
QT_QPA_PLATFORM = "$([[ $XDG_SESSION_TYPE = \"wayland\" ]] && echo \"wayland\")";
};

services.xserver.displayManager.gdm = {
services.displayManager.gdm = {
enable = true;
# autoSuspend makes the machine automatically suspend after inactivity.
# It's possible someone could/try to ssh'd into the machine and obviously
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

isoImage.edition = lib.mkDefault "gnome";

services.xserver.desktopManager.gnome = {
services.desktopManager.gnome = {
# Add Firefox and other tools useful for installation to the launcher
favoriteAppsOverride = ''
[org.gnome.shell]
Expand All @@ -16,7 +16,7 @@
enable = true;
};

services.xserver.displayManager.gdm = {
services.displayManager.gdm = {
enable = true;
# autoSuspend makes the machine automatically suspend after inactivity.
# It's possible someone could/try to ssh'd into the machine and obviously
Expand Down
2 changes: 1 addition & 1 deletion nixos/modules/module-list.nix
Original file line number Diff line number Diff line change
Expand Up @@ -589,6 +589,7 @@
./services/development/zammad.nix
./services/display-managers/cosmic-greeter.nix
./services/display-managers/default.nix
./services/display-managers/gdm.nix
./services/display-managers/greetd.nix
./services/display-managers/ly.nix
./services/display-managers/sddm.nix
Expand Down Expand Up @@ -1706,7 +1707,6 @@
./services/x11/colord.nix
./services/x11/desktop-managers/default.nix
./services/x11/display-managers/default.nix
./services/x11/display-managers/gdm.nix
./services/x11/display-managers/lightdm.nix
./services/x11/display-managers/slim.nix
./services/x11/display-managers/startx.nix
Expand Down
2 changes: 1 addition & 1 deletion nixos/modules/programs/gpaste.nix
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
services.dbus.packages = [ pkgs.gpaste ];
systemd.packages = [ pkgs.gpaste ];
# gnome-control-center crashes in Keyboard Shortcuts pane without the GSettings schemas.
services.xserver.desktopManager.gnome.sessionPath = [ pkgs.gpaste ];
services.desktopManager.gnome.sessionPath = [ pkgs.gpaste ];
# gpaste-reloaded applet doesn't work without the typelib
services.xserver.desktopManager.cinnamon.sessionPath = [ pkgs.gpaste ];
};
Expand Down
2 changes: 1 addition & 1 deletion nixos/modules/programs/nautilus-open-any-terminal.nix
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ in
nautilus-open-any-terminal
];

environment.sessionVariables = lib.mkIf (!config.services.xserver.desktopManager.gnome.enable) {
environment.sessionVariables = lib.mkIf (!config.services.desktopManager.gnome.enable) {
NAUTILUS_4_EXTENSION_DIR = "${pkgs.nautilus-python}/lib/nautilus/extensions-4";
};

Expand Down
2 changes: 1 addition & 1 deletion nixos/modules/programs/zoom-us.nix
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@

# Support GNOME desktop environment if it's enabled on the system.
gnomeXdgDesktopPortalSupport =
prev.gnomeXdgDesktopPortalSupport or config.services.xserver.desktopManager.gnome.enable;
prev.gnomeXdgDesktopPortalSupport or config.services.desktopManager.gnome.enable;

# Support Hyprland desktop for Wayland if it's enabled on the system.
hyprlandXdgDesktopPortalSupport =
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ To enable the GNOME desktop use:

```nix
{
services.xserver.desktopManager.gnome.enable = true;
services.xserver.displayManager.gdm.enable = true;
services.desktopManager.gnome.enable = true;
services.displayManager.gdm.enable = true;
}
```

Expand Down Expand Up @@ -76,17 +76,17 @@ GNOME Flashback provides a desktop environment based on the classic GNOME 2 arch

```nix
{
services.xserver.desktopManager.gnome.flashback.enableMetacity = true;
services.desktopManager.gnome.flashback.enableMetacity = true;
}
```

It is also possible to create custom sessions that replace Metacity with a different window manager using [](#opt-services.xserver.desktopManager.gnome.flashback.customSessions).
It is also possible to create custom sessions that replace Metacity with a different window manager using [](#opt-services.desktopManager.gnome.flashback.customSessions).

The following example uses `xmonad` window manager:

```nix
{
services.xserver.desktopManager.gnome.flashback.customSessions = [
services.desktopManager.gnome.flashback.customSessions = [
{
wmName = "xmonad";
wmLabel = "XMonad";
Expand Down Expand Up @@ -143,18 +143,18 @@ Overrides really only change the default values for GSettings keys so if you or
:::

You can override the default GSettings values using the
[](#opt-services.xserver.desktopManager.gnome.extraGSettingsOverrides) option.
[](#opt-services.desktopManager.gnome.extraGSettingsOverrides) option.

Take note that whatever packages you want to override GSettings for, you need to add them to
[](#opt-services.xserver.desktopManager.gnome.extraGSettingsOverridePackages).
[](#opt-services.desktopManager.gnome.extraGSettingsOverridePackages).

You can use `dconf-editor` tool to explore which GSettings you can set.

### Example {#sec-gnome-gsettings-overrides-example}

```nix
{
services.xserver.desktopManager.gnome = {
services.desktopManager.gnome = {
extraGSettingsOverrides = ''
# Change default background
[org.gnome.desktop.background]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ let
literalExpression
;

cfg = config.services.xserver.desktopManager.gnome;
cfg = config.services.desktopManager.gnome;
serviceCfg = config.services.gnome;

# Prioritize nautilus by default when opening directories
Expand Down Expand Up @@ -78,13 +78,45 @@ let
in

{

meta = {
doc = ./gnome.md;
maintainers = lib.teams.gnome.members;
};

imports = [
(lib.mkRenamedOptionModule
[ "services" "xserver" "desktopManager" "gnome" "enable" ]
[ "services" "desktopManager" "gnome" "enable" ]
)
(lib.mkRenamedOptionModule
[ "services" "xserver" "desktopManager" "gnome" "extraGSettingsOverrides" ]
[ "services" "desktopManager" "gnome" "extraGSettingsOverrides" ]
)
(lib.mkRenamedOptionModule
[ "services" "xserver" "desktopManager" "gnome" "extraGSettingsOverridePackages" ]
[ "services" "desktopManager" "gnome" "extraGSettingsOverridePackages" ]
)
(lib.mkRenamedOptionModule
[ "services" "xserver" "desktopManager" "gnome" "debug" ]
[ "services" "desktopManager" "gnome" "debug" ]
)
(lib.mkRenamedOptionModule
[ "services" "xserver" "desktopManager" "gnome" "sessionPath" ]
[ "services" "desktopManager" "gnome" "sessionPath" ]
)
# flashback options
(lib.mkRenamedOptionModule
[ "services" "xserver" "desktopManager" "gnome" "flashback" "customSessions" ]
[ "services" "desktopManager" "gnome" "flashback" "customSessions" ]
)
(lib.mkRenamedOptionModule
[ "services" "xserver" "desktopManager" "gnome" "flashback" "enableMetacity" ]
[ "services" "desktopManager" "gnome" "flashback" "enableMetacity" ]
)
(lib.mkRenamedOptionModule
[ "services" "xserver" "desktopManager" "gnome" "flashback" "panelModulePackages" ]
[ "services" "desktopManager" "gnome" "flashback" "panelModulePackages" ]
)
(lib.mkRenamedOptionModule
[ "services" "gnome" "core-utilities" "enable" ]
[ "services" "gnome" "core-apps" "enable" ]
Expand All @@ -101,7 +133,7 @@ in
games.enable = mkEnableOption "GNOME games";
};

services.xserver.desktopManager.gnome = {
services.desktopManager.gnome = {
enable = mkOption {
type = types.bool;
default = false;
Expand Down Expand Up @@ -213,8 +245,8 @@ in
system.nixos-generate-config.desktopConfiguration = [
''
# Enable the GNOME Desktop Environment.
services.xserver.displayManager.gdm.enable = true;
services.xserver.desktopManager.gnome.enable = true;
services.displayManager.gdm.enable = true;
services.desktopManager.gnome.enable = true;
''
];

Expand Down Expand Up @@ -333,7 +365,7 @@ in
})

(lib.mkIf serviceCfg.core-shell.enable {
services.xserver.desktopManager.gnome.sessionPath = [
services.desktopManager.gnome.sessionPath = [
pkgs.gnome-shell
];

Expand Down
2 changes: 1 addition & 1 deletion nixos/modules/services/display-managers/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -257,7 +257,7 @@ in
dmConf = config.services.xserver.displayManager;
noDmUsed =
!(
dmConf.gdm.enable || cfg.sddm.enable || dmConf.xpra.enable || dmConf.lightdm.enable || cfg.ly.enable
cfg.gdm.enable || cfg.sddm.enable || dmConf.xpra.enable || dmConf.lightdm.enable || cfg.ly.enable
);
in
lib.mkIf noDmUsed (lib.mkDefault false);
Expand Down
Loading