Merge branch f37 into epel9-next

epel9
Troy Dawson 2 years ago
commit 6e291bef12

6
.gitignore vendored

@ -13,3 +13,9 @@
/sddm-e67307e4103a8606d57a0c2fd48a378e40fcef06.tar.gz /sddm-e67307e4103a8606d57a0c2fd48a378e40fcef06.tar.gz
/sddm-21e965aab8d93180966bbb19788bc42bdf2baee7.tar.gz /sddm-21e965aab8d93180966bbb19788bc42bdf2baee7.tar.gz
/sddm-fc24321541f6f65b7d1aac89cd82336ffd53e1a0.tar.gz /sddm-fc24321541f6f65b7d1aac89cd82336ffd53e1a0.tar.gz
/sddm-1d156897ab763d1442b0d6b0341c091f0c38b496.tar.gz
/sddm-3e486499b9300ce8f9c62bd102e5119b27a2fad1.tar.gz
/sddm-b042f69ff3ada1e5d94156450621db7a9246645a.tar.gz
/sddm-3ee57e99836fe051c97e0f301962120466d220f7.tar.gz
/sddm-8f1e3df4768bd521034e02602c4410b06aaef7d5.tar.gz
/sddm-572b128c92c5bce366f5db136423b0b296448429.tar.gz

@ -1,4 +1,4 @@
From 57f91b5f23fcaacaaafd5d8263f65ed58d0cdf15 Mon Sep 17 00:00:00 2001 From 5e6c0f872272fd617228628ab46c491313750019 Mon Sep 17 00:00:00 2001
From: Jeremy Linton <jeremy.linton@arm.com> From: Jeremy Linton <jeremy.linton@arm.com>
Date: Fri, 22 Oct 2021 14:51:54 -0500 Date: Fri, 22 Oct 2021 14:51:54 -0500
Subject: [PATCH] Delay for logind, and fallback to seat0 Subject: [PATCH] Delay for logind, and fallback to seat0
@ -17,6 +17,10 @@ is generally a better strategy than what happens a good
amount of time now, where sddm is started and silent about amount of time now, where sddm is started and silent about
why the screen is blank. why the screen is blank.
References:
* https://bugzilla.redhat.com/2011991
* https://bugzilla.redhat.com/2016310
Signed-off-by: Jeremy Linton <jeremy.linton@arm.com> Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
--- ---
src/daemon/LogindDBusTypes.cpp | 31 +++++++++++++++++++++---------- src/daemon/LogindDBusTypes.cpp | 31 +++++++++++++++++++++----------
@ -75,7 +79,7 @@ index 011bb7f..6255c69 100644
if (QDBusConnection::systemBus().interface()->isServiceRegistered(QStringLiteral("org.freedesktop.ConsoleKit"))) { if (QDBusConnection::systemBus().interface()->isServiceRegistered(QStringLiteral("org.freedesktop.ConsoleKit"))) {
qDebug() << "Console kit interface found"; qDebug() << "Console kit interface found";
diff --git a/src/daemon/SeatManager.cpp b/src/daemon/SeatManager.cpp diff --git a/src/daemon/SeatManager.cpp b/src/daemon/SeatManager.cpp
index 60d22ea..96d2b82 100644 index 429ed19..9f569bb 100644
--- a/src/daemon/SeatManager.cpp --- a/src/daemon/SeatManager.cpp
+++ b/src/daemon/SeatManager.cpp +++ b/src/daemon/SeatManager.cpp
@@ -26,6 +26,9 @@ @@ -26,6 +26,9 @@
@ -98,7 +102,7 @@ index 60d22ea..96d2b82 100644
void SeatManager::createSeat(const QString &name) { void SeatManager::createSeat(const QString &name) {
@@ -152,6 +157,23 @@ namespace SDDM { @@ -152,6 +157,23 @@ namespace SDDM {
m_seats.value(name)->createDisplay(); m_seats.value(name)->createDisplay(Display::defaultDisplayServerType());
} }
+ // this is a bit hacky, but linux DRM drivers + // this is a bit hacky, but linux DRM drivers
@ -134,5 +138,5 @@ index b2f9796..aa43047 100644
} }
-- --
2.33.1 2.38.1

@ -1,58 +0,0 @@
From 7168262e2174046e335c445e72504758dbf7049b Mon Sep 17 00:00:00 2001
From: Jeremy Linton <jeremy.linton@arm.com>
Date: Mon, 25 Oct 2021 14:56:14 -0500
Subject: [PATCH] greeter: Do not populate Wayland sessions if /dev/dri does
not exist
Check for /dev/dri which should indicate that the Wayland will work
on this hardware.
Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
---
src/greeter/SessionModel.cpp | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/src/greeter/SessionModel.cpp b/src/greeter/SessionModel.cpp
index a0eb3b1..92f6d1a 100644
--- a/src/greeter/SessionModel.cpp
+++ b/src/greeter/SessionModel.cpp
@@ -22,6 +22,7 @@
#include "Configuration.h"
+#include <QFileInfo>
#include <QVector>
#include <QProcessEnvironment>
#include <QFileSystemWatcher>
@@ -40,19 +41,26 @@ namespace SDDM {
};
SessionModel::SessionModel(QObject *parent) : QAbstractListModel(parent), d(new SessionModelPrivate()) {
+ // Check for flag to show Wayland sessions
+ bool dri_active = QFileInfo::exists(QStringLiteral("/dev/dri"));
+
// initial population
beginResetModel();
- populate(Session::WaylandSession, mainConfig.Wayland.SessionDir.get());
+ if (dri_active)
+ populate(Session::WaylandSession, mainConfig.Wayland.SessionDir.get());
populate(Session::X11Session, mainConfig.X11.SessionDir.get());
endResetModel();
// refresh everytime a file is changed, added or removed
QFileSystemWatcher *watcher = new QFileSystemWatcher(this);
connect(watcher, &QFileSystemWatcher::directoryChanged, [this](const QString &path) {
+ // Recheck for flag to show Wayland sessions
+ bool dri_active = QFileInfo::exists(QStringLiteral("/dev/dri"));
beginResetModel();
d->sessions.clear();
d->displayNames.clear();
- populate(Session::WaylandSession, mainConfig.Wayland.SessionDir.get());
+ if (dri_active)
+ populate(Session::WaylandSession, mainConfig.Wayland.SessionDir.get());
populate(Session::X11Session, mainConfig.X11.SessionDir.get());
endResetModel();
});
--
2.33.1

@ -1,17 +1,18 @@
diff --git a/src/common/Configuration.h b/src/common/Configuration.h diff --git a/src/common/Configuration.h b/src/common/Configuration.h
index cdffde3..0272e2c 100644 index 182f6a1..538243b 100644
--- a/src/common/Configuration.h --- a/src/common/Configuration.h
+++ b/src/common/Configuration.h +++ b/src/common/Configuration.h
@@ -38,7 +38,7 @@ namespace SDDM { @@ -37,8 +37,7 @@ namespace SDDM {
enum NumState { NUM_NONE, NUM_SET_ON, NUM_SET_OFF };
// Name Type Default value Description // Name Type Default value Description
// TODO: Change default to x11-user in a future release - // TODO: Change default to x11-user in a future release
- Entry(DisplayServer, QString, _S("x11"), _S("Which display server should be used.\n" - Entry(DisplayServer, QString, _S("x11"), _S("Which display server should be used.\n"
+ Entry(DisplayServer, QString, _S("wayland"), _S("Which display server should be used.\n" + Entry(DisplayServer, QString, _S("wayland"), _S("Which display server should be used.\n"
"Valid values are: x11, x11-user, wayland.")); "Valid values are: x11, x11-user, wayland."));
Entry(HaltCommand, QString, _S(HALT_COMMAND), _S("Halt command")); Entry(HaltCommand, QString, _S(HALT_COMMAND), _S("Halt command"));
Entry(RebootCommand, QString, _S(REBOOT_COMMAND), _S("Reboot command")); Entry(RebootCommand, QString, _S(REBOOT_COMMAND), _S("Reboot command"));
@@ -51,7 +51,7 @@ namespace SDDM { @@ -51,7 +50,7 @@ namespace SDDM {
// Name Entries (but it's a regular class again) // Name Entries (but it's a regular class again)
Section(Theme, Section(Theme,
Entry(ThemeDir, QString, _S(DATA_INSTALL_DIR "/themes"), _S("Theme directory path")); Entry(ThemeDir, QString, _S(DATA_INSTALL_DIR "/themes"), _S("Theme directory path"));
@ -20,23 +21,22 @@ index cdffde3..0272e2c 100644
Entry(FacesDir, QString, _S(DATA_INSTALL_DIR "/faces"), _S("Global directory for user avatars\n" Entry(FacesDir, QString, _S(DATA_INSTALL_DIR "/faces"), _S("Global directory for user avatars\n"
"The files should be named <username>.face.icon")); "The files should be named <username>.face.icon"));
Entry(CursorTheme, QString, QString(), _S("Cursor theme used in the greeter")); Entry(CursorTheme, QString, QString(), _S("Cursor theme used in the greeter"));
@@ -71,10 +71,10 @@ namespace SDDM { @@ -71,9 +70,9 @@ namespace SDDM {
Entry(XauthPath, QString, _S("/usr/bin/xauth"), _S("Path to xauth binary")); Entry(SessionDir, QStringList, {_S("/usr/local/share/xsessions"),
Entry(SessionDir, QString, _S("/usr/share/xsessions"), _S("Directory containing available X sessions")); _S("/usr/share/xsessions")}, _S("Comma-separated list of directories containing available X sessions"));
Entry(SessionCommand, QString, _S(SESSION_COMMAND), _S("Path to a script to execute when starting the desktop session")); Entry(SessionCommand, QString, _S(SESSION_COMMAND), _S("Path to a script to execute when starting the desktop session"));
- Entry(SessionLogFile, QString, _S(".local/share/sddm/xorg-session.log"), _S("Path to the user session log file")); - Entry(SessionLogFile, QString, _S(".local/share/sddm/xorg-session.log"), _S("Path to the user session log file"));
+ Entry(SessionLogFile, QString, _S(".cache/xsession-errors"), _S("Path to the user session log file"));
Entry(UserAuthFile, QString, _S(".Xauthority"), _S("Path to the Xauthority file"));
- Entry(DisplayCommand, QString, _S(DATA_INSTALL_DIR "/scripts/Xsetup"), _S("Path to a script to execute when starting the display server")); - Entry(DisplayCommand, QString, _S(DATA_INSTALL_DIR "/scripts/Xsetup"), _S("Path to a script to execute when starting the display server"));
- Entry(DisplayStopCommand, QString, _S(DATA_INSTALL_DIR "/scripts/Xstop"), _S("Path to a script to execute when stopping the display server")); - Entry(DisplayStopCommand, QString, _S(DATA_INSTALL_DIR "/scripts/Xstop"), _S("Path to a script to execute when stopping the display server"));
+ Entry(SessionLogFile, QString, _S(".cache/xsession-errors"), _S("Path to the user session log file"));
+ Entry(DisplayCommand, QString, _S(SYS_CONFIG_DIR "/sddm/Xsetup"), _S("Path to a script to execute when starting the display server")); + Entry(DisplayCommand, QString, _S(SYS_CONFIG_DIR "/sddm/Xsetup"), _S("Path to a script to execute when starting the display server"));
+ Entry(DisplayStopCommand, QString, _S(SYS_CONFIG_DIR "/sddm/Xstop"), _S("Path to a script to execute when stopping the display server")); + Entry(DisplayStopCommand, QString, _S(SYS_CONFIG_DIR "/sddm/Xstop"), _S("Path to a script to execute when stopping the display server"));
Entry(EnableHiDPI, bool, false, _S("Enable Qt's automatic high-DPI scaling")); Entry(EnableHiDPI, bool, false, _S("Enable Qt's automatic high-DPI scaling"));
); );
@@ -82,12 +82,12 @@ namespace SDDM { @@ -82,12 +81,12 @@ namespace SDDM {
Entry(CompositorCommand, QString, _S("weston --shell=fullscreen-shell.so"), _S("Path of the Wayland compositor to execute when starting the greeter")); Entry(SessionDir, QStringList, {_S("/usr/local/share/wayland-sessions"),
Entry(SessionDir, QString, _S("/usr/share/wayland-sessions"), _S("Directory containing available Wayland sessions")); _S("/usr/share/wayland-sessions")}, _S("Comma-separated list of directories containing available Wayland sessions"));
Entry(SessionCommand, QString, _S(WAYLAND_SESSION_COMMAND), _S("Path to a script to execute when starting the desktop session")); Entry(SessionCommand, QString, _S(WAYLAND_SESSION_COMMAND), _S("Path to a script to execute when starting the desktop session"));
- Entry(SessionLogFile, QString, _S(".local/share/sddm/wayland-session.log"),_S("Path to the user session log file")); - Entry(SessionLogFile, QString, _S(".local/share/sddm/wayland-session.log"),_S("Path to the user session log file"));
+ Entry(SessionLogFile, QString, _S(".cache/wayland-errors"), _S("Path to the user session log file")); + Entry(SessionLogFile, QString, _S(".cache/wayland-errors"), _S("Path to the user session log file"));

@ -0,0 +1,12 @@
diff --git a/services/sddm-tmpfiles.conf.in b/services/sddm-tmpfiles.conf.in
index fb45553..6acfb6c 100644
--- a/services/sddm-tmpfiles.conf.in
+++ b/services/sddm-tmpfiles.conf.in
@@ -1,5 +1,7 @@
# Home dir of the sddm user, also contains state.conf
d ${STATE_DIR} 0750 sddm sddm
+# Workaround for https://pagure.io/fedora-kde/SIG/issue/87
+Z ${STATE_DIR} - sddm sddm
# This contains X11 auth files passed to Xorg and the greeter
d ${RUNTIME_DIR} 0711 root root
# Sockets for IPC

@ -1 +0,0 @@
u sddm - "Simple Desktop Display Manager" /var/lib/sddm

@ -14,8 +14,8 @@
%bcond_without sddm_wayland_default %bcond_without sddm_wayland_default
%endif %endif
%global commit fc24321541f6f65b7d1aac89cd82336ffd53e1a0 %global commit 572b128c92c5bce366f5db136423b0b296448429
%global commitdate 20221025 %global commitdate 20230306
%global shortcommit %(c=%{commit}; echo ${c:0:7}) %global shortcommit %(c=%{commit}; echo ${c:0:7})
Name: sddm Name: sddm
@ -35,13 +35,6 @@ Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
## upstreamable patches ## upstreamable patches
# Disable wayland sessions when /dev/dri doesn't exist
# https://bugzilla.redhat.com/1952431
# https://bugzilla.redhat.com/show_bug.cgi?id=2016788
# https://bugzilla.redhat.com/show_bug.cgi?id=2016310
# Submitted: https://github.com/sddm/sddm/pull/1489
Patch10: sddm-0.20.0-allow-hiding-wayland-sessions.patch
# Fix race with logind restart, and start seat0 if !CanGraphical on timer # Fix race with logind restart, and start seat0 if !CanGraphical on timer
# https://bugzilla.redhat.com/show_bug.cgi?id=2011991 # https://bugzilla.redhat.com/show_bug.cgi?id=2011991
# https://bugzilla.redhat.com/show_bug.cgi?id=2016310 # https://bugzilla.redhat.com/show_bug.cgi?id=2016310
@ -54,22 +47,21 @@ Patch101: sddm-0.20.0-fedora_config.patch
# sddm.service: +EnvironmentFile=-/etc/sysconfig/sddm # sddm.service: +EnvironmentFile=-/etc/sysconfig/sddm
Patch103: sddm-0.18.0-environment_file.patch Patch103: sddm-0.18.0-environment_file.patch
# Workaround for https://pagure.io/fedora-kde/SIG/issue/87
Patch104: sddm-rpmostree-tmpfiles-hack.patch
# Shamelessly stolen from gdm # Shamelessly stolen from gdm
Source11: sddm.pam Source11: sddm.pam
# Shamelessly stolen from gdm # Shamelessly stolen from gdm
Source12: sddm-autologin.pam Source12: sddm-autologin.pam
# systemd tmpfiles support for /var/run/sddm
Source13: tmpfiles-sddm.conf
# sample sddm.conf generated with sddm --example-config, and entries commented-out # sample sddm.conf generated with sddm --example-config, and entries commented-out
Source14: sddm.conf Source13: sddm.conf
# README.scripts # README.scripts
Source15: README.scripts Source14: README.scripts
# sysconfig snippet # sysconfig snippet
Source16: sddm.sysconfig Source15: sddm.sysconfig
# systemd sysusers config
Source18: sddm-systemd-sysusers.conf
# sddm x11 override config # sddm x11 override config
Source19: sddm-x11.conf Source16: sddm-x11.conf
Provides: service(graphical-login) = sddm Provides: service(graphical-login) = sddm
@ -189,12 +181,10 @@ mkdir -p %{buildroot}%{_sysconfdir}/sddm.conf.d
mkdir -p %{buildroot}%{_prefix}/lib/sddm/sddm.conf.d mkdir -p %{buildroot}%{_prefix}/lib/sddm/sddm.conf.d
install -Dpm 644 %{SOURCE11} %{buildroot}%{_sysconfdir}/pam.d/sddm install -Dpm 644 %{SOURCE11} %{buildroot}%{_sysconfdir}/pam.d/sddm
install -Dpm 644 %{SOURCE12} %{buildroot}%{_sysconfdir}/pam.d/sddm-autologin install -Dpm 644 %{SOURCE12} %{buildroot}%{_sysconfdir}/pam.d/sddm-autologin
install -Dpm 644 %{SOURCE13} %{buildroot}%{_tmpfilesdir}/sddm.conf install -Dpm 644 %{SOURCE13} %{buildroot}%{_sysconfdir}/sddm.conf
install -Dpm 644 %{SOURCE14} %{buildroot}%{_sysconfdir}/sddm.conf install -Dpm 644 %{SOURCE14} %{buildroot}%{_datadir}/sddm/scripts/README.scripts
install -Dpm 644 %{SOURCE15} %{buildroot}%{_datadir}/sddm/scripts/README.scripts install -Dpm 644 %{SOURCE15} %{buildroot}%{_sysconfdir}/sysconfig/sddm
install -Dpm 644 %{SOURCE16} %{buildroot}%{_sysconfdir}/sysconfig/sddm install -Dpm 644 %{SOURCE16} %{buildroot}%{_prefix}/lib/sddm/sddm.conf.d/x11.conf
install -Dpm 644 %{SOURCE18} %{buildroot}%{_sysusersdir}/sddm.conf
install -Dpm 644 %{SOURCE19} %{buildroot}%{_prefix}/lib/sddm/sddm.conf.d/x11.conf
mkdir -p %{buildroot}/run/sddm mkdir -p %{buildroot}/run/sddm
mkdir -p %{buildroot}%{_localstatedir}/lib/sddm mkdir -p %{buildroot}%{_localstatedir}/lib/sddm
mkdir -p %{buildroot}%{_sysconfdir}/sddm/ mkdir -p %{buildroot}%{_sysconfdir}/sddm/
@ -299,6 +289,35 @@ fi
%changelog %changelog
* Mon Mar 06 2023 Marc Deop i Argemí <marcdeop@fedoraproject.org> - 0.19.0^git20230306.7bd10de-1
- Update to new snapshot
- Fixes #2175947
* Mon Feb 20 2023 Neal Gompa <ngompa@fedoraproject.org> - 0.19.0^git20230214.8f1e3df-1
- Update to new snapshot
- Drop our sysusers and tmpfiles configuration for upstream versions
* Wed Feb 01 2023 Marc Deop <marcdeop@fedoraproject.org> - 0.19.0^git20230201.3ee57e9-2
- Update to new snapshot
* Wed Feb 01 2023 Marc Deop <marcdeop@fedoraproject.org> - 0.19.0^git20230201.b042f69-1
- Update to new snapshot.
- Remove patches merged upstream.
* Sun Jan 29 2023 Neal Gompa <ngompa@fedoraproject.org> - 0.19.0^git20221123.3e48649-3
- Add proposed patch to recover from tty switching failures (#2110801)
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.19.0^git20221123.3e48649-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Sat Dec 24 2022 Neal Gompa <ngompa@fedoraproject.org> - 0.19.0^git20221123.3e48649-1
- Update to new snapshot
- Add patch to support non-default wayland socket names for sway/weston/etc.
- Refreshed patch for waiting on logind seat0 initialization
* Mon Nov 14 2022 Neal Gompa <ngompa@fedoraproject.org> - 0.19.0^git20221114.1d15689-1
- Update to new snapshot
* Tue Oct 25 2022 Neal Gompa <ngompa@fedoraproject.org> - 0.19.0^git20221025.fc24321-1 * Tue Oct 25 2022 Neal Gompa <ngompa@fedoraproject.org> - 0.19.0^git20221025.fc24321-1
- Update to new snapshot - Update to new snapshot

@ -1 +1 @@
SHA512 (sddm-fc24321541f6f65b7d1aac89cd82336ffd53e1a0.tar.gz) = d874213dc6fba044f5c42886676dd23a70dad387407361f4562f4cb799ea73ec1a7d13d48476bc769808ab206569f87101f496d16fe3ac4dc222789be5d743d0 SHA512 (sddm-572b128c92c5bce366f5db136423b0b296448429.tar.gz) = 0c0b2997f52a1a49ca9b2c05b8ca554a1b356bbfed067fde01c6b0239be1469f9c7726725196c2a438cbf86ad85fc7b466f6eaceee7a6c211b4e0052f456b3c7

@ -1,3 +0,0 @@
d /run/sddm 1733 root root -
# Workaround for https://pagure.io/fedora-kde/SIG/issue/87
Z /var/lib/sddm - sddm sddm - -
Loading…
Cancel
Save