Skip to content

data: Leave to meson the duty of keeping the lists in sync

Marco Trevisan requested to merge 3v1n0/gnome-session:meson-improvements into master

Don't leave to humans what machines can do, the gnome.session.desktop.in.in is filled with an hard-to-maintain single-line semicolon separated list of components, that then are repeated in the gnome systemd gnome.session.conf. And these are meant to be kept in sync.

Meson can help us in this, so let's just keep a single list in meson and use it to generate the various formats we need.

Using a map to keep the components so that this can be easily adapted and possibly new sessions can be defined.


As you can check, no change in results:

❯ diff -ur _INSTALL_PRE _INSTALL                                                       
Binary files _INSTALL_PRE/usr/local/bin/gnome-session-inhibit and _INSTALL/usr/local/bin/gnome-session-inhibit differ
Binary files _INSTALL_PRE/usr/local/bin/gnome-session-quit and _INSTALL/usr/local/bin/gnome-session-quit differ
diff --color -ur _INSTALL_PRE/usr/local/lib/systemd/user/gnome-session@gnome.target.d/session.conf _INSTALL/usr/local/lib/systemd/user/gnome-session@gnome.target.d/session.conf
--- _INSTALL_PRE/usr/local/lib/systemd/user/gnome-session@gnome.target.d/session.conf	2020-08-31 16:41:14.497029109 +0200
+++ _INSTALL/usr/local/lib/systemd/user/gnome-session@gnome.target.d/session.conf	2020-08-31 16:31:14.430599102 +0200
@@ -1,5 +1,4 @@
 [Unit]
-# Keep in sync with gnome.session
 Wants=org.gnome.SettingsDaemon.A11ySettings.target
 Wants=org.gnome.SettingsDaemon.Color.target
 Wants=org.gnome.SettingsDaemon.Datetime.target
Binary files _INSTALL_PRE/usr/local/libexec/gnome-session-binary and _INSTALL/usr/local/libexec/gnome-session-binary differ
Binary files _INSTALL_PRE/usr/local/libexec/gnome-session-check-accelerated and _INSTALL/usr/local/libexec/gnome-session-check-accelerated differ
Binary files _INSTALL_PRE/usr/local/libexec/gnome-session-check-accelerated-gles-helper and _INSTALL/usr/local/libexec/gnome-session-check-accelerated-gles-helper differ
Binary files _INSTALL_PRE/usr/local/libexec/gnome-session-check-accelerated-gl-helper and _INSTALL/usr/local/libexec/gnome-session-check-accelerated-gl-helper differ
Binary files _INSTALL_PRE/usr/local/libexec/gnome-session-ctl and _INSTALL/usr/local/libexec/gnome-session-ctl differ
Binary files _INSTALL_PRE/usr/local/libexec/gnome-session-failed and _INSTALL/usr/local/libexec/gnome-session-failed differ
diff --color -ur _INSTALL_PRE/usr/local/share/gnome-session/sessions/gnome.session _INSTALL/usr/local/share/gnome-session/sessions/gnome.session
--- _INSTALL_PRE/usr/local/share/gnome-session/sessions/gnome.session	2020-08-31 16:41:32.632862641 +0200
+++ _INSTALL/usr/local/share/gnome-session/sessions/gnome.session	2020-08-31 16:40:30.917429513 +0200
@@ -91,5 +91,4 @@
 Name[zh_HK]=GNOME
 Name[zh_TW]=GNOME
 Name=GNOME
-# Keep in sync with gnome-session@gnome.target.d/session.conf drop-in
 RequiredComponents=org.gnome.Shell;org.gnome.SettingsDaemon.A11ySettings;org.gnome.SettingsDaemon.Color;org.gnome.SettingsDaemon.Datetime;org.gnome.SettingsDaemon.Housekeeping;org.gnome.SettingsDaemon.Keyboard;org.gnome.SettingsDaemon.MediaKeys;org.gnome.SettingsDaemon.Power;org.gnome.SettingsDaemon.PrintNotifications;org.gnome.SettingsDaemon.Rfkill;org.gnome.SettingsDaemon.ScreensaverProxy;org.gnome.SettingsDaemon.Sharing;org.gnome.SettingsDaemon.Smartcard;org.gnome.SettingsDaemon.Sound;org.gnome.SettingsDaemon.UsbProtection;org.gnome.SettingsDaemon.Wacom;org.gnome.SettingsDaemon.XSettings;

Merge request reports