about summary refs log tree commit diff
path: root/pkgs/desktops
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2024-08-28 23:41:06 +0200
committerJan Tojnar <jtojnar@gmail.com>2024-09-01 14:16:31 +0200
commitd2da9a19c4ebbd9995c5228f05b4cd7aa9fce82d (patch)
tree78a2b491a3d6b06daefed78ed5a517952dcb14be /pkgs/desktops
parent649d663029e6417b6845340dec286be552b426de (diff)
gnome-settings-daemon{,43}: Move from gnome scope to top-level
Diffstat (limited to 'pkgs/desktops')
-rw-r--r--pkgs/desktops/gnome/core/gnome-session/default.nix5
-rw-r--r--pkgs/desktops/gnome/core/gnome-settings-daemon/43/default.nix129
-rw-r--r--pkgs/desktops/gnome/core/gnome-settings-daemon/43/fix-paths.patch15
-rw-r--r--pkgs/desktops/gnome/core/gnome-settings-daemon/add-gnome-session-ctl-option.patch58
-rw-r--r--pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix126
-rw-r--r--pkgs/desktops/gnome/core/gnome-settings-daemon/fix-paths.patch15
-rw-r--r--pkgs/desktops/gnome/default.nix7
-rw-r--r--pkgs/desktops/pantheon/default.nix2
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 { };