[packages/gdm/no-x11] - update to 50.1; whole X11 support removed except for non-GNOME X11 sessions
qboosh
qboosh at pld-linux.org
Thu Jul 23 09:51:26 CEST 2026
commit 1f8c6bfdb11868da26a48119fb8d008d72a72f77
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Thu Jul 23 09:51:21 2026 +0200
- update to 50.1; whole X11 support removed except for non-GNOME X11 sessions
display-fallback.patch | 19 ---------------
gdm-defaults.patch | 25 -------------------
gdm-greeter-username.patch | 11 +++++++++
gdm-xdmcp.patch | 11 ---------
gdm.spec | 61 ++++++++--------------------------------------
5 files changed, 21 insertions(+), 106 deletions(-)
---
diff --git a/gdm.spec b/gdm.spec
index 8ac2c35..930fd98 100644
--- a/gdm.spec
+++ b/gdm.spec
@@ -16,13 +16,13 @@ Summary(pt_BR.UTF-8): Gerenciador de Entrada do GNOME
Summary(ru.UTF-8): Дисплейный менеджер GNOME
Summary(uk.UTF-8): Дисплейний менеджер GNOME
Name: gdm
-Version: 49.3
+Version: 50.1
Release: 1
Epoch: 2
License: GPL v2+
Group: X11/Applications
-Source0: https://download.gnome.org/sources/gdm/49/%{name}-%{version}.tar.xz
-# Source0-md5: f966997dbfd20ecdde100d05c13f06d5
+Source0: https://download.gnome.org/sources/gdm/50/%{name}-%{version}.tar.xz
+# Source0-md5: aed5adf1f054c76b5a4da739887f30c1
Source1: %{name}.pamd
Source2: %{name}.init
Source3: %{name}-pld-logo.png
@@ -32,11 +32,9 @@ Source6: %{name}-default.desktop
Source9: %{name}.tmpfiles
Source10: %{name}-fingerprint.pamd
Source11: %{name}-launch-environment.pamd
-Patch0: %{name}-xdmcp.patch
+Patch0: %{name}-greeter-username.patch
Patch1: %{name}-xsession.patch
-Patch2: %{name}-defaults.patch
Patch3: %{name}-both-libraries.patch
-Patch4: display-fallback.patch
URL: https://wiki.gnome.org/Projects/GDM
BuildRequires: accountsservice-devel >= 0.6.35
BuildRequires: audit-libs-devel
@@ -45,40 +43,28 @@ BuildRequires: dconf-devel
BuildRequires: gettext-tools >= 0.19.8
BuildRequires: glib2-devel >= %{glib2_ver}
BuildRequires: gobject-introspection-devel >= 0.9.12
-BuildRequires: gtk+3-devel >= 3.0.0
BuildRequires: iso-codes
BuildRequires: json-glib-devel >= 1.2.0
BuildRequires: keyutils-devel >= 1.6
-BuildRequires: libcanberra-gtk3-devel >= 0.4
BuildRequires: libgudev-devel >= 232
BuildRequires: libselinux-devel
BuildRequires: libstdc++-devel
-BuildRequires: libwrap-devel
-BuildRequires: libxcb-devel
BuildRequires: meson >= 0.57
BuildRequires: ninja >= 1.5
BuildRequires: pam-devel
BuildRequires: pkgconfig
BuildRequires: plymouth-devel
+BuildRequires: polkit-devel
BuildRequires: rpmbuild(find_lang) >= 1.23
BuildRequires: rpmbuild(macros) >= 2.042
-# >= 1:257 for userdb support
+# TODO: >= 1:257 for userdb support
BuildRequires: systemd-devel >= 1:209
BuildRequires: tar >= 1:1.22
BuildRequires: udev-devel
-BuildRequires: xorg-lib-libX11-devel
BuildRequires: xorg-lib-libXau-devel
-BuildRequires: xorg-lib-libXdmcp-devel
-BuildRequires: xorg-lib-libXext-devel
-BuildRequires: xorg-lib-libXft-devel
-BuildRequires: xorg-lib-libXi-devel
-BuildRequires: xorg-lib-libXinerama-devel
-# for "XServer disables tcp access by default" detection
-BuildRequires: xorg-xserver-server-devel >= 1.17
BuildRequires: xz
BuildRequires: yelp-tools
Requires(post,postun): glib2 >= %{glib2_ver}
-Requires(post,postun): gtk-update-icon-cache
Requires(postun): /usr/sbin/groupdel
Requires(postun): /usr/sbin/userdel
Requires(pre): /bin/id
@@ -88,21 +74,17 @@ Requires(posttrans): dconf
Requires: %{name}-libs = %{epoch}:%{version}-%{release}
Requires: /usr/bin/X
Requires: accountsservice >= 0.6.35
-Requires: dbus-x11
Requires: gdm-wm >= 3.2.1
Requires: glib2 >= %{glib2_ver}
Requires: gnome-session >= 3.26.0
Requires: gnome-settings-daemon >= 3.26.0
-Requires: hicolor-icon-theme
Requires: iso-codes
Requires: json-glib >= 1.2.0
-Requires: libcanberra-gtk3 >= 0.4
Requires: libgudev >= 232
Requires: pam >= 0.99.7.1
Requires: polkit-gnome >= 0.93
Requires: which
Requires: xinitrc-ng >= 1.0
-Requires: xorg-app-sessreg
Requires: xorg-app-xmodmap
Suggests: ConsoleKit-x11 >= 0.4.1
Suggests: pam-pam_gnome_keyring
@@ -216,9 +198,7 @@ Pakiet zawiera statyczne biblioteki GDM.
%setup -q
%patch -P0 -p1
%patch -P1 -p1
-%patch -P2 -p1
%patch -P3 -p1
-%patch -P4 -p1
%build
%meson \
@@ -226,16 +206,11 @@ Pakiet zawiera statyczne biblioteki GDM.
-Dgdm-xsession=true \
-Dgroup=xdm \
-Dinitial-vt=9 \
- -Dipv6=true \
-Dlibaudit=enabled \
-Dpam-mod-dir=/%{_lib}/security \
-Dpam-prefix=/etc \
-Dplymouth=enabled \
- -Dselinux=enabled \
- -Dtcp-wrappers=true \
- -Dudev-dir=/lib/udev/rules.d \
- -Duser=xdm \
- -Dxdmcp=enabled
+ -Dselinux=enabled
%meson_build
@@ -278,17 +253,7 @@ umask 022
%groupadd -g 55 -r -f xdm
%useradd -u 55 -r -d /home/services/xdm -s /bin/false -c "X Display Manager" -g xdm xdm
-%post
-%update_icon_cache hicolor
-%banner %{name} -e << EOF
-!!!!!!!!!!!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-! If you want to run Xorg sessions you have to give Xwrapper root permissons. !
-! To do this, set 'needs_root_rights = yes' in /etc/X11/Xwrapper.config !
-!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-EOF
-
%postun
-%update_icon_cache hicolor
if [ "$1" = "0" ]; then
%userremove xdm
%groupremove xdm
@@ -329,27 +294,20 @@ fi
%doc AUTHORS MAINTAINERS NEWS README.md
%attr(755,root,root) %{_sbindir}/gdm
%attr(755,root,root) %{_bindir}/gdm-config
-%attr(755,root,root) %{_bindir}/gdmflexiserver
-%attr(755,root,root) %{_libexecdir}/gdm-host-chooser
+%attr(755,root,root) %{_libexecdir}/gdm-new-session
%attr(755,root,root) %{_libexecdir}/gdm-runtime-config
%attr(755,root,root) %{_libexecdir}/gdm-session-worker
-%attr(755,root,root) %{_libexecdir}/gdm-simple-chooser
%attr(755,root,root) %{_libexecdir}/gdm-wayland-session
%attr(755,root,root) %{_libexecdir}/gdm-x-session
/%{_lib}/security/pam_gdm.so
%dir %{_sysconfdir}/gdm
-%dir %{_sysconfdir}/gdm/Init
-%attr(755,root,root) %config %{_sysconfdir}/gdm/Init/Default
-%attr(755,root,root) %config %{_sysconfdir}/gdm/PreSession
-%attr(755,root,root) %config %{_sysconfdir}/gdm/PostSession
%attr(755,root,root) %config %{_sysconfdir}/gdm/Xsession
-%dir %{_sysconfdir}/gdm/PostLogin
-%config %{_sysconfdir}/gdm/PostLogin/Default.sample
%attr(640,root,xdm) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gdm/custom.conf
%config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/system.d/gdm.conf
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/gdm-*
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.gdm
%{_datadir}/dconf/profile/gdm
+%{_datadir}/polkit-1/actions/org.gnome.displaymanager.policy
%{_datadir}/polkit-1/rules.d/20-gdm.rules
%dir %{systemduserunitdir}/gnome-session at gnome-login.target.d
%{systemduserunitdir}/gnome-session at gnome-login.target.d/gnome-login.session.conf
@@ -370,6 +328,7 @@ fi
%defattr(644,root,root,755)
%attr(754,root,root) /etc/rc.d/init.d/gdm
%{systemdunitdir}/gdm.service
+%{systemdunitdir}/gnome-headless-session at .service
%files libs
%defattr(644,root,root,755)
diff --git a/display-fallback.patch b/display-fallback.patch
deleted file mode 100644
index e2eaaae..0000000
--- a/display-fallback.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- gdm-48.0/daemon/gdm-local-display-factory.c~ 2025-03-17 17:07:15.000000000 +0100
-+++ gdm-48.0/daemon/gdm-local-display-factory.c 2025-05-10 01:44:03.026665878 +0200
-@@ -347,14 +347,14 @@
- return NULL;
- #endif
-
-- if (!should_fall_back || fallback_display_server == NULL) {
- if (display_server_enabled (factory, preferred_display_server))
- g_ptr_array_add (session_types_array, (gpointer) get_session_type_for_display_server (factory, preferred_display_server));
-- }
-
- #ifdef ENABLE_X11_SUPPORT
-+ if (should_fall_back && fallback_display_server != NULL) {
- if (display_server_enabled (factory, fallback_display_server))
- g_ptr_array_add (session_types_array, (gpointer) get_session_type_for_display_server (factory, fallback_display_server));
-+ }
- #endif
-
- if (session_types_array->len == 0)
diff --git a/gdm-defaults.patch b/gdm-defaults.patch
deleted file mode 100644
index b220660..0000000
--- a/gdm-defaults.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- gdm-47.0/meson.build.orig 2024-09-26 18:51:02.857969320 +0200
-+++ gdm-47.0/meson.build 2024-09-26 18:54:27.126862700 +0200
-@@ -95,20 +95,8 @@ if have_x11_support
- # Xserver 1.17 & later default to -nolisten and require -listen for remote access
- xserver_deps = dependency('xorg-server', version : '>=1.17', required : false)
- xserver_has_listen = xserver_deps.found()
-- find_x_server_script = find_program('build-aux/find-x-server.sh', native: true)
-- find_x_server_out = run_command(find_x_server_script).stdout().strip()
-- if find_x_server_out != ''
-- x_bin = find_x_server_out
-- x_bin_path_split = x_bin.split('/')
-- i = 0
-- x_path = '/'
-- foreach dir : x_bin_path_split
-- if i < x_bin_path_split.length() - 1
-- x_path = x_path / dir
-- endif
-- i = i + 1
-- endforeach
-- endif
-+ x_bin = '/usr/bin/X'
-+ x_path = '/usr/bin'
-
- xdmcp_dep = cc.find_library('Xdmcp', required: get_option('xdmcp'))
- have_xdmcp = xdmcp_dep.found()
diff --git a/gdm-greeter-username.patch b/gdm-greeter-username.patch
new file mode 100644
index 0000000..b900e67
--- /dev/null
+++ b/gdm-greeter-username.patch
@@ -0,0 +1,11 @@
+--- gdm-50.1/daemon/gdm-launch-environment.c.orig 2026-05-28 16:22:49.000000000 +0200
++++ gdm-50.1/daemon/gdm-launch-environment.c 2026-07-23 09:35:42.004141874 +0200
+@@ -51,7 +51,7 @@
+ #include "gdm-settings-keys.h"
+
+ #define GDM_GREETER_SESSION "gnome-greeter"
+-#define GDM_GREETER_USERNAME "gdm-greeter"
++#define GDM_GREETER_USERNAME "xdm"
+ #define GDM_GREETER_DISP_NAME "GDM Greeter"
+
+ #define INITIAL_SETUP_SESSION "gnome-initial-setup"
diff --git a/gdm-xdmcp.patch b/gdm-xdmcp.patch
deleted file mode 100644
index 9b3e7b8..0000000
--- a/gdm-xdmcp.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- gdm-2.24.0.orig/daemon/gdm-server.c 2008-10-03 00:53:12.000000000 +0200
-+++ gdm-2.24.0/daemon/gdm-server.c 2008-10-03 00:53:57.000000000 +0200
-@@ -419,7 +419,7 @@
- g_debug ("GdmServer: Opening logfile for server %s", log_path);
-
- VE_IGNORE_EINTR (g_unlink (log_path));
-- VE_IGNORE_EINTR (logfd = open (log_path, O_CREAT|O_APPEND|O_TRUNC|O_WRONLY|O_EXCL, 0644));
-+ VE_IGNORE_EINTR (logfd = open (log_path, O_CREAT|O_APPEND|O_TRUNC|O_WRONLY|O_EXCL, 0640));
-
- g_free (log_path);
-
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/gdm.git/commitdiff/1f8c6bfdb11868da26a48119fb8d008d72a72f77
More information about the pld-cvs-commit
mailing list