Accepting request 720728 from GNOME:Next

OBS-URL: https://build.opensuse.org/request/show/720728
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gdm?expand=0&rev=428
This commit is contained in:
Dominique Leuenberger 2019-08-05 09:58:27 +00:00 committed by Git OBS Bridge
parent e518d70380
commit 44a0d17c3b
12 changed files with 112 additions and 75 deletions

16
_service Normal file
View File

@ -0,0 +1,16 @@
<services>
<service name="obs_scm" mode="disabled">
<param name="scm">git</param>
<param name="url">https://gitlab.gnome.org/GNOME/gdm.git</param>
<param name="revision">gnome-3-32</param>
<param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
<param name="changesgenerate">enable</param>
</service>
<service name="tar" mode="buildtime"/>
<service name="recompress" mode="buildtime">
<param name="file">*.tar</param>
<param name="compression">xz</param>
</service>
<service name="set_version" mode="disabled" />
</services>

4
_servicedata Normal file
View File

@ -0,0 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://gitlab.gnome.org/GNOME/gdm.git</param>
<param name="changesrevision">0e31d869aa20e13b346af6ef6aa11cf72ba2e833</param></service></servicedata>

3
gdm-3.32.0+2.obscpio Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0cc3a6ed7b243b359dd7a478eab7c511958230a37e331c25e5432b05a22498cc
size 7465997

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:643db0c8c5089a96282b4c259b8823ca6dfad1ead6f2d0025d1c1211d36fd78b
size 1262344

View File

@ -9,9 +9,10 @@ X server will be started under root. The same way as if gdm was built with
This allows system to run X server under root if and only-if necessary.
---
diff -urp gdm-3.32.0.orig/daemon/gdm-local-display-factory.c gdm-3.32.0/daemon/gdm-local-display-factory.c
--- gdm-3.32.0.orig/daemon/gdm-local-display-factory.c 2019-03-05 09:10:56.000000000 -0600
+++ gdm-3.32.0/daemon/gdm-local-display-factory.c 2019-03-19 11:31:18.093838985 -0500
Index: gdm-3.32.0+2/daemon/gdm-local-display-factory.c
===================================================================
--- gdm-3.32.0+2.orig/daemon/gdm-local-display-factory.c
+++ gdm-3.32.0+2/daemon/gdm-local-display-factory.c
@@ -231,11 +231,12 @@ gdm_local_display_factory_create_transie
g_debug ("GdmLocalDisplayFactory: Creating transient display");
@ -47,10 +48,11 @@ diff -urp gdm-3.32.0.orig/daemon/gdm-local-display-factory.c gdm-3.32.0/daemon/g
display = gdm_local_display_new ();
if (session_type != NULL) {
g_object_set (G_OBJECT (display), "session-type", session_type, NULL);
diff -urp gdm-3.32.0.orig/daemon/gdm-session.c gdm-3.32.0/daemon/gdm-session.c
--- gdm-3.32.0.orig/daemon/gdm-session.c 2019-03-05 09:10:56.000000000 -0600
+++ gdm-3.32.0/daemon/gdm-session.c 2019-03-19 10:42:39.493665629 -0500
@@ -371,7 +371,11 @@ get_system_session_dirs (GdmSession *sel
Index: gdm-3.32.0+2/daemon/gdm-session.c
===================================================================
--- gdm-3.32.0+2.orig/daemon/gdm-session.c
+++ gdm-3.32.0+2/daemon/gdm-session.c
@@ -373,7 +373,11 @@ get_system_session_dirs (GdmSession *sel
#ifdef ENABLE_WAYLAND_SUPPORT
if (!self->ignore_wayland) {
#ifdef ENABLE_USER_DISPLAY_SERVER
@ -63,7 +65,7 @@ diff -urp gdm-3.32.0.orig/daemon/gdm-session.c gdm-3.32.0/daemon/gdm-session.c
for (i = 0; system_data_dirs[i]; i++) {
gchar *dir = g_build_filename (system_data_dirs[i], "wayland-sessions", NULL);
@@ -3258,8 +3262,10 @@ gdm_session_get_display_mode (GdmSession
@@ -3276,8 +3280,10 @@ gdm_session_get_display_mode (GdmSession
* right now. It will die with an error if logind devices
* are paused when handed out.
*/
@ -76,7 +78,7 @@ diff -urp gdm-3.32.0.orig/daemon/gdm-session.c gdm-3.32.0/daemon/gdm-session.c
#ifdef ENABLE_WAYLAND_SUPPORT
/* Wayland sessions are for now assumed to run in a
@@ -3270,7 +3276,6 @@ gdm_session_get_display_mode (GdmSession
@@ -3288,7 +3294,6 @@ gdm_session_get_display_mode (GdmSession
}
#endif
return GDM_SESSION_DISPLAY_MODE_REUSE_VT;

View File

@ -1,6 +1,7 @@
diff -urp gdm-3.32.0.orig/daemon/gdm-display.c gdm-3.32.0/daemon/gdm-display.c
--- gdm-3.32.0.orig/daemon/gdm-display.c 2019-03-05 09:10:56.000000000 -0600
+++ gdm-3.32.0/daemon/gdm-display.c 2019-03-18 17:17:12.220630463 -0500
Index: gdm-3.32.0+2/daemon/gdm-display.c
===================================================================
--- gdm-3.32.0+2.orig/daemon/gdm-display.c
+++ gdm-3.32.0+2/daemon/gdm-display.c
@@ -696,7 +696,7 @@ gdm_display_unmanage (GdmDisplay *self)
}

View File

@ -1,7 +1,7 @@
diff --git a/daemon/gdm-display-store.c b/daemon/gdm-display-store.c
index fd24334..8c1ae25 100644
--- a/daemon/gdm-display-store.c
+++ b/daemon/gdm-display-store.c
Index: gdm-3.32.0+2/daemon/gdm-display-store.c
===================================================================
--- gdm-3.32.0+2.orig/daemon/gdm-display-store.c
+++ gdm-3.32.0+2/daemon/gdm-display-store.c
@@ -136,6 +136,35 @@ typedef struct
gpointer user_data;
} FindClosure;
@ -38,11 +38,11 @@ index fd24334..8c1ae25 100644
static gboolean
find_func (const char *id,
StoredDisplay *stored_display,
diff --git a/daemon/gdm-display-store.h b/daemon/gdm-display-store.h
index 0aff8ee..cd69518 100644
--- a/daemon/gdm-display-store.h
+++ b/daemon/gdm-display-store.h
@@ -86,6 +86,8 @@ GdmDisplay * gdm_display_store_find (GdmDisplayStore
Index: gdm-3.32.0+2/daemon/gdm-display-store.h
===================================================================
--- gdm-3.32.0+2.orig/daemon/gdm-display-store.h
+++ gdm-3.32.0+2/daemon/gdm-display-store.h
@@ -86,6 +86,8 @@ GdmDisplay * gdm_display_store_fi
GdmDisplayStoreFunc predicate,
gpointer user_data);
@ -51,11 +51,11 @@ index 0aff8ee..cd69518 100644
G_END_DECLS
diff --git a/daemon/gdm-manager.c b/daemon/gdm-manager.c
index cb9f662..a971ba3 100644
--- a/daemon/gdm-manager.c
+++ b/daemon/gdm-manager.c
@@ -2703,9 +2703,7 @@ unexport_display (const char *id,
Index: gdm-3.32.0+2/daemon/gdm-manager.c
===================================================================
--- gdm-3.32.0+2.orig/daemon/gdm-manager.c
+++ gdm-3.32.0+2/daemon/gdm-manager.c
@@ -2735,9 +2735,7 @@ unexport_display (const char *id,
}
static void
@ -66,7 +66,7 @@ index cb9f662..a971ba3 100644
{
gdm_display_stop_greeter_session (display);
if (gdm_display_get_status (display) == GDM_DISPLAY_MANAGED)
@@ -2717,6 +2715,7 @@ static void
@@ -2749,6 +2747,7 @@ static void
gdm_manager_dispose (GObject *object)
{
GdmManager *manager;
@ -74,7 +74,7 @@ index cb9f662..a971ba3 100644
g_return_if_fail (object != NULL);
g_return_if_fail (GDM_IS_MANAGER (object));
@@ -2758,9 +2757,11 @@ gdm_manager_dispose (GObject *object)
@@ -2790,9 +2789,11 @@ gdm_manager_dispose (GObject *object)
g_dbus_interface_skeleton_unexport (G_DBUS_INTERFACE_SKELETON (manager));
}
@ -89,10 +89,10 @@ index cb9f662..a971ba3 100644
gdm_display_store_clear (manager->priv->display_store);
diff --git a/daemon/gdm-session-worker.c b/daemon/gdm-session-worker.c
index 06e5a6a..07642cd 100644
--- a/daemon/gdm-session-worker.c
+++ b/daemon/gdm-session-worker.c
Index: gdm-3.32.0+2/daemon/gdm-session-worker.c
===================================================================
--- gdm-3.32.0+2.orig/daemon/gdm-session-worker.c
+++ gdm-3.32.0+2/daemon/gdm-session-worker.c
@@ -34,6 +34,7 @@
#include <errno.h>
#include <grp.h>
@ -118,21 +118,21 @@ index 06e5a6a..07642cd 100644
};
static void gdm_session_worker_class_init (GdmSessionWorkerClass *klass);
@@ -2455,6 +2459,13 @@ gdm_session_worker_set_is_reauth_session (GdmSessionWorker *worker,
worker->priv->is_reauth_session = is_reauth_session;
@@ -2456,6 +2460,13 @@ gdm_session_worker_set_is_reauth_session
}
+static void
static void
+gdm_session_worker_set_main_loop (GdmSessionWorker *worker,
+ GMainLoop *main_loop)
+{
+ worker->priv->main_loop = main_loop;
+}
+
static void
+static void
gdm_session_worker_set_property (GObject *object,
guint prop_id,
@@ -2472,6 +2483,9 @@ gdm_session_worker_set_property (GObject *object,
const GValue *value,
@@ -2472,6 +2483,9 @@ gdm_session_worker_set_property (GObject
case PROP_IS_REAUTH_SESSION:
gdm_session_worker_set_is_reauth_session (self, g_value_get_boolean (value));
break;
@ -142,7 +142,7 @@ index 06e5a6a..07642cd 100644
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@@ -2495,6 +2509,9 @@ gdm_session_worker_get_property (GObject *object,
@@ -2495,6 +2509,9 @@ gdm_session_worker_get_property (GObject
case PROP_IS_REAUTH_SESSION:
g_value_set_boolean (value, self->priv->is_reauth_session);
break;
@ -152,7 +152,7 @@ index 06e5a6a..07642cd 100644
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@@ -2764,6 +2781,16 @@ do_open_session (GdmSessionWorker *worker)
@@ -2764,6 +2781,16 @@ do_open_session (GdmSessionWorker *worke
worker->priv->pending_invocation = NULL;
}
@ -169,7 +169,7 @@ index 06e5a6a..07642cd 100644
static void
do_start_session (GdmSessionWorker *worker)
{
@@ -2773,6 +2800,9 @@ do_start_session (GdmSessionWorker *worker)
@@ -2773,6 +2800,9 @@ do_start_session (GdmSessionWorker *work
error = NULL;
res = gdm_session_worker_start_session (worker, &error);
if (res) {
@ -179,7 +179,7 @@ index 06e5a6a..07642cd 100644
gdm_dbus_worker_complete_start_program (GDM_DBUS_WORKER (worker),
worker->priv->pending_invocation,
worker->priv->child_pid);
@@ -3471,6 +3501,13 @@ gdm_session_worker_class_init (GdmSessionWorkerClass *klass)
@@ -3471,6 +3501,13 @@ gdm_session_worker_class_init (GdmSessio
"is reauth session",
FALSE,
G_PARAM_READWRITE | G_PARAM_CONSTRUCT | G_PARAM_STATIC_STRINGS));
@ -193,7 +193,7 @@ index 06e5a6a..07642cd 100644
}
static void
@@ -3561,13 +3598,15 @@ gdm_session_worker_finalize (GObject *object)
@@ -3561,13 +3598,15 @@ gdm_session_worker_finalize (GObject *ob
GdmSessionWorker *
gdm_session_worker_new (const char *address,
@ -210,10 +210,10 @@ index 06e5a6a..07642cd 100644
NULL);
return GDM_SESSION_WORKER (object);
diff --git a/daemon/gdm-session-worker.h b/daemon/gdm-session-worker.h
index 5603e80..24979e4 100644
--- a/daemon/gdm-session-worker.h
+++ b/daemon/gdm-session-worker.h
Index: gdm-3.32.0+2/daemon/gdm-session-worker.h
===================================================================
--- gdm-3.32.0+2.orig/daemon/gdm-session-worker.h
+++ gdm-3.32.0+2/daemon/gdm-session-worker.h
@@ -51,6 +51,7 @@ typedef struct
GType gdm_session_worker_get_type (void);
@ -223,10 +223,10 @@ index 5603e80..24979e4 100644
+ GMainLoop *main_loop) G_GNUC_MALLOC;
G_END_DECLS
#endif /* GDM_SESSION_WORKER_H */
diff --git a/daemon/session-worker-main.c b/daemon/session-worker-main.c
index 4a3a8eb..da3e7c6 100644
--- a/daemon/session-worker-main.c
+++ b/daemon/session-worker-main.c
Index: gdm-3.32.0+2/daemon/session-worker-main.c
===================================================================
--- gdm-3.32.0+2.orig/daemon/session-worker-main.c
+++ gdm-3.32.0+2/daemon/session-worker-main.c
@@ -64,12 +64,6 @@ is_debug_set (void)
return debug;
}

View File

@ -1,8 +1,8 @@
diff --git a/libgdm/gdm-sessions.c b/libgdm/gdm-sessions.c
index afbc5c0..30eaa14 100644
--- a/libgdm/gdm-sessions.c
+++ b/libgdm/gdm-sessions.c
@@ -111,14 +111,6 @@ key_file_is_relevant (GKeyFile *key_file)
Index: gdm-3.32.0+2/libgdm/gdm-sessions.c
===================================================================
--- gdm-3.32.0+2.orig/libgdm/gdm-sessions.c
+++ gdm-3.32.0+2/libgdm/gdm-sessions.c
@@ -111,14 +111,6 @@ key_file_is_relevant (GKeyFile *key_
return TRUE;
}
@ -17,7 +17,7 @@ index afbc5c0..30eaa14 100644
static void
load_session_file (const char *id,
const char *path)
@@ -126,7 +118,7 @@ load_session_file (const char *id,
@@ -126,7 +118,7 @@ load_session_file (const char
GKeyFile *key_file;
GError *error;
gboolean res;
@ -26,7 +26,7 @@ index afbc5c0..30eaa14 100644
key_file = g_key_file_new ();
@@ -162,13 +154,6 @@ load_session_file (const char *id,
@@ -162,13 +154,6 @@ load_session_file (const char
session->translated_name = g_key_file_get_locale_string (key_file, G_KEY_FILE_DESKTOP_GROUP, "Name", NULL, NULL);
session->translated_comment = g_key_file_get_locale_string (key_file, G_KEY_FILE_DESKTOP_GROUP, "Comment", NULL, NULL);
@ -40,7 +40,7 @@ index afbc5c0..30eaa14 100644
g_hash_table_insert (gdm_available_sessions_map,
g_strdup (id),
session);
@@ -176,6 +161,29 @@ load_session_file (const char *id,
@@ -176,6 +161,29 @@ load_session_file (const char
g_key_file_free (key_file);
}
@ -70,7 +70,7 @@ index afbc5c0..30eaa14 100644
static void
collect_sessions_from_directory (const char *dirname)
{
@@ -230,6 +238,7 @@ collect_sessions_from_directory (const char *dirname)
@@ -230,6 +238,7 @@ collect_sessions_from_directory (const c
static void
collect_sessions (void)
{
@ -78,8 +78,8 @@ index afbc5c0..30eaa14 100644
GArray *xorg_search_array = NULL;
GArray *wayland_search_array = NULL;
gchar *session_dir = NULL;
@@ -242,6 +251,8 @@ collect_sessions (void)
NULL
@@ -241,6 +250,8 @@ collect_sessions (void)
DATADIR "/xsessions/",
};
+ names_seen_before = g_hash_table_new (g_str_hash, g_str_equal);
@ -87,7 +87,7 @@ index afbc5c0..30eaa14 100644
xorg_search_array = g_array_new (TRUE, TRUE, sizeof (char *));
const gchar * const *system_data_dirs = g_get_system_data_dirs ();
@@ -294,6 +305,9 @@ collect_sessions (void)
@@ -292,6 +303,9 @@ collect_sessions (void)
g_array_free (wayland_search_array, TRUE);
#endif

View File

@ -1,7 +1,7 @@
Index: gdm-3.26.2.1/daemon/main.c
Index: gdm-3.32.0+2/daemon/main.c
===================================================================
--- gdm-3.26.2.1.orig/daemon/main.c
+++ gdm-3.26.2.1/daemon/main.c
--- gdm-3.32.0+2.orig/daemon/main.c
+++ gdm-3.32.0+2/daemon/main.c
@@ -61,6 +61,31 @@ static GdmSettings *settings =
static uid_t gdm_uid = -1;
static gid_t gdm_gid = -1;
@ -47,7 +47,7 @@ Index: gdm-3.26.2.1/daemon/main.c
static gboolean
on_sighup_cb (gpointer user_data)
{
@@ -396,6 +427,7 @@ main (int argc,
@@ -395,6 +426,7 @@ main (int argc,
g_main_loop_run (main_loop);
g_debug ("GDM finished, cleaning up...");
@ -55,7 +55,7 @@ Index: gdm-3.26.2.1/daemon/main.c
g_clear_object (&manager);
g_clear_object (&settings);
@@ -403,6 +435,10 @@ main (int argc,
@@ -402,6 +434,10 @@ main (int argc,
gdm_settings_direct_shutdown ();
gdm_log_shutdown ();

View File

@ -1,3 +1,14 @@
-------------------------------------------------------------------
Fri Aug 02 19:05:30 UTC 2019 - bjorn.lie@gmail.com
- Update to version 3.32.0+2:
+ Remove erroneous NULL from session search directories.
- Switch to git checkout via source service, upstream is lacking in
stable releases. In the future we will use a stable tag when
possible, but when upstream slacks off, we will use a checkout of
the stable branch.
- Refresh patches with quilt.
-------------------------------------------------------------------
Thu May 23 08:40:18 UTC 2019 - Dominique Leuenberger <dimstar@opensuse.org>

5
gdm.obsinfo Normal file
View File

@ -0,0 +1,5 @@
name: gdm
version: 3.32.0+2
mtime: 1552499029
commit: 820f90f5a78b81b2e4610da14627266c2135c8b0

View File

@ -20,13 +20,14 @@
# FIXME: need to check what should be done to enable this (at least adapt the pam files). See bnc#699999
%define enable_split_authentication 0
Name: gdm
Version: 3.32.0
Version: 3.32.0+2
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/3.32/%{name}-%{version}.tar.xz
# We are using source services, so no download url for source
Source0: %{name}-%{version}.tar.xz
Source1: gdm.pamd
Source2: gdm-autologin.pamd
Source3: gdm-launch-environment.pamd
@ -221,9 +222,6 @@ cp %{SOURCE8} .
%endif
%patch14 -p1
# TODO: Hack still needed until https://gitlab.gnome.org/GNOME/gdm/issues/424 gets fixed and released.
#rm data/61-gdm.rules
# SLE-only patches start at 1000
%if !0%{?is_opensuse}
%patch1000 -p1