Update to 3.26.2.1
This commit is contained in:
parent
996bff5f31
commit
406e395b3a
1
.gitignore
vendored
1
.gitignore
vendored
@ -107,3 +107,4 @@ gdm-2.30.2.tar.bz2
|
||||
/gdm-3.25.92.tar.xz
|
||||
/gdm-3.26.0.tar.xz
|
||||
/gdm-3.26.1.tar.xz
|
||||
/gdm-3.26.2.1.tar.xz
|
||||
|
@ -1,188 +0,0 @@
|
||||
From 10cde6a7f6a02db0b98bb8a2790ba55b3cd17eb0 Mon Sep 17 00:00:00 2001
|
||||
From: Ray Strode <rstrode@redhat.com>
|
||||
Date: Mon, 23 Oct 2017 15:03:42 -0400
|
||||
Subject: [PATCH] display: don't mark initial-setup ran until it ran
|
||||
|
||||
We don't want to skip running initial setup if wayland
|
||||
fell back or something.
|
||||
|
||||
This commit makes sure we only stop trying to start initial-setup
|
||||
after it's completed.
|
||||
---
|
||||
daemon/gdm-display.c | 22 ++++++++++++----------
|
||||
1 file changed, 12 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/daemon/gdm-display.c b/daemon/gdm-display.c
|
||||
index 1f1ecb6d..6a3984a9 100644
|
||||
--- a/daemon/gdm-display.c
|
||||
+++ b/daemon/gdm-display.c
|
||||
@@ -1438,70 +1438,60 @@ on_launch_environment_session_died (GdmLaunchEnvironment *launch_environment,
|
||||
GdmDisplay *self)
|
||||
{
|
||||
g_debug ("GdmDisplay: Greeter died: %d", signal);
|
||||
self_destruct (self);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
can_create_environment (const char *session_id)
|
||||
{
|
||||
char *path;
|
||||
gboolean session_exists;
|
||||
|
||||
path = g_strdup_printf (GNOME_SESSION_SESSIONS_PATH "/%s.session", session_id);
|
||||
session_exists = g_file_test (path, G_FILE_TEST_EXISTS);
|
||||
|
||||
g_free (path);
|
||||
|
||||
return session_exists;
|
||||
}
|
||||
|
||||
#define ALREADY_RAN_INITIAL_SETUP_ON_THIS_BOOT GDM_RUN_DIR "/gdm.ran-initial-setup"
|
||||
|
||||
static gboolean
|
||||
already_done_initial_setup_on_this_boot (void)
|
||||
{
|
||||
GError *error = NULL;
|
||||
|
||||
if (g_file_test (ALREADY_RAN_INITIAL_SETUP_ON_THIS_BOOT, G_FILE_TEST_EXISTS))
|
||||
return TRUE;
|
||||
|
||||
- if (!g_file_set_contents (ALREADY_RAN_INITIAL_SETUP_ON_THIS_BOOT,
|
||||
- "1",
|
||||
- 1,
|
||||
- &error)) {
|
||||
- g_warning ("GdmDisplay: Could not write initial-setup-done marker to %s: %s",
|
||||
- ALREADY_RAN_INITIAL_SETUP_ON_THIS_BOOT,
|
||||
- error->message);
|
||||
- g_clear_error (&error);
|
||||
- }
|
||||
-
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
kernel_cmdline_initial_setup_argument (const gchar *contents,
|
||||
gchar **initial_setup_argument,
|
||||
GError **error)
|
||||
{
|
||||
GRegex *regex = NULL;
|
||||
GMatchInfo *match_info = NULL;
|
||||
gchar *match_group = NULL;
|
||||
|
||||
g_return_val_if_fail (initial_setup_argument != NULL, FALSE);
|
||||
|
||||
regex = g_regex_new ("\\bgnome.initial-setup=([^\\s]*)\\b", 0, 0, error);
|
||||
|
||||
if (!regex)
|
||||
return FALSE;
|
||||
|
||||
if (!g_regex_match (regex, contents, 0, &match_info)) {
|
||||
g_free (match_info);
|
||||
g_free (regex);
|
||||
|
||||
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
|
||||
"Could not match gnome.initial-setup= in kernel cmdline");
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
match_group = g_match_info_fetch (match_info, 1);
|
||||
@@ -1692,83 +1682,95 @@ chown_initial_setup_home_dir (void)
|
||||
"gnome-initial-setup-uid",
|
||||
NULL);
|
||||
if (!g_file_get_contents (gis_uid_path, &gis_uid_contents, NULL, NULL)) {
|
||||
g_warning ("Unable to read %s", gis_uid_path);
|
||||
goto out;
|
||||
}
|
||||
|
||||
uid = (uid_t) atoi (gis_uid_contents);
|
||||
pwe = getpwuid (uid);
|
||||
if (uid == 0 || pwe == NULL) {
|
||||
g_warning ("UID '%s' in %s is not valid", gis_uid_contents, gis_uid_path);
|
||||
goto out;
|
||||
}
|
||||
|
||||
error = NULL;
|
||||
dir = g_file_new_for_path (gis_dir_path);
|
||||
if (!chown_recursively (dir, pwe->pw_uid, pwe->pw_gid, &error)) {
|
||||
g_warning ("Failed to change ownership for %s: %s", gis_dir_path, error->message);
|
||||
g_error_free (error);
|
||||
}
|
||||
g_object_unref (dir);
|
||||
out:
|
||||
g_free (gis_uid_contents);
|
||||
g_free (gis_uid_path);
|
||||
g_free (gis_dir_path);
|
||||
}
|
||||
|
||||
void
|
||||
gdm_display_stop_greeter_session (GdmDisplay *self)
|
||||
{
|
||||
+ GError *error = NULL;
|
||||
+
|
||||
if (self->priv->launch_environment != NULL) {
|
||||
|
||||
g_signal_handlers_disconnect_by_func (self->priv->launch_environment,
|
||||
G_CALLBACK (on_launch_environment_session_opened),
|
||||
self);
|
||||
g_signal_handlers_disconnect_by_func (self->priv->launch_environment,
|
||||
G_CALLBACK (on_launch_environment_session_started),
|
||||
self);
|
||||
g_signal_handlers_disconnect_by_func (self->priv->launch_environment,
|
||||
G_CALLBACK (on_launch_environment_session_stopped),
|
||||
self);
|
||||
g_signal_handlers_disconnect_by_func (self->priv->launch_environment,
|
||||
G_CALLBACK (on_launch_environment_session_exited),
|
||||
self);
|
||||
g_signal_handlers_disconnect_by_func (self->priv->launch_environment,
|
||||
G_CALLBACK (on_launch_environment_session_died),
|
||||
self);
|
||||
gdm_launch_environment_stop (self->priv->launch_environment);
|
||||
g_clear_object (&self->priv->launch_environment);
|
||||
}
|
||||
|
||||
if (self->priv->doing_initial_setup) {
|
||||
chown_initial_setup_home_dir ();
|
||||
+
|
||||
+ if (!g_file_set_contents (ALREADY_RAN_INITIAL_SETUP_ON_THIS_BOOT,
|
||||
+ "1",
|
||||
+ 1,
|
||||
+ &error)) {
|
||||
+ g_warning ("GdmDisplay: Could not write initial-setup-done marker to %s: %s",
|
||||
+ ALREADY_RAN_INITIAL_SETUP_ON_THIS_BOOT,
|
||||
+ error->message);
|
||||
+ g_clear_error (&error);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
|
||||
static xcb_window_t
|
||||
get_root_window (xcb_connection_t *connection,
|
||||
int screen_number)
|
||||
{
|
||||
xcb_screen_t *screen = NULL;
|
||||
xcb_screen_iterator_t iter;
|
||||
|
||||
iter = xcb_setup_roots_iterator (xcb_get_setup (connection));
|
||||
while (iter.rem) {
|
||||
if (screen_number == 0)
|
||||
screen = iter.data;
|
||||
screen_number--;
|
||||
xcb_screen_next (&iter);
|
||||
}
|
||||
|
||||
if (screen != NULL) {
|
||||
return screen->root;
|
||||
}
|
||||
|
||||
return XCB_WINDOW_NONE;
|
||||
}
|
||||
|
||||
static void
|
||||
gdm_display_set_windowpath (GdmDisplay *self)
|
||||
{
|
||||
/* setting WINDOWPATH for clients */
|
||||
xcb_intern_atom_cookie_t atom_cookie;
|
||||
--
|
||||
2.14.2
|
||||
|
12
gdm.spec
12
gdm.spec
@ -9,8 +9,8 @@
|
||||
|
||||
Name: gdm
|
||||
Epoch: 1
|
||||
Version: 3.26.1
|
||||
Release: 2%{?dist}
|
||||
Version: 3.26.2.1
|
||||
Release: 1%{?dist}
|
||||
Summary: The GNOME Display Manager
|
||||
|
||||
License: GPLv2+
|
||||
@ -18,9 +18,7 @@ URL: https://wiki.gnome.org/Projects/GDM
|
||||
Source0: http://download.gnome.org/sources/gdm/3.26/gdm-%{version}.tar.xz
|
||||
Source1: org.gnome.login-screen.gschema.override
|
||||
Patch0: 0001-Honor-initial-setup-being-disabled-by-distro-install.patch
|
||||
Patch1: 0001-display-don-t-mark-initial-setup-ran-until-it-ran.patch
|
||||
|
||||
BuildRequires: git
|
||||
BuildRequires: pam-devel >= 0:%{pam_version}
|
||||
BuildRequires: desktop-file-utils >= %{desktop_file_utils_version}
|
||||
BuildRequires: libtool automake autoconf
|
||||
@ -102,7 +100,7 @@ The gdm-devel package contains headers and other
|
||||
files needed to build custom greeters.
|
||||
|
||||
%prep
|
||||
%autosetup -S git
|
||||
%autosetup -p1
|
||||
|
||||
autoreconf -i -f
|
||||
intltoolize -f
|
||||
@ -301,9 +299,13 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor >&/dev/null || :
|
||||
%{_includedir}/gdm/*.h
|
||||
%dir %{_datadir}/gir-1.0
|
||||
%{_datadir}/gir-1.0/Gdm-1.0.gir
|
||||
%{_libdir}/pkgconfig/gdm-pam-extensions.pc
|
||||
%{_libdir}/pkgconfig/gdm.pc
|
||||
|
||||
%changelog
|
||||
* Wed Nov 01 2017 Kalev Lember <klember@redhat.com> - 1:3.26.2.1-1
|
||||
- Update to 3.26.2.1
|
||||
|
||||
* Tue Oct 24 2017 Ray Strode <rstrode@redhat.com> - 3.26.1-2
|
||||
- make sure initial-setup starts when wayland fails
|
||||
Resolves: #1502827
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (gdm-3.26.1.tar.xz) = 9b53238077940561bc7b930a8663522a4e8e0512d294aeaf8073611bc640d52b4ad6e7aa42fb46bfc1eca5ed884958ecdc66856468fb7d4ac4c6b41b5f00f06c
|
||||
SHA512 (gdm-3.26.2.1.tar.xz) = 4a0009935f2f86803a4dd6cdc01c80c9ee89fb8a71f82ffa6fadb16322e4c7f51d82e0e887c30aa09d1b242c3cc82a1ec0d83463e5d8942719a747f6945cbec9
|
||||
|
Loading…
Reference in New Issue
Block a user