From 9c28ee9daf0927905916e2102830b958b20a164c Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Wed, 30 Aug 2023 06:22:28 +0200 Subject: [PATCH] gnu: gdm: Update to 44.1. * gnu/packages/gnome.scm (gdm): Update to 44.1. [inputs]: Add egl-wayland. * gnu/packages/patches/gdm-elogind-support.patch: Adjust accordingly. --- gnu/packages/gnome.scm | 5 +- .../patches/gdm-elogind-support.patch | 93 +++++++++---------- 2 files changed, 45 insertions(+), 53 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 049a6df8da..81e3e0cd65 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -8728,7 +8728,7 @@ library.") (define-public gdm (package (name "gdm") - (version "42.0") + (version "44.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -8736,7 +8736,7 @@ library.") name "-" version ".tar.xz")) (sha256 (base32 - "0m9qmm3vm81jmqlc30a1fb79hsr4l4lpiw0zjxww3gipd6bsqa53")) + "03avvkrm2jd0731ggh9cjnkhrfysqp4slrq0km3gqa3xpqx6n9k8")) (patches (search-patches "gdm-default-session.patch" @@ -8929,6 +8929,7 @@ logo='~a'~%" icon)))))) (list accountsservice check ;for testing dbus + egl-wayland elogind eudev gnome-session diff --git a/gnu/packages/patches/gdm-elogind-support.patch b/gnu/packages/patches/gdm-elogind-support.patch index 5c8e3bd610..b27e000585 100644 --- a/gnu/packages/patches/gdm-elogind-support.patch +++ b/gnu/packages/patches/gdm-elogind-support.patch @@ -18,10 +18,10 @@ system and user units. meson_options.txt | 5 +- 6 files changed, 66 insertions(+), 42 deletions(-) -diff --git a/common/meson.build b/common/meson.build -index 074dd92e..bca58f7c 100644 ---- a/common/meson.build -+++ b/common/meson.build +Index: gdm-44.1/common/meson.build +=================================================================== +--- gdm-44.1.orig/common/meson.build ++++ gdm-44.1/common/meson.build @@ -11,7 +11,7 @@ libgdmcommon_src = files( ) @@ -31,10 +31,10 @@ index 074dd92e..bca58f7c 100644 gobject_dep, gio_dep, gio_unix_dep, -diff --git a/data/meson.build b/data/meson.build -index 2dec4c23..c3452e1c 100644 ---- a/data/meson.build -+++ b/data/meson.build +Index: gdm-44.1/data/meson.build +=================================================================== +--- gdm-44.1.orig/data/meson.build ++++ gdm-44.1/data/meson.build @@ -164,41 +164,53 @@ else service_config.set('PLYMOUTH_QUIT_SERVICE', '') endif @@ -114,10 +114,10 @@ index 2dec4c23..c3452e1c 100644 # XSession if get_option('gdm-xsession') -diff --git a/libgdm/meson.build b/libgdm/meson.build -index 3f8cafbb..83e95151 100644 ---- a/libgdm/meson.build -+++ b/libgdm/meson.build +Index: gdm-44.1/libgdm/meson.build +=================================================================== +--- gdm-44.1.orig/libgdm/meson.build ++++ gdm-44.1/libgdm/meson.build @@ -56,7 +56,7 @@ libgdm_deps = [ glib_dep, gio_dep, @@ -127,55 +127,46 @@ index 3f8cafbb..83e95151 100644 libgdmcommon_dep, ] -diff --git a/meson.build b/meson.build -index 845f673e..d0ca41ef 100644 ---- a/meson.build -+++ b/meson.build -@@ -96,21 +96,30 @@ xdmcp_dep = cc.find_library('Xdmcp', required: get_option('xdmcp')) - if xdmcp_dep.found() and get_option('tcp-wrappers') +Index: gdm-44.1/meson.build +=================================================================== +--- gdm-44.1.orig/meson.build ++++ gdm-44.1/meson.build +@@ -100,16 +100,24 @@ if xdmcp_dep.found() and get_option('tcp libwrap_dep = cc.find_library('wrap') endif --# systemd + # systemd -systemd_dep = dependency('systemd') -libsystemd_dep = dependency('libsystemd') --if meson.version().version_compare('>= 0.53') -- systemd_multiseat_x = find_program('systemd-multi-seat-x', -- required: false, -- dirs: [ -- systemd_dep.get_pkgconfig_variable('systemdutildir'), -- '/lib/systemd', -- '/usr/lib/systemd', -- ]) -+ +-systemd_multiseat_x = find_program('systemd-multi-seat-x', +- required: false, +- dirs: [ +- systemd_dep.get_pkgconfig_variable('systemdutildir'), +- '/lib/systemd', +- '/usr/lib/systemd', +- ]) +-systemd_x_server = systemd_multiseat_x.found()? systemd_multiseat_x.path() : '/lib/systemd/systemd-multi-seat-x' +logind_provider = get_option('logind-provider') +systemd_dep = dependency('systemd', required: false) +if logind_provider == 'systemd' + libsystemd_dep = dependency('libsystemd') + logind_dep = libsystemd_dep -+ if meson.version().version_compare('>= 0.53') -+ systemd_multiseat_x = find_program('systemd-multi-seat-x', -+ required: false, -+ dirs: [ -+ systemd_dep.get_pkgconfig_variable('systemdutildir'), -+ '/lib/systemd', -+ '/usr/lib/systemd', -+ ]) -+ else -+ systemd_multiseat_x = find_program('systemd-multi-seat-x', required: false) -+ endif ++ systemd_multiseat_x = find_program('systemd-multi-seat-x', ++ required: false, ++ dirs: [ ++ systemd_dep.get_pkgconfig_variable('systemdutildir'), ++ '/lib/systemd', ++ '/usr/lib/systemd', ++ ]) + systemd_x_server = systemd_multiseat_x.found()? systemd_multiseat_x.path() : '/lib/systemd/systemd-multi-seat-x' - else -- systemd_multiseat_x = find_program('systemd-multi-seat-x', required: false) ++else + elogind_dep = dependency('libelogind') + logind_dep = elogind_dep + systemd_x_server = 'disabled' - endif --systemd_x_server = systemd_multiseat_x.found()? systemd_multiseat_x.path() : '/lib/systemd/systemd-multi-seat-x' -+ ++endif # Plymouth plymouth_dep = dependency('ply-boot-client', required: get_option('plymouth')) # Check for Solaris auditing API (ADT) -@@ -319,6 +328,7 @@ summary({ +@@ -319,6 +327,7 @@ summary({ 'PAM Syslog': have_pam_syslog, 'Supports PAM Extensions': pam_extensions_supported, 'SeLinux': libselinux_dep.found(), @@ -183,11 +174,11 @@ index 845f673e..d0ca41ef 100644 'Use GDM Xsession': get_option('gdm-xsession'), 'Use UserDisplayServer': get_option('user-display-server'), 'Use SystemdJournal': get_option('systemd-journal'), -diff --git a/meson_options.txt b/meson_options.txt -index 14e0b908..5135d7d6 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -12,6 +12,7 @@ option('initial-vt', type: 'integer', value: 1, description: 'Initial virtual te +Index: gdm-44.1/meson_options.txt +=================================================================== +--- gdm-44.1.orig/meson_options.txt ++++ gdm-44.1/meson_options.txt +@@ -12,6 +12,7 @@ option('initial-vt', type: 'integer', va option('ipv6', type: 'boolean', value: false, description: 'Enables compilation of IPv6 code.') option('lang-file', type: 'string', value: '', description: 'File containing default language settings.') option('libaudit', type: 'feature', value: 'auto', description: 'Add Linux audit support.') @@ -195,7 +186,7 @@ index 14e0b908..5135d7d6 100644 option('log-dir', type: 'string', value: '/var/log/gdm', description: 'Log directory.') option('pam-mod-dir', type: 'string', value: '', description: 'Directory to install PAM modules in.') option('pam-prefix', type: 'string', value: '', description: 'Specify where PAM files go.') -@@ -27,8 +28,8 @@ option('solaris', type: 'boolean', value: false, description: 'Build for Solaris +@@ -27,8 +28,8 @@ option('solaris', type: 'boolean', value option('split-authentication', type: 'boolean', value: true, description: 'Enable multiple simultaneous PAM conversations during login.') option('sysconfsubdir', type: 'string', value: 'gdm', description: 'Directory name used under sysconfdir.') option('systemd-journal', type: 'boolean', value: true, description: 'Use journald support.')