diff options
author | Jan Tojnar <jtojnar@gmail.com> | 2024-08-28 23:41:06 +0200 |
---|---|---|
committer | Jan Tojnar <jtojnar@gmail.com> | 2024-09-01 14:16:31 +0200 |
commit | d2da9a19c4ebbd9995c5228f05b4cd7aa9fce82d (patch) | |
tree | 78a2b491a3d6b06daefed78ed5a517952dcb14be /pkgs/desktops | |
parent | 649d663029e6417b6845340dec286be552b426de (diff) |
gnome-settings-daemon{,43}: Move from gnome scope to top-level
Diffstat (limited to 'pkgs/desktops')
8 files changed, 6 insertions, 351 deletions
diff --git a/pkgs/desktops/gnome/core/gnome-session/default.nix b/pkgs/desktops/gnome/core/gnome-session/default.nix index 74eb9dbd09ec0..78824870ac0ca 100644 --- a/pkgs/desktops/gnome/core/gnome-session/default.nix +++ b/pkgs/desktops/gnome/core/gnome-session/default.nix @@ -12,6 +12,7 @@ gtk3, gsettings-desktop-schemas, gnome-desktop, + gnome-settings-daemon, dbus, json-glib, libICE, @@ -75,7 +76,7 @@ stdenv.mkDerivation (finalAttrs: { json-glib xorg.xtrans adwaita-icon-theme - gnome.gnome-settings-daemon + gnome-settings-daemon gsettings-desktop-schemas systemd libepoxy @@ -114,7 +115,7 @@ stdenv.mkDerivation (finalAttrs: { --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ --suffix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH" \ --suffix XDG_DATA_DIRS : "${gnome.gnome-shell}/share" \ - --suffix XDG_CONFIG_DIRS : "${gnome.gnome-settings-daemon}/etc/xdg" + --suffix XDG_CONFIG_DIRS : "${gnome-settings-daemon}/etc/xdg" ''; separateDebugInfo = true; diff --git a/pkgs/desktops/gnome/core/gnome-settings-daemon/43/default.nix b/pkgs/desktops/gnome/core/gnome-settings-daemon/43/default.nix deleted file mode 100644 index ff0fbbffb0667..0000000000000 --- a/pkgs/desktops/gnome/core/gnome-settings-daemon/43/default.nix +++ /dev/null @@ -1,129 +0,0 @@ -{ - stdenv, - lib, - fetchpatch, - substituteAll, - fetchurl, - meson, - ninja, - pkg-config, - gnome, - perl, - gettext, - gtk3, - glib, - libnotify, - libgnomekbd, - lcms2, - libpulseaudio, - alsa-lib, - libcanberra-gtk3, - upower, - colord, - libgweather, - polkit, - gsettings-desktop-schemas, - geoclue2, - systemd, - libgudev, - libwacom, - libxslt, - libxml2, - modemmanager, - networkmanager, - gnome-desktop, - geocode-glib_2, - docbook_xsl, - wrapGAppsHook3, - python3, - tzdata, - nss, - gcr_4, - gnome-session-ctl, -}: - -stdenv.mkDerivation (finalAttrs: { - pname = "gnome-settings-daemon"; - version = "43.0"; - - src = fetchurl { - url = "mirror://gnome/sources/gnome-settings-daemon/${lib.versions.major finalAttrs.version}/gnome-settings-daemon-${finalAttrs.version}.tar.xz"; - sha256 = "NRO7JPxvgYFmciOmSgZ1NP3M879mMmqUA9OLDw1gE9A="; - }; - - patches = [ - # https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/merge_requests/202 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/gnome-settings-daemon/commit/aae1e774dd9de22fe3520cf9eb2bfbf7216f5eb0.patch"; - sha256 = "O4m0rOW8Zrgu3Q0p0OA8b951VC0FjYbOUk9MLzB9icI="; - }) - - (substituteAll { - src = ./fix-paths.patch; - inherit tzdata; - }) - ]; - - nativeBuildInputs = [ - meson - ninja - pkg-config - perl - gettext - libxml2 - libxslt - docbook_xsl - wrapGAppsHook3 - python3 - ]; - - buildInputs = [ - gtk3 - glib - gsettings-desktop-schemas - modemmanager - networkmanager - libnotify - libgnomekbd # for org.gnome.libgnomekbd.keyboard schema - gnome-desktop - lcms2 - libpulseaudio - alsa-lib - libcanberra-gtk3 - upower - colord - libgweather - nss - polkit - geocode-glib_2 - geoclue2 - systemd - libgudev - libwacom - gcr_4 - ]; - - mesonFlags = [ - "-Dudev_dir=${placeholder "out"}/lib/udev" - "-Dgnome_session_ctl_path=${gnome-session-ctl}/libexec/gnome-session-ctl" - ]; - - # Default for release buildtype but passed manually because - # we're using plain - env.NIX_CFLAGS_COMPILE = "-DG_DISABLE_CAST_CHECKS"; - - postPatch = '' - for f in gnome-settings-daemon/codegen.py plugins/power/gsd-power-constants-update.pl; do - chmod +x $f - patchShebangs $f - done - ''; - - meta = with lib; { - description = "GNOME Settings Daemon"; - homepage = "https://gitlab.gnome.org/GNOME/gnome-settings-daemon/"; - license = licenses.gpl2Plus; - maintainers = teams.pantheon.members; - platforms = platforms.linux; - }; -}) diff --git a/pkgs/desktops/gnome/core/gnome-settings-daemon/43/fix-paths.patch b/pkgs/desktops/gnome/core/gnome-settings-daemon/43/fix-paths.patch deleted file mode 100644 index 2229302cab7c0..0000000000000 --- a/pkgs/desktops/gnome/core/gnome-settings-daemon/43/fix-paths.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- a/plugins/datetime/tz.h -+++ b/plugins/datetime/tz.h -@@ -27,11 +27,7 @@ - - #include <glib.h> - --#ifndef __sun --# define TZ_DATA_FILE "/usr/share/zoneinfo/zone.tab" --#else --# define TZ_DATA_FILE "/usr/share/lib/zoneinfo/tab/zone_sun.tab" --#endif -+#define TZ_DATA_FILE "@tzdata@/share/zoneinfo/zone.tab" - - typedef struct _TzDB TzDB; - typedef struct _TzLocation TzLocation; diff --git a/pkgs/desktops/gnome/core/gnome-settings-daemon/add-gnome-session-ctl-option.patch b/pkgs/desktops/gnome/core/gnome-settings-daemon/add-gnome-session-ctl-option.patch deleted file mode 100644 index 8bdf39ce37b62..0000000000000 --- a/pkgs/desktops/gnome/core/gnome-settings-daemon/add-gnome-session-ctl-option.patch +++ /dev/null @@ -1,58 +0,0 @@ -From aae1e774dd9de22fe3520cf9eb2bfbf7216f5eb0 Mon Sep 17 00:00:00 2001 -From: WORLDofPEACE <worldofpeace@protonmail.ch> -Date: Sun, 20 Sep 2020 16:09:36 -0400 -Subject: [PATCH] build: add a gnome_session_ctl_path option - -In gsd.service.in the ExecStopPost expects g-s-d libexecdir to -be from the same prefix as gnome-session's, and this is not necessarily -true as there are linux distro's that install their packages into their -own individual prefixes (like NixOS or Guix). ---- - meson_options.txt | 1 + - plugins/gsd.service.in | 2 +- - plugins/meson.build | 6 ++++++ - 3 files changed, 8 insertions(+), 1 deletion(-) - -diff --git a/meson_options.txt b/meson_options.txt -index 3e04cf64f..21e003c61 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -1,4 +1,5 @@ - option('udev_dir', type: 'string', value: '', description: 'Absolute path of the udev base directory') -+option('gnome_session_ctl_path', type: 'string', value: '', description: 'Absolute path to the gnome-session-ctl binary') - option('systemd', type: 'boolean', value: true, description: 'Enable systemd integration') - - option('alsa', type: 'boolean', value: true, description: 'build with ALSA support (not optional on Linux platforms)') -diff --git a/plugins/gsd.service.in b/plugins/gsd.service.in -index 79b5f5536..bfbde6d05 100644 ---- a/plugins/gsd.service.in -+++ b/plugins/gsd.service.in -@@ -23,4 +23,4 @@ BusName=@plugin_dbus_name@ - TimeoutStopSec=5 - # We cannot use OnFailure as e.g. dependency failures are normal - # https://github.com/systemd/systemd/issues/12352 --ExecStopPost=@libexecdir@/gnome-session-ctl --exec-stop-check -+ExecStopPost=@gnome_session_ctl@ --exec-stop-check -diff --git a/plugins/meson.build b/plugins/meson.build -index 83e018854..266a0f093 100644 ---- a/plugins/meson.build -+++ b/plugins/meson.build -@@ -20,6 +20,11 @@ all_plugins = [ - - disabled_plugins = [] - -+gnome_session_ctl = get_option('gnome_session_ctl_path') -+if gnome_session_ctl == '' -+ gnome_session_ctl = join_paths(gsd_libexecdir, 'gnome-session-ctl') -+endif -+ - if not enable_smartcard - disabled_plugins += ['smartcard'] - endif -@@ -125,6 +130,7 @@ foreach plugin: all_plugins - unit_conf.set('plugin_name', plugin_name) - unit_conf.set('description', plugin_description) - unit_conf.set('libexecdir', gsd_libexecdir) -+ unit_conf.set('gnome_session_ctl', gnome_session_ctl) - unit_conf.set('plugin_dbus_name', plugin_dbus_name) - unit_conf.set('plugin_restart', plugin_restart_rule.get(plugin_name, 'on-failure')) diff --git a/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix b/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix deleted file mode 100644 index f5b1f89805d48..0000000000000 --- a/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix +++ /dev/null @@ -1,126 +0,0 @@ -{ - stdenv, - lib, - substituteAll, - fetchurl, - meson, - ninja, - pkg-config, - gnome, - perl, - gettext, - gtk3, - glib, - libnotify, - libgnomekbd, - libpulseaudio, - alsa-lib, - libcanberra-gtk3, - upower, - colord, - libgweather, - polkit, - gsettings-desktop-schemas, - geoclue2, - systemd, - libgudev, - libwacom, - libxslt, - libxml2, - modemmanager, - networkmanager, - gnome-desktop, - geocode-glib_2, - docbook_xsl, - wrapGAppsHook3, - python3, - tzdata, - gcr_4, - gnome-session-ctl, -}: - -stdenv.mkDerivation (finalAttrs: { - pname = "gnome-settings-daemon"; - version = "46.0"; - - src = fetchurl { - url = "mirror://gnome/sources/gnome-settings-daemon/${lib.versions.major finalAttrs.version}/gnome-settings-daemon-${finalAttrs.version}.tar.xz"; - hash = "sha256-C5oPZPoYqOfgm0yVo/dU+gM8LNvS3DVwHwYYVywcs9c="; - }; - - patches = [ - # https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/merge_requests/202 - ./add-gnome-session-ctl-option.patch - - (substituteAll { - src = ./fix-paths.patch; - inherit tzdata; - }) - ]; - - nativeBuildInputs = [ - meson - ninja - pkg-config - perl - gettext - libxml2 - libxslt - docbook_xsl - wrapGAppsHook3 - python3 - ]; - - buildInputs = [ - gtk3 - glib - gsettings-desktop-schemas - modemmanager - networkmanager - libnotify - libgnomekbd # for org.gnome.libgnomekbd.keyboard schema - gnome-desktop - libpulseaudio - alsa-lib - libcanberra-gtk3 - upower - colord - libgweather - polkit - geocode-glib_2 - geoclue2 - systemd - libgudev - libwacom - gcr_4 - ]; - - mesonFlags = [ - "-Dudev_dir=${placeholder "out"}/lib/udev" - "-Dgnome_session_ctl_path=${gnome-session-ctl}/libexec/gnome-session-ctl" - ]; - - # Default for release buildtype but passed manually because - # we're using plain - env.NIX_CFLAGS_COMPILE = "-DG_DISABLE_CAST_CHECKS"; - - postPatch = '' - for f in gnome-settings-daemon/codegen.py plugins/power/gsd-power-constants-update.pl; do - chmod +x $f - patchShebangs $f - done - ''; - - passthru = { - updateScript = gnome.updateScript { - packageName = "gnome-settings-daemon"; - attrPath = "gnome.gnome-settings-daemon"; - }; - }; - - meta = with lib; { - license = licenses.gpl2Plus; - maintainers = teams.gnome.members; - platforms = platforms.linux; - }; -}) diff --git a/pkgs/desktops/gnome/core/gnome-settings-daemon/fix-paths.patch b/pkgs/desktops/gnome/core/gnome-settings-daemon/fix-paths.patch deleted file mode 100644 index 2229302cab7c0..0000000000000 --- a/pkgs/desktops/gnome/core/gnome-settings-daemon/fix-paths.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- a/plugins/datetime/tz.h -+++ b/plugins/datetime/tz.h -@@ -27,11 +27,7 @@ - - #include <glib.h> - --#ifndef __sun --# define TZ_DATA_FILE "/usr/share/zoneinfo/zone.tab" --#else --# define TZ_DATA_FILE "/usr/share/lib/zoneinfo/tab/zone_sun.tab" --#endif -+#define TZ_DATA_FILE "@tzdata@/share/zoneinfo/zone.tab" - - typedef struct _TzDB TzDB; - typedef struct _TzLocation TzLocation; diff --git a/pkgs/desktops/gnome/default.nix b/pkgs/desktops/gnome/default.nix index 6c435e76ed95f..401d6bbdd73c9 100644 --- a/pkgs/desktops/gnome/default.nix +++ b/pkgs/desktops/gnome/default.nix @@ -23,11 +23,6 @@ in gnome-shell = callPackage ./core/gnome-shell { }; - gnome-settings-daemon = callPackage ./core/gnome-settings-daemon { }; - - # Using 43 to match Mutter used in Pantheon - gnome-settings-daemon43 = callPackage ./core/gnome-settings-daemon/43 { }; - gvfs = pkgs.gvfs.override { gnomeSupport = true; }; mutter = callPackage ./core/mutter { }; @@ -134,6 +129,8 @@ in gnome-robots = lib.warn "The ‘gnome.gnome-robots’ was moved to top-level. Please use ‘pkgs.gnome-robots’ directly." pkgs.gnome-robots; # Added on 2024-08-11. gnome-screenshot = lib.warn "The ‘gnome.gnome-screenshot’ was moved to top-level. Please use ‘pkgs.gnome-screenshot’ directly." pkgs.gnome-screenshot; # Added on 2024-06-22. gnome-session-ctl = lib.warn "The ‘gnome.gnome-session-ctl’ was moved to top-level. Please use ‘pkgs.gnome-session-ctl’ directly." pkgs.gnome-session-ctl; # Added on 2024-08-28. + gnome-settings-daemon = lib.warn "The ‘gnome.gnome-settings-daemon’ was moved to top-level. Please use ‘pkgs.gnome-settings-daemon’ directly." pkgs.gnome-settings-daemon; # Added on 2024-08-28. + gnome-settings-daemon43 = lib.warn "The ‘gnome.gnome-settings-daemon43’ was moved to top-level. Please use ‘pkgs.gnome-settings-daemon43’ directly." pkgs.gnome-settings-daemon43; # Added on 2024-08-28. gnome-shell-extensions = lib.warn "The ‘gnome.gnome-shell-extensions’ was moved to top-level. Please use ‘pkgs.gnome-shell-extensions’ directly." pkgs.gnome-shell-extensions; # Added on 2024-08-11. gnome-software = lib.warn "The ‘gnome.gnome-software’ was moved to top-level. Please use ‘pkgs.gnome-software’ directly." pkgs.gnome-software; # Added on 2024-08-11. gnome-sound-recorder = lib.warn "The ‘gnome.gnome-sound-recorder’ was moved to top-level. Please use ‘pkgs.gnome-sound-recorder’ directly." pkgs.gnome-sound-recorder; # Added on 2024-08-11. diff --git a/pkgs/desktops/pantheon/default.nix b/pkgs/desktops/pantheon/default.nix index 47f4d036fc5cb..d0febb9513e93 100644 --- a/pkgs/desktops/pantheon/default.nix +++ b/pkgs/desktops/pantheon/default.nix @@ -41,7 +41,7 @@ lib.makeScope pkgs.newScope (self: with self; { mutter = pkgs.gnome.mutter43; # Using 43 to match Mutter used in Pantheon - gnome-settings-daemon = pkgs.gnome.gnome-settings-daemon43; + gnome-settings-daemon = pkgs.gnome-settings-daemon43; elementary-gsettings-schemas = callPackage ./desktop/elementary-gsettings-schemas { }; |