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.25.92.tar.xz
|
||||||
/gdm-3.26.0.tar.xz
|
/gdm-3.26.0.tar.xz
|
||||||
/gdm-3.26.1.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
|
Name: gdm
|
||||||
Epoch: 1
|
Epoch: 1
|
||||||
Version: 3.26.1
|
Version: 3.26.2.1
|
||||||
Release: 2%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: The GNOME Display Manager
|
Summary: The GNOME Display Manager
|
||||||
|
|
||||||
License: GPLv2+
|
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
|
Source0: http://download.gnome.org/sources/gdm/3.26/gdm-%{version}.tar.xz
|
||||||
Source1: org.gnome.login-screen.gschema.override
|
Source1: org.gnome.login-screen.gschema.override
|
||||||
Patch0: 0001-Honor-initial-setup-being-disabled-by-distro-install.patch
|
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: pam-devel >= 0:%{pam_version}
|
||||||
BuildRequires: desktop-file-utils >= %{desktop_file_utils_version}
|
BuildRequires: desktop-file-utils >= %{desktop_file_utils_version}
|
||||||
BuildRequires: libtool automake autoconf
|
BuildRequires: libtool automake autoconf
|
||||||
@ -102,7 +100,7 @@ The gdm-devel package contains headers and other
|
|||||||
files needed to build custom greeters.
|
files needed to build custom greeters.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%autosetup -S git
|
%autosetup -p1
|
||||||
|
|
||||||
autoreconf -i -f
|
autoreconf -i -f
|
||||||
intltoolize -f
|
intltoolize -f
|
||||||
@ -301,9 +299,13 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor >&/dev/null || :
|
|||||||
%{_includedir}/gdm/*.h
|
%{_includedir}/gdm/*.h
|
||||||
%dir %{_datadir}/gir-1.0
|
%dir %{_datadir}/gir-1.0
|
||||||
%{_datadir}/gir-1.0/Gdm-1.0.gir
|
%{_datadir}/gir-1.0/Gdm-1.0.gir
|
||||||
|
%{_libdir}/pkgconfig/gdm-pam-extensions.pc
|
||||||
%{_libdir}/pkgconfig/gdm.pc
|
%{_libdir}/pkgconfig/gdm.pc
|
||||||
|
|
||||||
%changelog
|
%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
|
* Tue Oct 24 2017 Ray Strode <rstrode@redhat.com> - 3.26.1-2
|
||||||
- make sure initial-setup starts when wayland fails
|
- make sure initial-setup starts when wayland fails
|
||||||
Resolves: #1502827
|
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