Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:15.2:Staging:C
sddm
sddm-relaxed-auth.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File sddm-relaxed-auth.patch of Package sddm
From: Fabian Vogt <fabian@ritter-vogt.de> Subject: Set XAUTHLOCALHOSTNAME to allow hostname changes Our libxcb is patched to retry with $XAUTHLOCALHOSTNAME as hostname if the Xauthority entry for the current hostname does not work. There's a stale PR to do something similar (FamilyWild using libXau) upstream: https://github.com/sddm/sddm/pull/863 FamilyWild is not a complete solution either, only when using a temporary Xauthority file for each session separately. Index: sddm-0.18.0/src/helper/Backend.cpp =================================================================== --- sddm-0.18.0.orig/src/helper/Backend.cpp +++ sddm-0.18.0/src/helper/Backend.cpp @@ -27,6 +27,7 @@ #include "UserSession.h" #include <QtCore/QProcessEnvironment> +#include <QtNetwork/QHostInfo> #include <pwd.h> @@ -69,6 +70,7 @@ namespace SDDM { .arg(QString::fromLocal8Bit(pw->pw_dir)) .arg(mainConfig.X11.UserAuthFile.get()); env.insert(QStringLiteral("XAUTHORITY"), value); + env.insert(QStringLiteral("XAUTHLOCALHOSTNAME"), QHostInfo::localHostName()); } // TODO: I'm fairly sure this shouldn't be done for PAM sessions, investigate! m_app->session()->setProcessEnvironment(env); Index: sddm-0.18.0/src/daemon/Display.cpp =================================================================== --- sddm-0.18.0.orig/src/daemon/Display.cpp +++ sddm-0.18.0/src/daemon/Display.cpp @@ -316,8 +316,10 @@ namespace SDDM { QProcessEnvironment env; env.insert(QStringLiteral("PATH"), mainConfig.Users.DefaultPath.get()); - if (session.xdgSessionType() == QLatin1String("x11")) + if (session.xdgSessionType() == QLatin1String("x11")) { env.insert(QStringLiteral("DISPLAY"), name()); + env.insert(QStringLiteral("XAUTHLOCALHOSTNAME"), daemonApp->hostName()); + } env.insert(QStringLiteral("XDG_SEAT_PATH"), daemonApp->displayManager()->seatPath(seat()->name())); env.insert(QStringLiteral("XDG_SESSION_PATH"), daemonApp->displayManager()->sessionPath(QStringLiteral("Session%1").arg(daemonApp->newSessionId()))); env.insert(QStringLiteral("DESKTOP_SESSION"), session.desktopSession()); Index: sddm-0.18.0/src/daemon/Greeter.cpp =================================================================== --- sddm-0.18.0.orig/src/daemon/Greeter.cpp +++ sddm-0.18.0/src/daemon/Greeter.cpp @@ -114,6 +114,7 @@ namespace SDDM { // set process environment QProcessEnvironment env = QProcessEnvironment::systemEnvironment(); env.insert(QStringLiteral("DISPLAY"), m_display->name()); + env.insert(QStringLiteral("XAUTHLOCALHOSTNAME"), daemonApp->hostName()); env.insert(QStringLiteral("XAUTHORITY"), m_authPath); env.insert(QStringLiteral("XCURSOR_THEME"), xcursorTheme); env.insert(QStringLiteral("QT_IM_MODULE"), mainConfig.InputMethod.get()); @@ -175,6 +176,7 @@ namespace SDDM { env.insert(QStringLiteral("PATH"), mainConfig.Users.DefaultPath.get()); env.insert(QStringLiteral("DISPLAY"), m_display->name()); env.insert(QStringLiteral("XAUTHORITY"), m_authPath); + env.insert(QStringLiteral("XAUTHLOCALHOSTNAME"), daemonApp->hostName()); env.insert(QStringLiteral("XCURSOR_THEME"), xcursorTheme); env.insert(QStringLiteral("XDG_SEAT"), m_display->seat()->name()); env.insert(QStringLiteral("XDG_SEAT_PATH"), daemonApp->displayManager()->seatPath(m_display->seat()->name()));
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor