From 6f93226dbe76c81071253e64d65e909469a7c10096883f4a70425ad60c4198df Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Tue, 19 Mar 2024 13:32:48 +0000 Subject: [PATCH] Accepting request 1159257 from GNOME:Next GNOME 46 OBS-URL: https://build.opensuse.org/request/show/1159257 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gdm?expand=0&rev=545 --- _service | 19 +++++++ gdm-45.0.1.tar.xz | 3 -- gdm-46.0.obscpio | 3 ++ gdm-default-wm.patch | 14 +++--- gdm-sysconfig-settings.patch | 78 +++++++++++++++++------------ gdm-xvnc-start-session-failed.patch | 17 +++---- gdm.changes | 43 ++++++++++++++++ gdm.obsinfo | 4 ++ gdm.spec | 6 ++- 9 files changed, 134 insertions(+), 53 deletions(-) create mode 100644 _service delete mode 100644 gdm-45.0.1.tar.xz create mode 100644 gdm-46.0.obscpio create mode 100644 gdm.obsinfo diff --git a/_service b/_service new file mode 100644 index 0000000..4e92723 --- /dev/null +++ b/_service @@ -0,0 +1,19 @@ + + + + git + https://gitlab.gnome.org/GNOME/gdm.git + 46.0 + @PARENT_TAG@+@TAG_OFFSET@ + (.*)\+0 + \1 + + + + + *.tar + zst + + + + diff --git a/gdm-45.0.1.tar.xz b/gdm-45.0.1.tar.xz deleted file mode 100644 index 46f0aef..0000000 --- a/gdm-45.0.1.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6572578c05e3c6569d6ed269f7de2aaf3a035657654586d8243907bb7a6ffa85 -size 855004 diff --git a/gdm-46.0.obscpio b/gdm-46.0.obscpio new file mode 100644 index 0000000..9d9c7c3 --- /dev/null +++ b/gdm-46.0.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd3e5b06119393b441c86c3b928bd55efd4c07d68de582b5da41b8c625f806da +size 8416269 diff --git a/gdm-default-wm.patch b/gdm-default-wm.patch index 6258659..06de3cf 100644 --- a/gdm-default-wm.patch +++ b/gdm-default-wm.patch @@ -1,15 +1,17 @@ ---- a/daemon/gdm-session.c -+++ b/daemon/gdm-session.c -@@ -43,6 +43,8 @@ - #include - #include +Index: gdm-46.rc/daemon/gdm-session.c +=================================================================== +--- gdm-46.rc.orig/daemon/gdm-session.c ++++ gdm-46.rc/daemon/gdm-session.c +@@ -47,6 +47,8 @@ + + #include +#include "gdm-sysconfig.h" + #include "gdm-session.h" #include "gdm-session-glue.h" #include "gdm-dbus-util.h" -@@ -589,6 +591,14 @@ get_fallback_session_name (GdmSession *s +@@ -618,6 +620,14 @@ get_fallback_session_name (GdmSession *s } } diff --git a/gdm-sysconfig-settings.patch b/gdm-sysconfig-settings.patch index 6c94370..d41c90e 100644 --- a/gdm-sysconfig-settings.patch +++ b/gdm-sysconfig-settings.patch @@ -1,5 +1,7 @@ +Index: gdm-46.alpha/common/gdm-settings-system-backend.c +=================================================================== --- /dev/null -+++ b/common/gdm-settings-system-backend.c ++++ gdm-46.alpha/common/gdm-settings-system-backend.c @@ -0,0 +1,372 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- + * @@ -373,8 +375,10 @@ + + return GDM_SETTINGS_BACKEND (object); +} +Index: gdm-46.alpha/common/gdm-settings-system-backend.h +=================================================================== --- /dev/null -+++ b/common/gdm-settings-system-backend.h ++++ gdm-46.alpha/common/gdm-settings-system-backend.h @@ -0,0 +1,56 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- + * @@ -432,8 +436,10 @@ +G_END_DECLS + +#endif /* __GDM_SETTINGS_SYSTEM_BACKEND_H */ ---- a/common/gdm-settings.c -+++ b/common/gdm-settings.c +Index: gdm-46.alpha/common/gdm-settings.c +=================================================================== +--- gdm-46.alpha.orig/common/gdm-settings.c ++++ gdm-46.alpha/common/gdm-settings.c @@ -38,6 +38,7 @@ #include "gdm-settings.h" @@ -453,8 +459,10 @@ backend = gdm_settings_desktop_backend_new (GDM_RUNTIME_CONF); if (backend) settings->backends = g_list_prepend (settings->backends, backend); +Index: gdm-46.alpha/common/gdm-sysconfig.c +=================================================================== --- /dev/null -+++ b/common/gdm-sysconfig.c ++++ gdm-46.alpha/common/gdm-sysconfig.c @@ -0,0 +1,484 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- + * @@ -726,7 +734,7 @@ +} + +static gchar * -+get_value (const gchar **lines, const gchar *key) ++get_value (gchar **lines, const gchar *key) +{ + gchar *value = NULL; + gchar *key_normal; @@ -832,7 +840,7 @@ +} + +gboolean -+gdm_sysconfig_save_file (const gchar *file_name, const gchar **sysconfig) ++gdm_sysconfig_save_file (const gchar *file_name, gchar **sysconfig) +{ + g_return_val_if_fail (file_name != NULL, FALSE); + g_return_val_if_fail (sysconfig != NULL, FALSE); @@ -846,7 +854,7 @@ + g_return_val_if_fail (sysconfig != NULL, NULL); + g_return_val_if_fail (key != NULL, NULL); + -+ return get_value (sysconfig, key); ++ return get_value ((gchar **)sysconfig, key); +} + +gboolean @@ -862,33 +870,33 @@ +gboolean +gdm_sysconfig_get_value_boolean (const gchar **sysconfig, const gchar *key, gboolean *value) +{ -+ char *val; -+ gboolean val_bool; ++ char *val; ++ gboolean val_bool; + + g_return_val_if_fail (sysconfig != NULL, FALSE); + g_return_val_if_fail (key != NULL, FALSE); + -+ val = get_value (sysconfig, key); -+ if (val == NULL) { -+ return FALSE; -+ } ++ val = get_value ((gchar **)sysconfig, key); ++ if (val == NULL) { ++ return FALSE; ++ } + + if (!strcasecmp (val, "yes")) { -+ val_bool = TRUE; -+ } else if (!strcasecmp (val, "no")) { -+ val_bool = FALSE; -+ } else { -+ g_free (val); -+ return FALSE; -+ } ++ val_bool = TRUE; ++ } else if (!strcasecmp (val, "no")) { ++ val_bool = FALSE; ++ } else { ++ g_free (val); ++ return FALSE; ++ } + -+ g_free (val); ++ g_free (val); + -+ if (value != NULL) { -+ *value = val_bool; -+ } ++ if (value != NULL) { ++ *value = val_bool; ++ } + -+ return TRUE; ++ return TRUE; +} + +gboolean @@ -940,8 +948,10 @@ + g_strfreev (lines); + return result; +} +Index: gdm-46.alpha/common/gdm-sysconfig.h +=================================================================== --- /dev/null -+++ b/common/gdm-sysconfig.h ++++ gdm-46.alpha/common/gdm-sysconfig.h @@ -0,0 +1,43 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- + * @@ -972,7 +982,7 @@ +G_BEGIN_DECLS + +gchar **gdm_sysconfig_load_file (const gchar *file_name); -+gboolean gdm_sysconfig_save_file (const gchar *file_name, const gchar **sysconfig); ++gboolean gdm_sysconfig_save_file (const gchar *file_name, gchar **sysconfig); + +gchar *gdm_sysconfig_get_value (const gchar **sysconfig, const gchar *key); +gboolean gdm_sysconfig_set_value (gchar **sysconfig, const gchar *key, const gchar *value); @@ -986,8 +996,10 @@ +G_END_DECLS + +#endif /* __GDM_SYSCONFIG_H */ ---- a/data/gdm.conf-custom.in -+++ b/data/gdm.conf-custom.in +Index: gdm-46.alpha/data/gdm.conf-custom.in +=================================================================== +--- gdm-46.alpha.orig/data/gdm.conf-custom.in ++++ gdm-46.alpha/data/gdm.conf-custom.in @@ -1,4 +1,7 @@ # GDM configuration storage +# @@ -996,8 +1008,10 @@ [daemon] # Uncomment the line below to force the login screen to use Xorg ---- a/common/meson.build -+++ b/common/meson.build +Index: gdm-46.alpha/common/meson.build +=================================================================== +--- gdm-46.alpha.orig/common/meson.build ++++ gdm-46.alpha/common/meson.build @@ -5,9 +5,11 @@ libgdmcommon_src = files( 'gdm-profile.c', 'gdm-settings-backend.c', diff --git a/gdm-xvnc-start-session-failed.patch b/gdm-xvnc-start-session-failed.patch index 6c13786..7de9f69 100644 --- a/gdm-xvnc-start-session-failed.patch +++ b/gdm-xvnc-start-session-failed.patch @@ -12,13 +12,13 @@ same Xorg/Xvnc server), otherwise, the vncserver would be closed. daemon/gdm-session.c | 5 +++++ 1 file changed, 5 insertions(+) -diff --git a/daemon/gdm-session.c b/daemon/gdm-session.c -index 09b6ce52e..a4c4b2dcf 100644 ---- a/daemon/gdm-session.c -+++ b/daemon/gdm-session.c -@@ -3648,6 +3648,11 @@ gdm_session_get_display_mode (GdmSession *self) - self->is_program_session? "yes" : "no", - self->display_seat_id); +Index: gdm-46.rc/daemon/gdm-session.c +=================================================================== +--- gdm-46.rc.orig/daemon/gdm-session.c ++++ gdm-46.rc/daemon/gdm-session.c +@@ -3671,6 +3671,11 @@ gdm_session_get_display_mode (GdmSession + return GDM_SESSION_DISPLAY_MODE_REUSE_VT; + } + if (self->display_seat_id == NULL && + g_strcmp0 (self->session_type, "wayland") != 0) { @@ -28,6 +28,3 @@ index 09b6ce52e..a4c4b2dcf 100644 if (g_strcmp0 (self->display_seat_id, "seat0") != 0) { return GDM_SESSION_DISPLAY_MODE_LOGIND_MANAGED; } --- -GitLab - diff --git a/gdm.changes b/gdm.changes index 1d44307..f11dacb 100644 --- a/gdm.changes +++ b/gdm.changes @@ -1,3 +1,46 @@ +------------------------------------------------------------------- +Tue Mar 19 07:49:19 UTC 2024 - Dominique Leuenberger + +- Update to version 46.0: + + PAM improvements. + + Updated translations. + +------------------------------------------------------------------- +Mon Mar 4 08:17:19 UTC 2024 - Dominique Leuenberger + +- Update to version 46.rc: + + Support for killing conflicting sessions at login time. + + XDMCP fix. + + Use wayland by default on certain server chips. + + Fix pam extension size computation. + + Introspection fix. + + Fix for homed users. + + Updated translations. +- Rebase gdm-default-wm.patch and + gdm-xvnc-start-session-failed.patch. + +------------------------------------------------------------------- +Mon Mar 4 03:02:11 UTC 2024 - Xiaoguang Wang + +- Rebase gdm-sysconfig-settings.patch: to fix build with GCC 14. + +------------------------------------------------------------------- +Mon Mar 4 02:20:49 UTC 2024 - Dominique Leuenberger + +- Update to version 46.alpha: + + Support remote login from gnome-remote-desktop (and hopefuly + nicedcv in the future). + + Support new JSON pam extension. + + Fix build with user-display-server=false. + + Minor clean ups. + + Move private D-Bus sockets to private directory. + + Build goo fixes. + + Warning fixes. + + Updated translations. +- Rebase gdm-default-wm.patch. +- Add pkgconfig(json-glib-1.0) BuildRequires: new dependency. +- Convert to source service for easier updating. + ------------------------------------------------------------------- Mon Mar 4 01:24:06 UTC 2024 - Xiaoguang Wang diff --git a/gdm.obsinfo b/gdm.obsinfo new file mode 100644 index 0000000..e14f5ee --- /dev/null +++ b/gdm.obsinfo @@ -0,0 +1,4 @@ +name: gdm +version: 46.0 +mtime: 1710790580 +commit: a5b591cd8d1db5c5d1ebe67d10ec3fe57b9bbded diff --git a/gdm.spec b/gdm.spec index 27f9886..86fb4cc 100644 --- a/gdm.spec +++ b/gdm.spec @@ -27,14 +27,14 @@ %endif Name: gdm -Version: 45.0.1 +Version: 46.0 Release: 0 Summary: The GNOME Display Manager License: GPL-2.0-or-later Group: System/GUI/GNOME URL: https://wiki.gnome.org/Projects/GDM -Source0: https://download.gnome.org/sources/gdm/45/%{name}-%{version}.tar.xz +Source0: %{name}-%{version}.tar.zst Source1: gdm.pamd Source2: gdm-autologin.pamd Source3: gdm-launch-environment.pamd @@ -112,6 +112,7 @@ BuildRequires: pkgconfig(gthread-2.0) BuildRequires: pkgconfig(gtk+-3.0) >= 2.91.1 BuildRequires: pkgconfig(gudev-1.0) >= 232 BuildRequires: pkgconfig(iso-codes) +BuildRequires: pkgconfig(json-glib-1.0) BuildRequires: pkgconfig(libcanberra-gtk3) >= 0.4 BuildRequires: pkgconfig(libkeyutils) BuildRequires: pkgconfig(libsystemd) @@ -384,6 +385,7 @@ dconf update %config %{_sysconfdir}/gdm/[IPXl]* %{_sbindir}/gdm %{_bindir}/gdm +%{_bindir}/gdm-config %{_bindir}/gdm-screenshot %dir %{_datadir}/dconf %dir %{_datadir}/dconf/profile