guix_mirror_bot pushed a commit to branch gnome-team
in repository guix.

commit 75d3aef56d831781afc1132b450ce125915817c4
Author: Noé Lopez <[email protected]>
AuthorDate: Wed Apr 15 08:35:24 2026 +0200

    gnu: gnome-settings-daemon: Restore desktop files.
    
    * gnu/packages/patches/gnome-settings-daemon-restore-desktop-files.patch:
    New file.
    * gnu/local.mk: Register it.
    * gnu/packages/gnome.scm (gnome-settings-daemon)[source]: Add it.
    
    Change-Id: I95597e1b9f5710e0ae1ebd4d5984d22d71b68459
    Signed-off-by: Noé Lopez <[email protected]>
---
 gnu/local.mk                                       |   1 +
 gnu/packages/gnome.scm                             |   3 +-
 ...ome-settings-daemon-restore-desktop-files.patch | 103 +++++++++++++++++++++
 3 files changed, 106 insertions(+), 1 deletion(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index 175318f045..98fb7fd97e 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1528,6 +1528,7 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/gnome-dictionary-meson-i18n.patch       \
   %D%/packages/patches/gnome-recipes-rest-in-soup.patch        \
   %D%/packages/patches/gnome-settings-daemon-gc.patch          \
+  %D%/packages/patches/gnome-settings-daemon-restore-desktop-files.patch       
\
   %D%/packages/patches/gnome-session-support-elogind.patch     \
   %D%/packages/patches/gnome-tweaks-search-paths.patch         \
   %D%/packages/patches/gnulib-bootstrap.patch                  \
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 44b453231a..895f8ea385 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -5905,7 +5905,8 @@ services for numerous locations.")
        (sha256
         (base32
          "1hf1dip78sjfsi28w80wkh6i51glprwl2j29gc9bkhwi9zy5g69a"))
-       (patches (search-patches "gnome-settings-daemon-gc.patch"))))
+       (patches (search-patches "gnome-settings-daemon-gc.patch"
+                                
"gnome-settings-daemon-restore-desktop-files.patch"))))
     (build-system meson-build-system)
     (arguments
      (list
diff --git 
a/gnu/packages/patches/gnome-settings-daemon-restore-desktop-files.patch 
b/gnu/packages/patches/gnome-settings-daemon-restore-desktop-files.patch
new file mode 100644
index 0000000000..d9bf07ba83
--- /dev/null
+++ b/gnu/packages/patches/gnome-settings-daemon-restore-desktop-files.patch
@@ -0,0 +1,103 @@
+From 6eefa4ef615e24688d20847afcb5fddb31a69774 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?No=C3=A9=20Lopez?= <[email protected]>
+Date: Wed, 15 Apr 2026 08:34:03 +0200
+Subject: [PATCH] Revert "plugins: Drop .desktop files"
+
+This reverts commit 242752d489b40f7cac20fc244a76eac8572cd955.
+---
+ meson.build                                   |  2 ++
+ plugins/meson.build                           | 25 +++++++++++++++++--
+ .../org.gnome.SettingsDaemon.Dummy.desktop.in |  7 ++++++
+ .../org.gnome.SettingsDaemon.Real.desktop.in  | 10 ++++++++
+ 4 files changed, 42 insertions(+), 2 deletions(-)
+ create mode 100644 plugins/org.gnome.SettingsDaemon.Dummy.desktop.in
+ create mode 100644 plugins/org.gnome.SettingsDaemon.Real.desktop.in
+
+diff --git a/meson.build b/meson.build
+index b1d5c53c..b69e3e1d 100644
+--- a/meson.build
++++ b/meson.build
+@@ -37,6 +37,8 @@ gsd_pkglibdir = join_paths(gsd_libdir, gsd_api_name)
+ 
+ gsd_schemadir = join_paths(gsd_datadir, 'glib-2.0', 'schemas')
+ 
++gsd_xdg_autostart = join_paths(gsd_sysconfdir, 'xdg', 'autostart')
++
+ gsd_3_0_api_name = '@0@-@1@'.format(meson.project_name(), '3.0')
+ gsd_gtk_modules_directory = join_paths(gsd_libdir, gsd_3_0_api_name, 
'gtk-modules')
+ 
+diff --git a/plugins/meson.build b/plugins/meson.build
+index fae3fc9e..68c79410 100644
+--- a/plugins/meson.build
++++ b/plugins/meson.build
+@@ -82,15 +82,36 @@ foreach plugin: all_plugins
+     plugin_description = plugin[2]
+     plugin_dbus_name='org.gnome.SettingsDaemon.@0@'.format(plugin_name_case)
+ 
++    desktop = 'org.gnome.SettingsDaemon.@[email protected]'.format(plugin[1])
++
++    if disabled_plugins.contains(plugin_name)
++        desktop_in_file = files('org.gnome.SettingsDaemon.Dummy.desktop.in')
++    else
++        desktop_in_file = files('org.gnome.SettingsDaemon.Real.desktop.in')
++    endif
++
+     cflags = [
+         '-DG_LOG_DOMAIN="@0@-plugin"'.format(plugin_name),
+         '-DPLUGIN_NAME="@0@"'.format(plugin_name),
+         '-DPLUGIN_DBUS_NAME="@0@"'.format(plugin_dbus_name),
+     ] + plugins_cflags
+ 
++    desktop = 'org.gnome.SettingsDaemon.@[email protected]'.format(plugin[1])
++    desktop_conf = configuration_data()
++    desktop_conf.set('libexecdir', gsd_libexecdir)
++    desktop_conf.set('systemd_hidden', enable_systemd ? 'true' : 'false')
++    desktop_conf.set('pluginname', plugin_name)
++    desktop_conf.set('description', plugin_description)
++    configure_file(
++        input: desktop_in_file,
++        output: desktop,
++        configuration: desktop_conf,
++        install_dir: gsd_xdg_autostart
++    )
++
+     if not disabled_plugins.contains(plugin_name)
+-        user_target = 
'org.gnome.SettingsDaemon.@[email protected]'.format(plugin_name_case)
+-        user_service = 
'org.gnome.SettingsDaemon.@[email protected]'.format(plugin_name_case)
++        user_target = 'org.gnome.SettingsDaemon.@[email protected]'.format(plugin[1])
++        user_service = 
'org.gnome.SettingsDaemon.@[email protected]'.format(plugin[1])
+ 
+         unit_conf = configuration_data()
+         unit_conf.set('plugin_name', plugin_name)
+diff --git a/plugins/org.gnome.SettingsDaemon.Dummy.desktop.in 
b/plugins/org.gnome.SettingsDaemon.Dummy.desktop.in
+new file mode 100644
+index 00000000..f4cc7a27
+--- /dev/null
++++ b/plugins/org.gnome.SettingsDaemon.Dummy.desktop.in
+@@ -0,0 +1,7 @@
++[Desktop Entry]
++Type=Application
++Name=GNOME Settings Daemon's @pluginname@ dummy autostart file
++Exec=false
++OnlyShowIn=GNOME;
++NoDisplay=true
++Hidden=true
+diff --git a/plugins/org.gnome.SettingsDaemon.Real.desktop.in 
b/plugins/org.gnome.SettingsDaemon.Real.desktop.in
+new file mode 100644
+index 00000000..3034e712
+--- /dev/null
++++ b/plugins/org.gnome.SettingsDaemon.Real.desktop.in
+@@ -0,0 +1,10 @@
++[Desktop Entry]
++Type=Application
++Name=@description@
++Exec=@libexecdir@/gsd-@pluginname@
++OnlyShowIn=GNOME;
++NoDisplay=true
++X-GNOME-Autostart-Phase=Initialization
++X-GNOME-Autostart-Notify=true
++X-GNOME-AutoRestart=true
++X-GNOME-HiddenUnderSystemd=@systemd_hidden@
+-- 
+2.52.0
+

Reply via email to