Accepting request 847189 from GNOME:Factory

Push GNOME 3.38

OBS-URL: https://build.opensuse.org/request/show/847189
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gdm?expand=0&rev=234
This commit is contained in:
Dominique Leuenberger 2020-11-19 10:54:52 +00:00 committed by Git OBS Bridge
commit 516cd78cd5
12 changed files with 164 additions and 254 deletions

View File

@ -4,16 +4,6 @@ gdm_vars() {
RELOADSIGNAL="-USR1"
DISPLAYMANAGER=/usr/sbin/gdm
PIDFILE=/run/gdm/gdm.pid
# let gdm run the Xserver as root if access to /dev/fb*
# is required (bsc#1075805)
# The GDM_DISABLE_USER_DISPLAY_SERVER variable is added by patch
# gdm-add-runtime-option-to-disable-starting-X-server-as-u.patch
if [ ! -c /dev/dri/card0 -a \
! -c /dev/nvidiactl ]; then
export GDM_DISABLE_USER_DISPLAY_SERVER=1
fi
return 0 ;;
*) return 1 ;;
esac

View File

@ -1,15 +0,0 @@
<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">3.36.3</param>
<param name="versionformat">@PARENT_TAG@</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>

View File

@ -1,29 +0,0 @@
#!/bin/sh
# Run this to generate all the initial makefiles, etc.
test -n "$srcdir" || srcdir=`dirname "$0"`
test -n "$srcdir" || srcdir=.
olddir=`pwd`
cd $srcdir
AUTORECONF=`which autoreconf`
if test -z $AUTORECONF; then
echo "*** No autoreconf found, please intall it ***"
exit 1
fi
INTLTOOLIZE=`which intltoolize`
if test -z $INTLTOOLIZE; then
echo "*** No intltoolize found, please install the intltool package ***"
exit 1
fi
set -e
intltoolize --force --copy --automake
autoreconf --force --install --verbose
cd $olddir
test -n "$NOCONFIGURE" || "$srcdir/configure" "$@"

View File

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

3
gdm-3.38.2.tar.xz Normal file
View File

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

View File

@ -1,99 +0,0 @@
From a19b51ad9e446948ba60c359641f6c4c14fec1da Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb@suse.com>
Date: Fri, 26 Jan 2018 10:49:18 +0100
Subject: [PATCH] Add runtime option to disable starting X server as user
If the environmental variable GDM_DISABLE_USER_DISPLAY_SERVER is defined, the
X server will be started under root. The same way as if gdm was built with
--disable-user-display-server option.
This allows system to run X server under root if and only-if necessary.
---
Index: gdm-3.34.1/daemon/gdm-local-display-factory.c
===================================================================
--- gdm-3.34.1.orig/daemon/gdm-local-display-factory.c
+++ gdm-3.34.1/daemon/gdm-local-display-factory.c
@@ -231,11 +231,12 @@ gdm_local_display_factory_create_transie
g_debug ("GdmLocalDisplayFactory: Creating transient display");
-#ifdef ENABLE_USER_DISPLAY_SERVER
- display = gdm_local_display_new ();
- if (gdm_local_display_factory_use_wayland ())
- g_object_set (G_OBJECT (display), "session-type", "wayland", NULL);
-#else
+ if (getenv ("GDM_DISABLE_USER_DISPLAY_SERVER") == NULL) {
+ display = gdm_local_display_new ();
+ if (gdm_local_display_factory_use_wayland ())
+ g_object_set (G_OBJECT (display), "session-type", "wayland", NULL);
+ }
+
if (display == NULL) {
guint32 num;
@@ -243,7 +244,6 @@ gdm_local_display_factory_create_transie
display = gdm_legacy_display_new (num);
}
-#endif
g_object_set (display,
"seat-id", "seat0",
@@ -502,7 +502,7 @@ create_display (GdmLocalDisplayFactory *
g_debug ("GdmLocalDisplayFactory: Adding display on seat %s", seat_id);
#ifdef ENABLE_USER_DISPLAY_SERVER
- if (g_strcmp0 (seat_id, "seat0") == 0) {
+ if (getenv ("GDM_DISABLE_USER_DISPLAY_SERVER") == NULL && g_strcmp0 (seat_id, "seat0") == 0) {
display = gdm_local_display_new ();
if (session_type != NULL) {
g_object_set (G_OBJECT (display), "session-type", session_type, NULL);
@@ -772,6 +772,10 @@ on_vt_changed (GIOChannel *source,
g_debug ("GdmLocalDisplayFactory: VT changed from %u to %u",
previous_vt, factory->active_vt);
+ if (getenv ("GDM_DISABLE_USER_DISPLAY_SERVER") != NULL) {
+ return G_SOURCE_CONTINUE;
+ }
+
store = gdm_display_factory_get_display_store (GDM_DISPLAY_FACTORY (factory));
/* if the old VT was running a wayland login screen kill it
Index: gdm-3.34.1/daemon/gdm-session.c
===================================================================
--- gdm-3.34.1.orig/daemon/gdm-session.c
+++ gdm-3.34.1/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
- g_array_prepend_val (search_array, wayland_search_dir);
+ if (getenv ("GDM_DISABLE_USER_DISPLAY_SERVER") == NULL) {
+ g_array_prepend_val (search_array, wayland_search_dir);
+ } else {
+ g_array_append_val (search_array, wayland_search_dir);
+ }
for (i = 0; system_data_dirs[i]; i++) {
gchar *dir = g_build_filename (system_data_dirs[i], "wayland-sessions", NULL);
@@ -3315,8 +3319,10 @@ gdm_session_get_display_mode (GdmSession
* right now. It will die with an error if logind devices
* are paused when handed out.
*/
- return GDM_SESSION_DISPLAY_MODE_NEW_VT;
-#else
+ if (getenv ("GDM_DISABLE_USER_DISPLAY_SERVER") == NULL) {
+ return GDM_SESSION_DISPLAY_MODE_NEW_VT;
+ }
+#endif
#ifdef ENABLE_WAYLAND_SUPPORT
/* Wayland sessions are for now assumed to run in a
@@ -3327,7 +3333,6 @@ gdm_session_get_display_mode (GdmSession
}
#endif
return GDM_SESSION_DISPLAY_MODE_REUSE_VT;
-#endif
}
void

View File

@ -1,11 +1,11 @@
Index: gdm-3.36.2/data/61-gdm.rules.in
Index: gdm-3.37.90/data/61-gdm.rules.in
===================================================================
--- gdm-3.36.2.orig/data/61-gdm.rules.in
+++ gdm-3.36.2/data/61-gdm.rules.in
@@ -2,3 +2,12 @@
ATTR{vendor}=="0x19e5", ATTR{device}=="0x1711", RUN+="@libexecdir@/gdm-disable-wayland"
# disable Wayland when using the proprietary nvidia driver
--- gdm-3.37.90.orig/data/61-gdm.rules.in
+++ gdm-3.37.90/data/61-gdm.rules.in
@@ -4,3 +4,13 @@ ATTR{vendor}=="0x19e5", ATTR{device}=="0
DRIVER=="nvidia", RUN+="@libexecdir@/gdm-disable-wayland"
# disable Wayland if modesetting is disabled
IMPORT{cmdline}="nomodeset", RUN+="@libexecdir@/gdm-disable-wayland"
+# disable Wayland on Matrox Electronics Systems Ltd. MGA G200 server engines
+ATTR{vendor}=="0x102b", ATTR{device}=="0x0522", RUN+="@libexecdir@/gdm-disable-wayland"
+ATTR{vendor}=="0x102b", ATTR{device}=="0x0524", RUN+="@libexecdir@/gdm-disable-wayland"
@ -15,3 +15,4 @@ Index: gdm-3.36.2/data/61-gdm.rules.in
+ATTR{vendor}=="0x102b", ATTR{device}=="0x0534", RUN+="@libexecdir@/gdm-disable-wayland"
+ATTR{vendor}=="0x102b", ATTR{device}=="0x0536", RUN+="@libexecdir@/gdm-disable-wayland"
+ATTR{vendor}=="0x102b", ATTR{device}=="0x0538", RUN+="@libexecdir@/gdm-disable-wayland"
+

View File

@ -1,7 +1,7 @@
Index: gdm-3.36.2/daemon/gdm-display.c
Index: gdm-3.37.90/daemon/gdm-display.c
===================================================================
--- gdm-3.36.2.orig/daemon/gdm-display.c
+++ gdm-3.36.2/daemon/gdm-display.c
--- gdm-3.37.90.orig/daemon/gdm-display.c
+++ gdm-3.37.90/daemon/gdm-display.c
@@ -1523,12 +1523,12 @@ can_create_environment (const char *sess
return session_exists;
}
@ -27,10 +27,10 @@ Index: gdm-3.36.2/daemon/gdm-display.c
return FALSE;
}
Index: gdm-3.36.2/daemon/gdm-manager.c
Index: gdm-3.37.90/daemon/gdm-manager.c
===================================================================
--- gdm-3.36.2.orig/daemon/gdm-manager.c
+++ gdm-3.36.2/daemon/gdm-manager.c
--- gdm-3.37.90.orig/daemon/gdm-manager.c
+++ gdm-3.37.90/daemon/gdm-manager.c
@@ -62,7 +62,7 @@
#define GDM_MANAGER_DISPLAYS_PATH GDM_DBUS_PATH "/Displays"
@ -45,11 +45,11 @@ Index: gdm-3.36.2/daemon/gdm-manager.c
GdmDisplay *display;
const char *session_id;
+ int fd = -1;
#if defined(ENABLE_WAYLAND_SUPPORT) && defined(ENABLE_USER_DISPLAY_SERVER)
g_autofree char *display_session_type = NULL;
#endif
@@ -1813,6 +1814,15 @@ on_start_user_session (StartUserSessionO
#endif
g_debug ("GdmManager: start or jump to session");
@@ -1807,6 +1808,15 @@ on_start_user_session (StartUserSessionO
"doing-initial-setup", &doing_initial_setup,
NULL);
+ fd = open(BLOCK_INITIAL_SETUP, O_RDONLY|O_CREAT|O_EXCL|O_NOFOLLOW|O_CLOEXEC, 0644);
@ -64,19 +64,14 @@ Index: gdm-3.36.2/daemon/gdm-manager.c
if (doing_initial_setup)
chown_initial_setup_home_dir ();
@@ -1833,8 +1843,6 @@ on_start_user_session (StartUserSessionO
@@ -1827,20 +1837,9 @@ on_start_user_session (StartUserSessionO
g_object_ref (display);
if (doing_initial_setup) {
- g_autoptr(GError) error = NULL;
-
#if defined(ENABLE_WAYLAND_SUPPORT) && defined(ENABLE_USER_DISPLAY_SERVER)
if (g_strcmp0 (display_session_type, "wayland") == 0) {
g_debug ("GdmManager: closing down initial setup display in background");
@@ -1847,16 +1855,6 @@ on_start_user_session (StartUserSessionO
gdm_display_unmanage (display);
gdm_display_finish (display);
}
g_debug ("GdmManager: closing down initial setup display in background");
g_object_set (G_OBJECT (display), "status", GDM_DISPLAY_WAITING_TO_FINISH, NULL);
-
- if (!g_file_set_contents (ALREADY_RAN_INITIAL_SETUP_ON_THIS_BOOT,
- "1",
@ -90,3 +85,15 @@ Index: gdm-3.36.2/daemon/gdm-manager.c
} else {
g_debug ("GdmManager: session has its display server, reusing our server for another login screen");
}
Index: gdm-3.37.90/daemon/meson.build
===================================================================
--- gdm-3.37.90.orig/daemon/meson.build
+++ gdm-3.37.90/daemon/meson.build
@@ -199,6 +199,7 @@ endif
gdm_daemon = executable('gdm',
[ gdm_daemon_sources, gdm_daemon_gen_sources ],
+ c_args: '-DLOCALSTATEDIR="'+get_option('localstatedir')+'"',
dependencies: gdm_daemon_deps,
include_directories: config_h_dir,
install: true,

View File

@ -1,27 +1,7 @@
Index: gdm-3.36.2/common/Makefile.am
===================================================================
--- gdm-3.36.2.orig/common/Makefile.am
+++ gdm-3.36.2/common/Makefile.am
@@ -45,11 +45,15 @@ libgdmcommon_la_SOURCES = \
gdm-settings-backend.h \
gdm-settings-desktop-backend.c \
gdm-settings-desktop-backend.h \
+ gdm-settings-system-backend.c \
+ gdm-settings-system-backend.h \
gdm-settings-keys.h \
gdm-settings-utils.h \
gdm-settings-utils.c \
gdm-settings-direct.c \
gdm-settings-direct.h \
+ gdm-sysconfig.c \
+ gdm-sysconfig.h \
gdm-log.h \
gdm-log.c \
$(NULL)
Index: gdm-3.36.2/common/gdm-settings-system-backend.c
Index: gdm-3.37.90/common/gdm-settings-system-backend.c
===================================================================
--- /dev/null
+++ gdm-3.36.2/common/gdm-settings-system-backend.c
+++ gdm-3.37.90/common/gdm-settings-system-backend.c
@@ -0,0 +1,369 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
+ *
@ -392,10 +372,10 @@ Index: gdm-3.36.2/common/gdm-settings-system-backend.c
+
+ return GDM_SETTINGS_BACKEND (object);
+}
Index: gdm-3.36.2/common/gdm-settings-system-backend.h
Index: gdm-3.37.90/common/gdm-settings-system-backend.h
===================================================================
--- /dev/null
+++ gdm-3.36.2/common/gdm-settings-system-backend.h
+++ gdm-3.37.90/common/gdm-settings-system-backend.h
@@ -0,0 +1,56 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
+ *
@ -453,10 +433,10 @@ Index: gdm-3.36.2/common/gdm-settings-system-backend.h
+G_END_DECLS
+
+#endif /* __GDM_SETTINGS_SYSTEM_BACKEND_H */
Index: gdm-3.36.2/common/gdm-settings.c
Index: gdm-3.37.90/common/gdm-settings.c
===================================================================
--- gdm-3.36.2.orig/common/gdm-settings.c
+++ gdm-3.36.2/common/gdm-settings.c
--- gdm-3.37.90.orig/common/gdm-settings.c
+++ gdm-3.37.90/common/gdm-settings.c
@@ -38,6 +38,7 @@
#include "gdm-settings.h"
@ -474,10 +454,10 @@ Index: gdm-3.36.2/common/gdm-settings.c
backend = gdm_settings_desktop_backend_new (GDM_RUNTIME_CONF);
if (backend)
settings->backends = g_list_prepend (settings->backends, backend);
Index: gdm-3.36.2/common/gdm-sysconfig.c
Index: gdm-3.37.90/common/gdm-sysconfig.c
===================================================================
--- /dev/null
+++ gdm-3.36.2/common/gdm-sysconfig.c
+++ gdm-3.37.90/common/gdm-sysconfig.c
@@ -0,0 +1,484 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
+ *
@ -963,10 +943,10 @@ Index: gdm-3.36.2/common/gdm-sysconfig.c
+ g_strfreev (lines);
+ return result;
+}
Index: gdm-3.36.2/common/gdm-sysconfig.h
Index: gdm-3.37.90/common/gdm-sysconfig.h
===================================================================
--- /dev/null
+++ gdm-3.36.2/common/gdm-sysconfig.h
+++ gdm-3.37.90/common/gdm-sysconfig.h
@@ -0,0 +1,43 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
+ *
@ -1011,10 +991,10 @@ Index: gdm-3.36.2/common/gdm-sysconfig.h
+G_END_DECLS
+
+#endif /* __GDM_SYSCONFIG_H */
Index: gdm-3.36.2/data/gdm.conf-custom.in
Index: gdm-3.37.90/data/gdm.conf-custom.in
===================================================================
--- gdm-3.36.2.orig/data/gdm.conf-custom.in
+++ gdm-3.36.2/data/gdm.conf-custom.in
--- gdm-3.37.90.orig/data/gdm.conf-custom.in
+++ gdm-3.37.90/data/gdm.conf-custom.in
@@ -1,4 +1,7 @@
# GDM configuration storage
+#
@ -1023,3 +1003,19 @@ Index: gdm-3.36.2/data/gdm.conf-custom.in
[daemon]
# Uncomment the line below to force the login screen to use Xorg
Index: gdm-3.37.90/common/meson.build
===================================================================
--- gdm-3.37.90.orig/common/meson.build
+++ gdm-3.37.90/common/meson.build
@@ -5,9 +5,11 @@ libgdmcommon_src = files(
'gdm-profile.c',
'gdm-settings-backend.c',
'gdm-settings-desktop-backend.c',
+ 'gdm-settings-system-backend.c',
'gdm-settings-direct.c',
'gdm-settings-utils.c',
'gdm-settings.c',
+ 'gdm-sysconfig.c',
)
libgdmcommon_deps = [

View File

@ -1,9 +1,34 @@
-------------------------------------------------------------------
Wed Nov 4 10:05:13 UTC 2020 - Dominique Leuenberger <dimstar@opensuse.org>
- Update to version 3.38.2:
+ Fix localization bug to prevented translated messages from
showing up.
+ Deal more appropriately with broken accountsservice.
-------------------------------------------------------------------
Tue Oct 20 20:10:53 UTC 2020 - Dominique Leuenberger <dimstar@opensuse.org>
- Update gdm-suse-xsession.patch: Handle the fact that xdm moved
its files from /etc to /usr/etc (boo#1177918).
-------------------------------------------------------------------
Thu Oct 15 13:13:20 UTC 2020 - dimstar@opensuse.org
- Update to version 3.38.1:
+ Fix bug leading to users /etc/gdm/custom.conf getting
overwritten on nvidia systems.
+ Fix typo in comment.
+ Updated translations.
-------------------------------------------------------------------
Tue Oct 13 00:31:42 UTC 2020 - Xiaoguang Wang <xiaoguang.wang@suse.com>
- Using Xorg.wrap to start X server to solve X server working as root
in bsc#1075805 (bsc#1175867).
+ Delete gdm-add-runtime-option-to-disable-starting-X-server-as-u.patch
+ Update X11-displaymanager-gdm
-------------------------------------------------------------------
Wed Sep 16 09:17:43 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
@ -11,6 +36,52 @@ Wed Sep 16 09:17:43 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
* needed changes for xdm/xinit/xmodmap move to /usr/etc/X11
(boo#1173049, boo#1173052, boo#1173053)
-------------------------------------------------------------------
Mon Sep 14 12:30:36 UTC 2020 - dimstar@opensuse.org
- Update to version 3.38.0:
+ Crasher fix.
+ Systemd unit file improvements.
+ Updated translations.
- Drop gdm-Xsession-inputname.patch: fixed upstream.
-------------------------------------------------------------------
Sun Sep 6 15:14:36 UTC 2020 - Michael Gorse <mgorse@suse.com>
- Rebase
gdm-add-runtime-option-to-disable-starting-X-server-as-u.patch.
-------------------------------------------------------------------
Sat Sep 5 10:48:29 UTC 2020 - dimstar@opensuse.org
- Update to version 3.37.90:
+ Updates to systemd integration.
+ Support killling X on login even when wayland support is
disabled.
- Changes from version 3.37.3:
+ PAM file updates for archlinux.
+ User switching fix.
+ Don't keep login screen running in background on Xorg.
- Changes from version 3.37.1:
+ Switch from autogoo t.o meson
+ Fixes for when GDM isn't started on its configured initial VT.
+ Don't hardcode path to plymouth.
+ keyutils has a .pc file so use it.
+ Enable wayland on cirrus.
+ Chrome remote desktop fix.
+ Always use separate session bus for greeter sessions.
+ Updated translations.
- Add pkgconfig(audit) BuildRequires: new dependency.
- Rebase patches: gdm-disable-wayland-on-mgag200-chipsets.patch,
gdm-initial-setup-hardening.patch and
gdm-sysconfig-settings.patch.
- Add gdm-Xsession-inputname.patch:Fix Xsession input file name.
- Port to meson build system:
+ Add meson BuildRequires.
+ Drop autogen.sh source file.
+ Replace configure/make/make_install macros with
meson/meson_build/meson_install.
-------------------------------------------------------------------
Tue Jul 14 05:10:44 UTC 2020 - Bjørn Lie <bjorn.lie@gmail.com>

View File

@ -1,5 +0,0 @@
name: gdm
version: 3.36.3
mtime: 1594672671
commit: 24a4c0afe337a7a381397c87a39e3a666c0ae6cc

View File

@ -21,14 +21,14 @@
%define enable_split_authentication 0
Name: gdm
Version: 3.36.3
Version: 3.38.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: %{name}-%{version}.tar.xz
Source0: https://download.gnome.org/sources/gdm/3.38/%{name}-%{version}.tar.xz
Source1: gdm.pamd
Source2: gdm-autologin.pamd
Source3: gdm-launch-environment.pamd
@ -38,8 +38,6 @@ Source5: gdm-smartcard.pamd
Source6: gdmflexiserver-wrapper
# /etc/xinit.d/xdm integration script
Source7: X11-displaymanager-gdm
# GDM does not boostrap using gnome-autogen.sh, but has it's own bootstrap script
Source8: autogen.sh
# Use tmpfiles to create directories under /var to support transactional updates
Source9: gdm.tmpfiles
# Use reserveVT.conf to make autologin user session not to select tty1
@ -55,8 +53,6 @@ Patch3: gdm-default-wm.patch
Patch4: gdm-xauthlocalhostname.patch
# PATCH-FIX-OPENSUSE gdm-switch-to-tty1.patch bsc#1113700 xwang@suse.com -- switch to tty1 when stopping gdm service
Patch6: gdm-switch-to-tty1.patch
# PATCH-NEEDS-REBASE gdm-add-runtime-option-to-disable-starting-X-server-as-u.patch bnc#1075805 bgo#793255 msrb@suse.com -- Add runtime option to start X under root instead of regular user. Necessary if no DRI drivers are present. rejected upstream WAS: PATCH-FIX-OPENSUSE
Patch8: gdm-add-runtime-option-to-disable-starting-X-server-as-u.patch
# PATCH-FIX-OPENSUSE gdm-initial-setup-hardening.patch boo#1140851, glgo#GNOME/gnome-initial-setup#76 fezhang@suse.com -- Prevent gnome-initial-setup running if any regular user has perviously logged into the system
Patch9: gdm-initial-setup-hardening.patch
# PATCH-FIX-OPENSUSE gdm-s390-not-require-g-s-d_wacom.patch bsc#1129412 yfjiang@suse.com -- Remove the runtime requirement of g-s-d Wacom plugin
@ -77,6 +73,7 @@ BuildRequires: dconf
BuildRequires: fdupes
BuildRequires: gnome-common
BuildRequires: gnome-session-core
BuildRequires: meson >= 0.50.0
BuildRequires: pam-devel
BuildRequires: pkgconfig
BuildRequires: pwdutils
@ -86,6 +83,7 @@ BuildRequires: update-desktop-files
BuildRequires: xorg-x11-server
BuildRequires: xorg-x11-server-extra
BuildRequires: pkgconfig(accountsservice) >= 0.6.35
BuildRequires: pkgconfig(audit)
BuildRequires: pkgconfig(check)
BuildRequires: pkgconfig(gio-2.0) >= 2.36.0
BuildRequires: pkgconfig(gio-unix-2.0) >= 2.36.0
@ -212,13 +210,11 @@ running display manager.
%prep
%setup -q
cp %{SOURCE8} .
%patch0 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch6 -p1
#patch8 -p1
%patch9 -p1
%ifarch s390 s390x
%patch13 -p1
@ -233,33 +229,28 @@ cp %{SOURCE8} .
%endif
%build
NOCONFIGURE=1 ./autogen.sh
%configure\
--disable-static \
%meson \
--libexecdir=%{_libexecdir}/gdm \
--localstatedir=%{_localstatedir} \
--with-at-spi-registryd-directory=%{_libexecdir}/at-spi \
--with-check-accelerated-directory=%{_libexecdir} \
--with-gnome-settings-daemon-directory=%{_libexecdir}/gnome-settings-daemon-3.0 \
--with-pam-mod-dir=/%{_lib}/security \
--enable-ipv6 \
--enable-gdm-xsession \
--with-plymouth \
--enable-wayland-support \
--enable-systemd-journal \
-Dat-spi-registryd-dir=%{_libexecdir}/at-spi \
-Dgdm-xsession=true \
-Dgnome-settings-daemon-dir=%{_libexecdir}/gnome-settings-daemon-3.0 \
-Dinitial-vt=7 \
-Dipv6=true \
-Dpam-mod-dir=/%{_lib}/security \
-Dplymouth=enabled \
-Drun-dir=/run/gdm \
%if %{enable_split_authentication}
--enable-split-authentication \
-Dsplit-authentication=true \
%else
--disable-split-authentication \
-Dsplit-authentication=false \
%endif
--with-initial-vt=7 \
--with-run-dir=/run/gdm \
--with-udevdir=%{_prefix}/lib/udev
%make_build
-Dudev-dir=%{_udevrulesdir} \
-Dwayland-support=true \
%nil
%meson_build
%install
%make_install
find %{buildroot} -type f -name "*.la" -delete -print
%meson_install
## Install PAM files.
mkdir -p %{buildroot}%{_sysconfdir}/pam.d
# Generic pam config
@ -298,8 +289,8 @@ mkdir -p %{buildroot}/run/gdm
mkdir -p %{buildroot}%{_bindir}
ln -s ../sbin/gdm %{buildroot}%{_bindir}/gdm
mkdir -p %{buildroot}%{_prefix}/lib/tmpfiles.d
install -m 644 %{SOURCE9} %{buildroot}%{_prefix}/lib/tmpfiles.d/gdm.conf
mkdir -p %{buildroot}%{_tmpfilesdir}
install -m 644 %{SOURCE9} %{buildroot}%{_tmpfilesdir}/gdm.conf
mkdir -p %{buildroot}%{_prefix}/lib/systemd/logind.conf.d
install -m 644 %{SOURCE10} %{buildroot}%{_prefix}/lib/systemd/logind.conf.d/reserveVT.conf
@ -308,7 +299,7 @@ install -m 644 %{SOURCE10} %{buildroot}%{_prefix}/lib/systemd/logind.conf.d/rese
%fdupes -s %{buildroot}%{_datadir}/help
%check
%make_build check
%meson_test
%pre
%{_sbindir}/groupadd -r gdm 2> /dev/null || :
@ -370,9 +361,11 @@ dconf update
%{_prefix}/lib/X11/displaymanagers/gdm
%ghost %{_sysconfdir}/alternatives/default-displaymanager
%{_udevrulesdir}/61-gdm.rules
%{_prefix}/lib/tmpfiles.d/gdm.conf
%{_tmpfilesdir}/gdm.conf
%dir %{_prefix}/lib/systemd/logind.conf.d
%{_prefix}/lib/systemd/logind.conf.d/reserveVT.conf
%dir %{_userunitdir}/gnome-session@gnome-login.target.d
%{_userunitdir}/gnome-session@gnome-login.target.d/session.conf
%files -n libgdm1
%{_libdir}/libgdm.so.*