Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gnome: Move the remaining packages to top-level #338583

Merged
merged 17 commits into from
Sep 1, 2024
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: 2 additions & 0 deletions nixos/doc/manual/release-notes/rl-2411.section.md
Original file line number Diff line number Diff line change
Expand Up @@ -173,6 +173,8 @@

- All Cinnamon and XApp packages have been moved to top-level (i.e., `cinnamon.nemo` is now `nemo`).

- All GNOME packages have been moved to top-level (i.e., `gnome.nautilus` is now `nautilus`).

- `services.cgit` now runs as the cgit user by default instead of root.
This change requires granting access to the repositories to this user or
setting the appropriate one through `services.cgit.some-instance.user`.
Expand Down
2 changes: 1 addition & 1 deletion nixos/modules/config/xdg/portal.nix
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ in
configPackages = mkOption {
type = types.listOf types.package;
default = [ ];
example = lib.literalExpression "[ pkgs.gnome.gnome-session ]";
example = lib.literalExpression "[ pkgs.gnome-session ]";
description = ''
List of packages that provide XDG desktop portal configuration, usually in
the form of `share/xdg-desktop-portal/$desktop-portals.conf`.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
sleep-inactive-battery-type='nothing'
'';

extraGSettingsOverridePackages = [ pkgs.gnome.gnome-settings-daemon ];
extraGSettingsOverridePackages = [ pkgs.gnome-settings-daemon ];

enable = true;
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,15 +32,15 @@ in
config = lib.mkIf cfg.enable {

environment.systemPackages = [
pkgs.gnome.gnome-settings-daemon
pkgs.gnome-settings-daemon
];

services.udev.packages = [
pkgs.gnome.gnome-settings-daemon
pkgs.gnome-settings-daemon
];

systemd.packages = [
pkgs.gnome.gnome-settings-daemon
pkgs.gnome-settings-daemon
];

systemd.user.targets."gnome-session-x11-services".wants = [
Expand Down
2 changes: 1 addition & 1 deletion nixos/modules/services/x11/desktop-managers/gnome.md
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ You can use `dconf-editor` tool to explore which GSettings you can set.

extraGSettingsOverridePackages = [
pkgs.gsettings-desktop-schemas # for org.gnome.desktop
pkgs.gnome.gnome-shell # for org.gnome.shell
pkgs.gnome-shell # for org.gnome.shell
];
};
}
Expand Down
58 changes: 29 additions & 29 deletions nixos/modules/services/x11/desktop-managers/gnome.nix
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ in
favorite-apps=[ 'firefox.desktop', 'org.gnome.Calendar.desktop' ]
'''
'';
description = "List of desktop files to put as favorite apps into gnome-shell. These need to be installed somehow globally.";
description = "List of desktop files to put as favorite apps into pkgs.gnome-shell. These need to be installed somehow globally.";
};

extraGSettingsOverrides = mkOption {
Expand All @@ -123,7 +123,7 @@ in
description = "List of packages for which gsettings are overridden.";
};

debug = mkEnableOption "gnome-session debug messages";
debug = mkEnableOption "pkgs.gnome-session debug messages";

flashback = {
enableMetacity = mkEnableOption "the standard GNOME Flashback session with Metacity";
Expand Down Expand Up @@ -162,11 +162,11 @@ in
};

panelModulePackages = mkOption {
default = [ pkgs.gnome.gnome-applets ];
defaultText = literalExpression "[ pkgs.gnome.gnome-applets ]";
default = [ pkgs.gnome-applets ];
defaultText = literalExpression "[ pkgs.gnome-applets ]";
type = types.listOf types.package;
description = ''
Packages containing modules that should be made available to `gnome-panel` (usually for applets).
Packages containing modules that should be made available to `pkgs.gnome-panel` (usually for applets).

If you're packaging something to use here, please install the modules in `$out/lib/gnome-panel/modules`.
'';
Expand Down Expand Up @@ -196,7 +196,7 @@ in
services.gnome.core-shell.enable = true;
services.gnome.core-utilities.enable = mkDefault true;

services.displayManager.sessionPackages = [ pkgs.gnome.gnome-session.sessions ];
services.displayManager.sessionPackages = [ pkgs.gnome-session.sessions ];

environment.extraInit = ''
${lib.concatMapStrings (p: ''
Expand Down Expand Up @@ -228,7 +228,7 @@ in
assert (lib.assertMsg namesAreUnique "Flashback WM names must be unique.");
map
(wm:
pkgs.gnome.gnome-flashback.mkSessionForWm {
pkgs.gnome-flashback.mkSessionForWm {
inherit (wm) wmName wmLabel wmCommand;
}
) flashbackWms;
Expand All @@ -237,20 +237,20 @@ in
enableGnomeKeyring = true;
};

systemd.packages = with pkgs.gnome; [
gnome-flashback
] ++ map gnome-flashback.mkSystemdTargetForWm flashbackWms;
systemd.packages = [
pkgs.gnome-flashback
] ++ map pkgs.gnome-flashback.mkSystemdTargetForWm flashbackWms;

environment.systemPackages = with pkgs.gnome; [
gnome-flashback
(gnome-panel-with-modules.override {
environment.systemPackages = [
pkgs.gnome-flashback
(pkgs.gnome-panel-with-modules.override {
panelModulePackages = cfg.flashback.panelModulePackages;
})
]
# For /share/applications/${wmName}.desktop
++ (map (wm: gnome-flashback.mkWmApplication { inherit (wm) wmName wmLabel wmCommand; }) flashbackWms)
# For /share/gnome-session/sessions/gnome-flashback-${wmName}.session
++ (map (wm: gnome-flashback.mkGnomeSession { inherit (wm) wmName wmLabel enableGnomePanel; }) flashbackWms);
++ (map (wm: pkgs.gnome-flashback.mkWmApplication { inherit (wm) wmName wmLabel wmCommand; }) flashbackWms)
# For /share/pkgs.gnome-session/sessions/gnome-flashback-${wmName}.session
++ (map (wm: pkgs.gnome-flashback.mkGnomeSession { inherit (wm) wmName wmLabel enableGnomePanel; }) flashbackWms);
})

(lib.mkIf serviceCfg.core-os-services.enable {
Expand Down Expand Up @@ -287,7 +287,7 @@ in
buildPortalsInGnome = false;
})
];
xdg.portal.configPackages = mkDefault [ pkgs.gnome.gnome-session ];
xdg.portal.configPackages = mkDefault [ pkgs.gnome-session ];

networking.networkmanager.enable = mkDefault true;

Expand All @@ -309,7 +309,7 @@ in
services.xserver.desktopManager.gnome.sessionPath =
let
mandatoryPackages = [
pkgs.gnome.gnome-shell
pkgs.gnome-shell
];
optionalPackages = [
pkgs.gnome-shell-extensions
Expand All @@ -329,15 +329,15 @@ in
services.gvfs.enable = true;
services.system-config-printer.enable = (lib.mkIf config.services.printing.enable (mkDefault true));

systemd.packages = with pkgs.gnome; [
gnome-session
gnome-shell
systemd.packages = [
pkgs.gnome-session
pkgs.gnome-shell
];

services.udev.packages = with pkgs.gnome; [
services.udev.packages = [
# Force enable KMS modifiers for devices that require them.
# https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1443
mutter
# https://gitlab.gnome.org/GNOME/pkgs.mutter/-/merge_requests/1443
pkgs.mutter
];

services.avahi.enable = mkDefault true;
Expand Down Expand Up @@ -368,16 +368,16 @@ in
# Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/gnome-3-38/elements/core/meta-gnome-core-shell.bst
environment.systemPackages =
let
mandatoryPackages = with pkgs.gnome; [
gnome-shell
mandatoryPackages = [
pkgs.gnome-shell
];
optionalPackages = with pkgs.gnome; [
optionalPackages = [
pkgs.adwaita-icon-theme
nixos-background-info
pkgs.gnome-backgrounds
gnome-bluetooth
pkgs.gnome-bluetooth
pkgs.gnome-color-manager
gnome-control-center
pkgs.gnome-control-center
pkgs.gnome-shell-extensions
pkgs.gnome-tour # GNOME Shell detects the .desktop file on first log-in.
pkgs.gnome-user-docs
Expand Down
2 changes: 1 addition & 1 deletion nixos/modules/services/x11/desktop-managers/pantheon.nix
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@ in
pkgs.pantheon.mutter
];
systemd.packages = with pkgs; [
gnome.gnome-session
gnome-session
pantheon.gala
pantheon.gnome-settings-daemon
pantheon.elementary-session-settings
Expand Down
10 changes: 7 additions & 3 deletions nixos/modules/services/x11/display-managers/gdm.nix
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,7 @@ in
XDG_DATA_DIRS = lib.makeSearchPath "share" [
gdm # for gnome-login.session
config.services.displayManager.sessionData.desktops
pkgs.gnome.gnome-control-center # for accessibility icon
pkgs.gnome-control-center # for accessibility icon
pkgs.adwaita-icon-theme
pkgs.hicolor-icon-theme # empty icon theme as a base
];
Expand Down Expand Up @@ -181,7 +181,11 @@ in
];

# Otherwise GDM will not be able to start correctly and display Wayland sessions
systemd.packages = with pkgs.gnome; [ gdm gnome-session gnome-shell ];
systemd.packages = with pkgs.gnome; [
gdm
pkgs.gnome-session
pkgs.gnome-shell
];
environment.systemPackages = [ pkgs.adwaita-icon-theme ];

# We dont use the upstream gdm service
Expand Down Expand Up @@ -232,7 +236,7 @@ in
EnvironmentFile = "-/etc/locale.conf";
};

systemd.services.display-manager.path = [ pkgs.gnome.gnome-session ];
systemd.services.display-manager.path = [ pkgs.gnome-session ];

# Allow choosing an user account
services.accounts-daemon.enable = true;
Expand Down
2 changes: 1 addition & 1 deletion nixos/tests/gnome-extensions.nix
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ import ./make-test-python.nix (
# Eval API is now internal so Shell needs to run in unsafe mode.
# TODO: improve test driver so that it supports openqa-like manipulation
# that would allow us to drop this mess.
"${pkgs.gnome.gnome-shell}/bin/gnome-shell --unsafe-mode"
"${pkgs.gnome-shell}/bin/gnome-shell --unsafe-mode"
];
};
};
Expand Down
2 changes: 1 addition & 1 deletion nixos/tests/gnome-xorg.nix
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ import ./make-test-python.nix ({ pkgs, lib, ...} : {
# Eval API is now internal so Shell needs to run in unsafe mode.
# TODO: improve test driver so that it supports openqa-like manipulation
# that would allow us to drop this mess.
"${pkgs.gnome.gnome-shell}/bin/gnome-shell --unsafe-mode"
"${pkgs.gnome-shell}/bin/gnome-shell --unsafe-mode"
];
};
};
Expand Down
2 changes: 1 addition & 1 deletion nixos/tests/gnome.nix
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ import ./make-test-python.nix ({ pkgs, lib, ...} : {
# Eval API is now internal so Shell needs to run in unsafe mode.
# TODO: improve test driver so that it supports openqa-like manipulation
# that would allow us to drop this mess.
"${pkgs.gnome.gnome-shell}/bin/gnome-shell --unsafe-mode"
"${pkgs.gnome-shell}/bin/gnome-shell --unsafe-mode"
];
};
};
Expand Down
4 changes: 2 additions & 2 deletions pkgs/applications/misc/phoc/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
, wrapGAppsHook3
, libinput
, gobject-introspection
, gnome
, mutter
, gnome-desktop
, glib
, gtk3
Expand Down Expand Up @@ -57,7 +57,7 @@ stdenv.mkDerivation (finalAttrs: {
gtk3
gnome-desktop
# For keybindings settings schemas
gnome.mutter
mutter
json-glib
wayland
finalAttrs.wlroots
Expand Down
4 changes: 2 additions & 2 deletions pkgs/applications/networking/browsers/eolie/default.nix
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{ lib, fetchgit, meson, ninja, pkg-config, nix-update-script
, python3, gtk3, libsecret, gst_all_1, webkitgtk, glib
, glib-networking, gtkspell3, hunspell, desktop-file-utils
, gobject-introspection, wrapGAppsHook3, gnome }:
, gobject-introspection, wrapGAppsHook3, gnome-settings-daemon }:

python3.pkgs.buildPythonApplication rec {
pname = "eolie";
Expand Down Expand Up @@ -32,7 +32,7 @@ python3.pkgs.buildPythonApplication rec {
gst-plugins-base
gst-plugins-ugly
gstreamer
gnome.gnome-settings-daemon
gnome-settings-daemon
gtk3
gtkspell3
hunspell
Expand Down
15 changes: 9 additions & 6 deletions pkgs/applications/window-managers/phosh/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,11 @@
, evince
, glib
, gtk4
, gnome
, gnome-bluetooth
, gnome-control-center
, gnome-desktop
, gnome-session
, gnome-shell
, gcr
, pam
, systemd
Expand Down Expand Up @@ -71,10 +74,10 @@ stdenv.mkDerivation (finalAttrs: {
networkmanager
polkit
gmobile
gnome.gnome-bluetooth
gnome.gnome-control-center
gnome-bluetooth
gnome-control-center
gnome-desktop
gnome.gnome-session
gnome-session
gtk4
pam
systemd
Expand Down Expand Up @@ -109,8 +112,8 @@ stdenv.mkDerivation (finalAttrs: {
# Depends on GSettings schemas in gnome-shell
preFixup = ''
gappsWrapperArgs+=(
--prefix XDG_DATA_DIRS : "${gnome.gnome-shell}/share/gsettings-schemas/${gnome.gnome-shell.name}"
--set GNOME_SESSION "${gnome.gnome-session}/bin/gnome-session"
--prefix XDG_DATA_DIRS : "${glib.getSchemaDataDirPath gnome-shell}"
--set GNOME_SESSION "${gnome-session}/bin/gnome-session"
)
'';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{ lib, stdenv, fetchFromGitHub, pkg-config, autoreconfHook, glib, dbus-glib
, desktopSupport ? "gnomeflashback", xorg
, gtk2
, gtk3, gnome, mate
, gtk3, gnome-panel, mate
, libxfce4util, xfce4-panel
}:

Expand All @@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
};

buildInputs = [ glib dbus-glib xorg.xcbutilwm ]
++ lib.optionals (desktopSupport == "gnomeflashback") [ gtk3 gnome.gnome-panel ]
++ lib.optionals (desktopSupport == "gnomeflashback") [ gtk3 gnome-panel ]
++ lib.optionals (desktopSupport == "mate") [ gtk3 mate.mate-panel ]
++ lib.optionals (desktopSupport == "xfce4") [ gtk2 libxfce4util xfce4-panel ]
;
Expand Down
4 changes: 2 additions & 2 deletions pkgs/by-name/ag/ags/package.nix
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
gobject-introspection,
gjs,
glib-networking,
gnome,
gnome-bluetooth,
gtk-layer-shell,
libpulseaudio,
libsoup_3,
Expand Down Expand Up @@ -50,7 +50,7 @@ buildNpmPackage rec {
buildInputs = [
gjs
glib-networking
gnome.gnome-bluetooth
gnome-bluetooth
gtk-layer-shell
libpulseaudio
libsoup_3
Expand Down
4 changes: 2 additions & 2 deletions pkgs/by-name/ay/ayatana-indicator-session/package.nix
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
cmake,
dbus,
glib,
gnome,
gnome-settings-daemon,
gsettings-desktop-schemas,
gtest,
intltool,
Expand Down Expand Up @@ -58,7 +58,7 @@ stdenv.mkDerivation (finalAttrs: {
# TODO these bloat the closure size alot, just so the indicator doesn't have the potential to crash.
# is there a better way to give it access to DE-specific schemas as needed?
# https://github.com/AyatanaIndicators/ayatana-indicator-session/blob/88846bad7ee0aa8e0bb122816d06f9bc887eb464/src/service.c#L1387-L1413
gnome.gnome-settings-daemon
gnome-settings-daemon
mate.mate-settings-daemon
];

Expand Down
Loading