From 26c07cb8d61ba4ca102ec92acc5535a11df73f14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?No=C3=A9=20Lopez?= Date: Wed, 15 Apr 2026 08:35:24 +0200 Subject: gnu: gnome-settings-daemon: Restore desktop files. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 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 --- gnu/local.mk | 1 + gnu/packages/gnome.scm | 3 +- ...ome-settings-daemon-restore-desktop-files.patch | 103 +++++++++++++++++++++ 3 files changed, 106 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/gnome-settings-daemon-restore-desktop-files.patch diff --git a/gnu/local.mk b/gnu/local.mk index 175318f045e..98fb7fd97ee 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 44b453231a3..895f8ea385a 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 00000000000..d9bf07ba836 --- /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?= +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.@0@.desktop'.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.@0@.desktop'.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.@0@.target'.format(plugin_name_case) +- user_service = 'org.gnome.SettingsDaemon.@0@.service'.format(plugin_name_case) ++ user_target = 'org.gnome.SettingsDaemon.@0@.target'.format(plugin[1]) ++ user_service = 'org.gnome.SettingsDaemon.@0@.service'.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 + -- cgit v1.2.3