From c4a72a0aac2967b1bbdeafc7ccb940afd1c22d3e Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Tue, 17 Dec 2019 16:00:40 +0100 Subject: data: Install systemd specification for gnome-login session GDM needs to ship the systemd definition for the custom GNOME session it starts. --- data/gnome-login.session.in | 1 + data/meson.build | 13 +++++++++++++ data/session.conf | 19 +++++++++++++++++++ 3 files changed, 33 insertions(+) create mode 100644 data/session.conf (limited to 'data') diff --git a/data/gnome-login.session.in b/data/gnome-login.session.in index 618e76ce..fd9d45aa 100644 --- a/data/gnome-login.session.in +++ b/data/gnome-login.session.in @@ -1,3 +1,4 @@ [GNOME Session] Name=Display Manager +# Keep in sync with gnome-session@gnome-login.target.d/session.conf 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.Wacom; diff --git a/data/meson.build b/data/meson.build index 02353422..b24f7c0b 100644 --- a/data/meson.build +++ b/data/meson.build @@ -150,6 +150,13 @@ else systemd_systemunitdir = systemd_dep.get_pkgconfig_variable('systemdsystemunitdir') endif +if get_option('systemduserunitdir') != '' + systemd_userunitdir = get_option('systemduserunitdir') +else + systemd_userunitdir = systemd_dep.get_pkgconfig_variable('systemduserunitdir', + define_variable: ['prefix', get_option('prefix')]) +endif + configure_file( input: 'gdm.service.in', output: '@BASENAME@', @@ -158,6 +165,12 @@ configure_file( format: 'cmake' ) +install_data( + 'session.conf', + rename: join_paths('gnome-session@gnome-login.target.d', 'session.conf'), + install_dir: systemd_userunitdir, +) + # XSession if get_option('gdm-xsession') configure_file( diff --git a/data/session.conf b/data/session.conf new file mode 100644 index 00000000..560f8dce --- /dev/null +++ b/data/session.conf @@ -0,0 +1,19 @@ +[Unit] +# Keep in sync with gnome-login.session +Wants=org.gnome.SettingsDaemon.A11ySettings.target +Wants=org.gnome.SettingsDaemon.Color.target +Wants=org.gnome.SettingsDaemon.Datetime.target +Wants=org.gnome.SettingsDaemon.Housekeeping.target +Wants=org.gnome.SettingsDaemon.Keyboard.target +Wants=org.gnome.SettingsDaemon.MediaKeys.target +Wants=org.gnome.SettingsDaemon.Power.target +Wants=org.gnome.SettingsDaemon.PrintNotifications.target +Wants=org.gnome.SettingsDaemon.Rfkill.target +Wants=org.gnome.SettingsDaemon.ScreensaverProxy.target +Wants=org.gnome.SettingsDaemon.Sharing.target +Wants=org.gnome.SettingsDaemon.Smartcard.target +Wants=org.gnome.SettingsDaemon.Sound.target +Wants=org.gnome.SettingsDaemon.Wacom.target +Wants=org.gnome.SettingsDaemon.XSettings.target + +Requires=org.gnome.Shell.target -- cgit v1.2.1