diff --git a/0001-Honor-initial-setup-being-disabled-by-distro-install.patch b/0001-Honor-initial-setup-being-disabled-by-distro-install.patch index f75609bbdfbb5bc0b3848f4bd99c502f9b96b699..b46e5e494062cb81640c9ced80a1d0975f27195b 100644 --- a/0001-Honor-initial-setup-being-disabled-by-distro-install.patch +++ b/0001-Honor-initial-setup-being-disabled-by-distro-install.patch @@ -14,14 +14,15 @@ that but more might be added in the future. https://bugzilla.gnome.org/show_bug.cgi?id=777708 --- + daemon/Makefile.am | 1 + daemon/gdm-display.c | 29 +++++++++++++++++++++++++++++ - 1 file changed + 2 files changed, 30 insertions(+) diff --git a/daemon/gdm-display.c b/daemon/gdm-display.c -index 687e7da..3785a1b 100644 +index 5e193f2..878be88 100644 --- a/daemon/gdm-display.c +++ b/daemon/gdm-display.c -@@ -1618,6 +1618,31 @@ kernel_cmdline_initial_setup_force_state (gboolean *force_state) +@@ -1547,6 +1547,31 @@ kernel_cmdline_initial_setup_force_state (gboolean *force_state) return TRUE; } @@ -53,14 +54,17 @@ index 687e7da..3785a1b 100644 static gboolean wants_initial_setup (GdmDisplay *self) { -@@ -1661,6 +1686,10 @@ wants_initial_setup (GdmDisplay *self) +@@ -1587,6 +1612,10 @@ wants_initial_setup (GdmDisplay *self) return FALSE; } -+ if (initial_setup_disabled_by_anaconda ()) { ++ if (initial_setup_disabled_by_anaconda ()) { + return FALSE; + } + return enabled; } +-- +2.19.0 + diff --git a/0001-data-add-system-dconf-databases-to-gdm-profile.patch b/0001-data-add-system-dconf-databases-to-gdm-profile.patch index f93b94b939744713b7eddaa0143aa04892b4f416..29859953bfbeea3b292e789b2615b658b01c3f56 100644 --- a/0001-data-add-system-dconf-databases-to-gdm-profile.patch +++ b/0001-data-add-system-dconf-databases-to-gdm-profile.patch @@ -1,23 +1,24 @@ -From 2163c715758a87bc1fa629c692b6e47ed74dcae8 Mon Sep 17 00:00:00 2001 +From b1557adf711577c62609f8a784f11fad66eb54ef Mon Sep 17 00:00:00 2001 From: Ray Strode Date: Wed, 31 Jul 2013 17:32:55 -0400 Subject: [PATCH] data: add system dconf databases to gdm profile This way system settings can affect the login screen. --- - data/dconf/gdm.in | 3 +++ - 1 file changed, 3 insertions(+) + data/dconf/gdm.in | 4 ++++ + 1 file changed, 4 insertions(+) diff --git a/data/dconf/gdm.in b/data/dconf/gdm.in -index 4d8bf1748..510ca311a 100644 +index 4d8bf1748..9694078fb 100644 --- a/data/dconf/gdm.in +++ b/data/dconf/gdm.in -@@ -1,2 +1,5 @@ +@@ -1,2 +1,6 @@ user-db:user ++system-db:gdm +system-db:local +system-db:site +system-db:distro file-db:@DATADIR@/@PACKAGE@/greeter-dconf-defaults -- -2.25.1 +2.28.0 diff --git a/9000-add-openeuler-pam-config.patch b/9000-add-openeuler-pam-config.patch index b1c1b71e4ac9cb9e5a49594430c494db49029ae3..a0ed45fac8c8b9bd00aaceba9826cdbe2290c40d 100644 --- a/9000-add-openeuler-pam-config.patch +++ b/9000-add-openeuler-pam-config.patch @@ -1,9 +1,7 @@ -diff --git a/meson.build b/meson.build -index 4ace94b..9d7b8b7 100644 ---- a/meson.build -+++ b/meson.build -@@ -167,6 +167,7 @@ default_pam_config = get_option('default-pam-config') - # If requested, try autodetecting from release files (see NetworkManager source) +--- gdm-42.0/meson.build.orig 2022-04-01 14:44:07.292205407 +0800 ++++ gdm-42.0/meson.build 2022-04-01 14:44:35.215611962 +0800 +@@ -170,6 +170,7 @@ default_pam_config = get_option('default + # If requested, try autodetecting from release files (see NetworkManager source) if default_pam_config == 'autodetect' pam_autodetect_map = { + '/etc/openEuler-release': 'redhat', diff --git a/default.pa-for-gdm b/default.pa-for-gdm index d633aee9109acc49d4c2993c318c48027c8152fb..145bd3163aff444b22cd3409c643279f7f191a72 100644 --- a/default.pa-for-gdm +++ b/default.pa-for-gdm @@ -3,7 +3,6 @@ load-module module-card-restore load-module module-udev-detect load-module module-native-protocol-unix load-module module-default-device-restore -load-module module-rescue-streams load-module module-always-sink load-module module-intended-roles load-module module-suspend-on-idle diff --git a/gdm-3.38.2.1.tar.xz b/gdm-3.38.2.1.tar.xz deleted file mode 100644 index 07b5c66789580d66db1fc983d89ad496531e6a1d..0000000000000000000000000000000000000000 Binary files a/gdm-3.38.2.1.tar.xz and /dev/null differ diff --git a/gdm-42.0.tar.xz b/gdm-42.0.tar.xz new file mode 100644 index 0000000000000000000000000000000000000000..97693bf75e9f924fd753addfd0c2571c5a582628 Binary files /dev/null and b/gdm-42.0.tar.xz differ diff --git a/gdm-should-recover-automatically.patch b/gdm-should-recover-automatically.patch index 974af8bd8f40933651dc726f887521a81ede8818..5d80df08862ac62b65d05e94f53520dead87f61b 100644 --- a/gdm-should-recover-automatically.patch +++ b/gdm-should-recover-automatically.patch @@ -1,17 +1,6 @@ -From 10f8add3b6f75113676812ef52e32823f91afb44 Mon Sep 17 00:00:00 2001 -From: si-gui <245140120@qq.com> -Date: Fri, 18 Dec 2020 15:18:09 +0800 -Subject: [PATCH] gdm should recover automatically - ---- - data/gdm.service.in | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/data/gdm.service.in b/data/gdm.service.in -index 72201c1..d2892b8 100644 ---- a/data/gdm.service.in -+++ b/data/gdm.service.in -@@ -20,6 +20,7 @@ After=rc-local.service plymouth-start.service systemd-user-sessions.service +--- gdm-42.0/data/gdm.service.in.orig 2022-04-01 14:42:08.314733966 +0800 ++++ gdm-42.0/data/gdm.service.in 2022-04-01 14:42:20.537474205 +0800 +@@ -20,6 +20,7 @@ After=rc-local.service plymouth-start.se OnFailure=plymouth-quit.service [Service] @@ -19,6 +8,3 @@ index 72201c1..d2892b8 100644 ExecStart=${sbindir}/gdm KillMode=mixed Restart=always --- -2.23.0 - diff --git a/gdm.spec b/gdm.spec index b3c8146bcf332daf74e02271080c30b7d0bf76b5..0ac8e83f04cd07a09d21e60bdc1be7b42f8d4801 100644 --- a/gdm.spec +++ b/gdm.spec @@ -1,11 +1,17 @@ +%define libauditver 1.0.6 +%define gtk3_version 2.99.2 +%define pam_version 0.99.8.1-11 +%define desktop_file_utils_version 0.2.90 +%define nss_version 3.11.1 + Name: gdm Epoch: 1 -Version: 3.38.2.1 -Release: 3 +Version: 42.0 +Release: 1 Summary: A graphical display manager License: GPLv2+ URL: https://wiki.gnome.org/Projects/GDM -Source0: http://download.gnome.org/sources/gdm/3.38/gdm-%{version}.tar.xz +Source0: http://download.gnome.org/sources/gdm/42/gdm-%{version}.tar.xz Source1: org.gnome.login-screen.gschema.override Source5: default.pa-for-gdm @@ -14,33 +20,37 @@ Patch1: 0001-Honor-initial-setup-being-disabled-by-distro-install.patc Patch2: gdm-should-recover-automatically.patch Patch3: 9000-add-openeuler-pam-config.patch -BuildRequires: pam-devel >= 0:0.99.8.1-11 desktop-file-utils >= 0.2.90 -BuildRequires: libtool automake autoconf libattr-devel gettext-devel libdmx-devel -BuildRequires: audit-devel >= 1.0.6 xorg-x11-server-Xorg nss-devel >= 3.11.1 -BuildRequires: pkgconfig(accountsservice) >= 0.6.3 pkgconfig(check) -BuildRequires: pkgconfig(gobject-introspection-1.0) pkgconfig(gtk+-3.0) >= 2.99.2 -BuildRequires: pkgconfig(iso-codes) pkgconfig(libcanberra-gtk3) pkgconfig(libselinux) -BuildRequires: pkgconfig(libsystemd) pkgconfig(ply-boot-client) pkgconfig(systemd) -BuildRequires: pkgconfig(x11) pkgconfig(xau) pkgconfig(xorg-server) libXdmcp-devel -BuildRequires: systemd keyutils-libs-devel dconf meson itstool +BuildRequires: meson automake autoconf systemd dconf itstool libtool which +BuildRequires: systemd-devel libselinux-devel libattr-devel gettext-devel +BuildRequires: yelp-devel yelp-tools plymouth-devel libdmx-devel libXdmcp-devel +BuildRequires: xorg-x11-server-Xorg xorg-x11-server-devel keyutils-libs-devel accountsservice-devel +BuildRequires: pkgconfig(check) pkgconfig(gobject-introspection-1.0) pkgconfig(libcanberra-gtk3) +BuildRequires: pkgconfig(iso-codes) pkgconfig(gudev-1.0) +BuildRequires: pkgconfig(ply-boot-client) pkgconfig(x11) pkgconfig(xau) +BuildRequires: desktop-file-utils >= %{desktop_file_utils_version} +BuildRequires: pkgconfig(gtk+-3.0) >= %{gtk3_version} +BuildRequires: nss-devel >= %{nss_version} +BuildRequires: pam-devel >= 0:%{pam_version} +BuildRequires: audit-devel >= %{libauditver} Requires(pre): shadow-utils Requires(post): systemd Requires(preun): systemd Requires(postun): systemd -Requires: accountsservice audit-libs >= 1.0.6 dconf gnome-keyring-pam gnome-session +Requires: accountsservice dconf gnome-keyring-pam gnome-session dbus-daemon Requires: gnome-session-wayland-session gnome-settings-daemon >= 3.27.90 gnome-shell iso-codes -Requires: libXau >= 1.0.4-4 pam >= 0:0.99.8.1-11 util-linux setxkbmap systemd >= 186 -Requires: system-logos xorg-x11-server-utils xorg-x11-xinit +Requires: libXau >= 1.0.4-4 util-linux systemd >= 186 xorg-x11-xkb-utils +Requires: system-logos xorg-x11-server-utils xorg-x11-xinit +Requires: audit-libs >= %{libauditver} pam >= 0:%{pam_version} Provides: service(graphical-login) = %{name} Provides: gdm-libs%{?_isa} = %{epoch}:%{version}-%{release} Provides: gdm-plugin-smartcard = %{epoch}:%{version}-%{release} Provides: gdm-plugin-fingerprint = %{epoch}:%{version}-%{release} Provides: pulseaudio-gdm-hooks = 1:%{version}-%{release} -Obsoletes: gdm-libs < 1:3.12.0-3 gdm-plugin-smartcard < 1:3.2.1 -Obsoletes: gdm-plugin-fingerprint < 1:3.2.1 pulseaudio-gdm-hooks < 1:11.1-17 +Obsoletes: gdm-libs < 1:%{version}-%{release} gdm-plugin-smartcard < 1:%{version}-%{release} +Obsoletes: gdm-plugin-fingerprint < 1:%{version}-%{release} pulseaudio-gdm-hooks < 1:%{version}-%{release} %description The GNOME Display Manager is a system service that is responsible for @@ -53,7 +63,7 @@ user-switching, so multiple users can be logged in at the same time. Summary: Development files for gdm Requires: %{name} = %{epoch}:%{version}-%{release} pam-devel Provides: gdm-pam-extensions-devel = %{epoch}:%{version}-%{release} -Obsoletes: gdm-pam-extensions-devel < 1:3.30.1-3 +Obsoletes: gdm-pam-extensions-devel < %{epoch}:%{version}-%{release} %description devel The gdm-devel package contains header files and others for building @@ -76,12 +86,18 @@ applications that use GDM. install -d %{buildroot}%{_sysconfdir}/gdm/Init install -d %{buildroot}%{_sysconfdir}/gdm/PreSession install -d %{buildroot}%{_sysconfdir}/gdm/PostSession +install -d %{buildroot}%{_sysconfdir}/dconf/db/gdm.d/locks install -d %{buildroot}/var/log/gdm install -d %{buildroot}%{_datadir}/gdm/autostart/LoginWindow install -d %{buildroot}/run/gdm %meson_install +install -p -m644 -D %{SOURCE5} %{buildroot}%{_localstatedir}/lib/gdm/.config/pulse/default.pa +rm -f %{buildroot}%{_sysconfdir}/pam.d/gdm +cp -a %{SOURCE1} %{buildroot}%{_datadir}/glib-2.0/schemas +rm -rf %{buildroot}/%{_prefix}/doc + (cd %{buildroot}%{_sysconfdir}/gdm; ln -sf ../X11/xinit/Xsession .) %delete_la_and_a @@ -94,7 +110,7 @@ install -d %{buildroot}/run/gdm exit 0 %post -newconffile=/etc/gdm/custom.conf +custom=/etc/gdm/custom.conf if [ $1 -ge 2 ] ; then if [ -f /usr/share/gdm/config/gdm.conf-custom ]; then @@ -103,8 +119,11 @@ if [ $1 -ge 2 ] ; then oldconffile=/etc/X11/gdm/gdm.conf fi - if [ -n "$oldconffile" ]; then - sed \ + # Comment out some entries from the custom config file that may + # have changed locations in the update. Also move various + # elements to their new locations. + + [ -n "$oldconffile" ] && sed \ -e 's@^command=/usr/X11R6/bin/X@#command=/usr/bin/Xorg@' \ -e 's@^Xnest=/usr/X11R6/bin/Xnest@#Xnest=/usr/X11R6/bin/Xnest@' \ -e 's@^BaseXsession=/etc/X11/xdm/Xsession@#BaseXsession=/etc/X11/xinit/Xsession@' \ @@ -128,16 +147,15 @@ if [ $1 -ge 2 ] ; then -e 's@^ServAuthDir=/var/gdm@#&@' \ -e 's@^Greeter=/usr/bin/gdmlogin@Greeter=/usr/libexec/gdmlogin@' \ -e 's@^RemoteGreeter=/usr/bin/gdmgreeter@RemoteGreeter=/usr/libexec/gdmgreeter@' \ - $oldconffile > $newconffile - fi + $oldconffile > $custom fi -if [ $1 -ge 2 -a -f $newconffile ] && grep -q /etc/X11/gdm $custom ; then +if [ $1 -ge 2 -a -f $custom ] && grep -q /etc/X11/gdm $custom ; then sed -i -e 's@/etc/X11/gdm@/etc/gdm@g' $custom fi -if [ -f "$newconffile" ]; then - sed -ie 's@^#WaylandEnable=false@WaylandEnable=false@' $newconffile +if [ -f "$custom" ]; then + sed -ie 's@^#WaylandEnable=false@WaylandEnable=false@' $custom fi %systemd_post gdm.service @@ -149,7 +167,9 @@ fi %systemd_postun gdm.service %files -f gdm.lang -%doc AUTHORS NEWS README.md COPYING +%doc AUTHORS NEWS README.md +%license COPYING +%dir %{_sysconfdir}/gdm %config(noreplace) %{_sysconfdir}/gdm/custom.conf %config %{_sysconfdir}/gdm/Init/* %config %{_sysconfdir}/gdm/PostLogin/* @@ -157,38 +177,68 @@ fi %config %{_sysconfdir}/gdm/PostSession/* %config %{_sysconfdir}/pam.d/gdm-autologin %config %{_sysconfdir}/pam.d/gdm-password -%config %{_sysconfdir}/pam.d/gdm-pin -%config %{_sysconfdir}/pam.d/gdm-smartcard -%config %{_sysconfdir}/pam.d/gdm-fingerprint -%{_sysconfdir}/pam.d/gdm-launch-environment %{_sysconfdir}/gdm/Xsession -%{_sysconfdir}/dbus-1/system.d/gdm.conf %{_datadir}/gdm/gdm.schemas +%{_sysconfdir}/dbus-1/system.d/gdm.conf +%dir %{_sysconfdir}/gdm/Init +%dir %{_sysconfdir}/gdm/PreSession +%dir %{_sysconfdir}/gdm/PostSession +%dir %{_sysconfdir}/gdm/PostLogin +%dir %{_sysconfdir}/dconf/db/gdm.d +%dir %{_sysconfdir}/dconf/db/gdm.d/locks +%{_datadir}/glib-2.0/schemas/org.gnome.login-screen.gschema.xml +%{_datadir}/glib-2.0/schemas/org.gnome.login-screen.gschema.override +%{_libexecdir}/gdm-host-chooser +%{_libexecdir}/gdm-runtime-config +%{_libexecdir}/gdm-session-worker +%{_libexecdir}/gdm-simple-chooser +%{_libexecdir}/gdm-wayland-session +%{_libexecdir}/gdm-x-session +%{_sbindir}/gdm +%{_bindir}/gdmflexiserver +%{_bindir}/gdm-screenshot +%dir %{_datadir}/dconf +%dir %{_datadir}/dconf/profile +%{_datadir}/dconf/profile/gdm +%dir %{_datadir}/gdm/greeter +%dir %{_datadir}/gdm/greeter/applications +%{_datadir}/gdm/greeter/applications/* +%dir %{_datadir}/gdm/greeter/autostart +%{_datadir}/gdm/greeter/autostart/* %{_datadir}/gdm/greeter-dconf-defaults %{_datadir}/gdm/locale.alias %{_datadir}/gdm/gdb-cmd -%{_datadir}/gdm/greeter/applications/* -%{_datadir}/gdm/greeter/autostart/* -%{_datadir}/glib-2.0/schemas/* -%{_datadir}/dconf/profile/gdm %{_datadir}/gnome-session/sessions/gnome-login.session -%{_libexecdir}/* -%{_sbindir}/gdm -%{_bindir}/* %{_libdir}/girepository-1.0/Gdm-1.0.typelib %{_libdir}/security/pam_gdm.so %{_libdir}/libgdm*.so* +%dir %{_localstatedir}/log/gdm +%attr(1770, gdm, gdm) %dir %{_localstatedir}/lib/gdm +%attr(0700, gdm, gdm) %dir %{_localstatedir}/lib/gdm/.config +%attr(0700, gdm, gdm) %dir %{_localstatedir}/lib/gdm/.config/pulse +%attr(0600, gdm, gdm) %{_localstatedir}/lib/gdm/.config/pulse/default.pa %attr(0711, root, gdm) %dir /run/gdm +%config %{_sysconfdir}/pam.d/gdm-smartcard +%config %{_sysconfdir}/pam.d/gdm-fingerprint +%{_sysconfdir}/pam.d/gdm-launch-environment %{_udevrulesdir}/61-gdm.rules %{_unitdir}/gdm.service +%dir %{_userunitdir}/gnome-session@gnome-login.target.d/ %{_userunitdir}/gnome-session@gnome-login.target.d/session.conf -%files devel +%files devel +%dir %{_includedir}/gdm %{_includedir}/gdm/*.h +%exclude %{_includedir}/gdm/gdm-pam-extensions.h +%dir %{_datadir}/gir-1.0 %{_datadir}/gir-1.0/Gdm-1.0.gir -%{_libdir}/pkgconfig/*.pc +%{_libdir}/pkgconfig/gdm.pc +%{_libdir}/pkgconfig/gdm-pam-extensions.pc %changelog +* Apr Fri 15 2022 dillon chen - 1:42.0-1 +- Update to 42.0 + * Tue Aug 17 2021 weijin deng - 3.38.2-3 - Add 9000-add-openeuler-pam-config.patch for openeuler pam config to normally start gdm