summaryrefslogtreecommitdiff
path: root/x11-misc/sddm
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-11-25 01:11:37 +0000
committerV3n3RiX <venerix@koprulu.sector>2022-11-25 01:11:37 +0000
commitb1b0997aac1e7f68389ed3e0f95d3ea9d92277e2 (patch)
tree11a204a4a8687d1677d7b04ddda4a236c755528e /x11-misc/sddm
parent73f18fd49d6fabbb1dc8721e38adaa18d55b8c95 (diff)
gentoo auto-resync : 25:11:2022 - 01:11:36
Diffstat (limited to 'x11-misc/sddm')
-rw-r--r--x11-misc/sddm/Manifest4
-rw-r--r--x11-misc/sddm/files/sddm-0.18.1-drop-wayland-suffix.patch28
-rw-r--r--x11-misc/sddm/files/sddm-0.18.1-fix-qt-5.15.7.patch33
-rw-r--r--x11-misc/sddm/files/sddm-0.18.1-nvidia-glitches-vt-switch.patch46
-rw-r--r--x11-misc/sddm/sddm-0.18.1-r7.ebuild132
5 files changed, 243 insertions, 0 deletions
diff --git a/x11-misc/sddm/Manifest b/x11-misc/sddm/Manifest
index 6558897715f3..67b0cf8b5567 100644
--- a/x11-misc/sddm/Manifest
+++ b/x11-misc/sddm/Manifest
@@ -2,7 +2,10 @@ AUX pam-1.4-substack.patch 1126 BLAKE2B 61bcfc324b603ed4d9c23ede30f2d6215acdd043
AUX sddm-0.18.0-sddmconfdir.patch 1894 BLAKE2B aef497f08bd11c4fa4fdfe584b73b69192b875fde9050dbb39d6a0b1924759fedd5c50ed4fa54316f5cc9bb25c667c96eaaabce60d2acd826a4fb0bda2bb7495 SHA512 ebfb026ffca4f450005ecdc64c816720b0714ffcec7c03316148c7835919f01bb47c4c6e5041fcdbb271b70b38de99d74d959fd94b6c30b415159035b0d2b784
AUX sddm-0.18.1-Xsession.patch 503 BLAKE2B 2fdb001df7440a82cf60558bf10fd4f89b51c1ca0b2b36487cadcfcccce856546aeb5f8c6e8a814abd923b448972ea6141188820c094ec5d4ec582dbdcb0d283 SHA512 3235947b3cc7a9cc3fc8199b6083e7dd18ce95e973e4b7a0e28384ad536bcf0a74df5dd7fc13c9eca8cb8a6f8e813d94d1ca7a4df60397d95423990a126c32b2
AUX sddm-0.18.1-cve-2020-28049.patch 3286 BLAKE2B 2782c0f01aaf4c108934311359afa139a8b72884a9a3824e1c9226a088ae4c73f7f56e92e6b61b7e0f0a40733acd2f1b25823a62570017ec2f0f24cef0190304 SHA512 cb4840dce22e76ee1bd912c81c590f5333c3c6e679dfca70555ec82dbe64579297bf2fa4ac94c4beda75724f4db28c8178357a4d0392d432e7928b6b1576dcf9
+AUX sddm-0.18.1-drop-wayland-suffix.patch 1163 BLAKE2B 94bb56d1156d97a67251440f79d633ec18bbdb06c77e6340676003d55a735bb7e56a2f9c203ef34a6997ed5768ffc80536dc7cdee839de3f065c987d5e20eb46 SHA512 7eefe6092a6653b0764d0bd0cf0464515f0a6e659603ab0dcc8f8ff28b0c3dac4ef4bd794877c1390819f1d542193391848a1b5c3727d6b2c1e8098e45e106bc
+AUX sddm-0.18.1-fix-qt-5.15.7.patch 1174 BLAKE2B 792b147ced79aafec0a6e78e9a8818e11fda15e519c127e04fa897e269b6fdba1cab2840853af95fc1354a0c5c0c1de7781c81a63790d796b819a9eb9ac2bd32 SHA512 0e8108cf06cd6c3435093aae594f75a166185ce9c729554c325cb21b0d62c3d15a3af3e0f49dbd13d321c9acd94bfb4a3bcaef2a0e1d2f07bbc49b0d76f439bb
AUX sddm-0.18.1-honor-PAM-supplemental-groups-v2.patch 6561 BLAKE2B 33919c3913fae2eb1e7277647a38567c70ee0fd4ca5c93de6d7597d6c216c9c1802e79a5f281821f8eac4a99d73d2fa8712471b2dff8ed50ec17004ae7d8b67a SHA512 4d2bbdb301e54aaa8673b8765ee2e63d105e8dd2199f636a523b2ef46a6123e8b5194fa778390d4ba8ac3b6970cb4fb3bafc9ee8e20335fbf9284517ea5d36c5
+AUX sddm-0.18.1-nvidia-glitches-vt-switch.patch 1429 BLAKE2B f5eaa4a68f7d0d048246257d331c5d2a813b264bea9e3b743fa08da32940b1d0be6cd9817d97f17f49003d1c4bd1c7e948e0ac72cac61ddf365f274246ff252c SHA512 2eab01dfe04efcfcc3223b9b890d3c430c708109dfd19f368ee9fa74f4d769173a2210d96247e14de6dfc1d956e6d3738494bd7d228f3dd40eac35c9193a6687
AUX sddm-0.18.1-only-reuse-online-sessions.patch 1201 BLAKE2B cf1947f88fa1223c78bfd5c7d37884e7b9b80349f531d4593a0d1a59f4dfe2ed068abe5f2f0fe53b3d112826230ac9c481ce1db38661ece2ee93b1d0aeadba94 SHA512 62975ad657e46a6dc0157bcf749df1e165cd9f65fefa794d674aa7c2dc84e978d1e98bd2c5dad19a30a3e258d65155c9b93e89e12d32aaf80d0ba8b1e5cc594f
AUX sddm-0.18.1-qt-5.15.2.patch 865 BLAKE2B 1198a2a7b9cd0b46648eddd3eddca444d502c01baf7fd686bd52489acefa8bb3cc53e20b1d8f154aec56f88f53b653c605f8b4905cd7bb445c37ad7bdd091369 SHA512 aae777ca15df43d7c5bfb7f15e2ede4632d598e05d565338880f644e0e8ed9f00e83c33128a85db8db01d4a22cf85ee4dd6fd2c66196c7093afcc9d5c18bade2
AUX sddm-0.18.1-respect-user-flags.patch 774 BLAKE2B 050d261762b872a475ce9f250b464e539e278c4c87ad90767b7a9e8dc8f4785671ff3c5989b3785979b3a59ce805bb5b2ee90b01da0dca831a48aecaddc94280 SHA512 8df7f3b804594d46439e4c93a01a035e71d8e8a53c95193eaff03403970d0010878e70f0f7c8c965545360a948c2cab994e5ce29e011f8f41bc232107402fe78
@@ -10,4 +13,5 @@ AUX sddm-0.18.1-revert-honor-PAM-supplemental-groups.patch 3616 BLAKE2B 71a4c6f5
AUX sddm.tmpfiles 31 BLAKE2B 51d22f1d6e25aed3df726c0c315e83193bf28b5e9cafb681b648e6788ad8e9ddd8610ef5c305627373e32465ac104b33d71c333153217f8f8f560ace9ddca45a SHA512 bb5ecdcc6cfcc6b1056a7b10b8a6f323a3e12ea5496a26d80f199a275402fd99ed0fa810fad6687407605964f980784c24082686e177063113a358e1d4220136
DIST sddm-0.18.1.tar.xz 3402972 BLAKE2B 99ab43d374e9a3d318f692a6d496d8a6d68927af3c8e8fc2208d7355ec90649a14758b39f5733dd32f942ed569de88085576d4f5f8666f4f97079e0fb6dcb99e SHA512 ff0637600cda2f4da1f643f047f8ee822bd9651ae4ccbb614b9804175c97360ada7af93e07a7b63832f014ef6e7d1b5380ab2b8959f8024ea520fa5ff17efd60
EBUILD sddm-0.18.1-r6.ebuild 3633 BLAKE2B 0affec98b1374d883ded0c9061cb75bf5418bf7f3a261d940fd9724c97f64062fb8fec77d6011f0185dbafa076e0c2630439328e7a8b3454f516886ad9ab0c90 SHA512 bff069801e117b1657384792a5afc0a799b4d17e3b74d48201c2f0df7bf5ed8830a905f3af0728c9208d6e563e55ec9463062216382014e4ecaee626cd051fbb
+EBUILD sddm-0.18.1-r7.ebuild 3791 BLAKE2B 7ed78958ec97806c1a8e3b95c11098faf3a8ffa85f14c8d194fe27c714f1ce4e88f66f36058c8c5b36681d55b62498e1c611eaa244c243a28f1e86fe5a206232 SHA512 12480ad7e6c571c2eac68b0224ff8c8a8b2ca541231fe4a0e4d69b57a256da3486958be32fb8b0bc02858c9b99652c01e17b3b693dca91bb986bcee84abb9c0b
MISC metadata.xml 722 BLAKE2B fc34c0b25b7f3e6ab876c99a30f475dc90cc4b319f497a2ba4bd2beac1dc1189d3d9611999c0c3b078254db23c4c9b2ef0416da41e706c1a1db96d5bbec28177 SHA512 c1fa48632080e295272df6e7ceb7c0a1ad64a41155c7d53d91728f072cb7abf618e7bf4d5cced2ca0b198bbbf5ed1e72c5bfc9ea9d590064e5f5494747d32b0d
diff --git a/x11-misc/sddm/files/sddm-0.18.1-drop-wayland-suffix.patch b/x11-misc/sddm/files/sddm-0.18.1-drop-wayland-suffix.patch
new file mode 100644
index 000000000000..70efa284803f
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.18.1-drop-wayland-suffix.patch
@@ -0,0 +1,28 @@
+From 9a440ba5917ff93c6a78726380c6267d91c13f19 Mon Sep 17 00:00:00 2001
+From: Alex <alex.shaw.as@gmail.com>
+Date: Mon, 30 Sep 2019 16:50:16 -0400
+Subject: [PATCH] Prevent duplicate session name.
+
+Several desktop sessions (e.g. KDE Plasma) already include the string " (Wayland)" in the session name. When this happens, the session name displayed to the user is "Plasma (Wayland) (Wayland)". This change makes it so that only "Plasma (Wayland)" will be displayed.
+
+(cherry picked from commit f9a0648ff3f841b68a07c139c3540b9e75bfd279)
+---
+ src/common/Session.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/common/Session.cpp b/src/common/Session.cpp
+index aa4dad3..923ecd4 100644
+--- a/src/common/Session.cpp
++++ b/src/common/Session.cpp
+@@ -169,7 +169,7 @@ namespace SDDM {
+
+ if (line.startsWith(QLatin1String("Name="))) {
+ if (type == WaylandSession)
+- m_displayName = QObject::tr("%1 (Wayland)").arg(line.mid(5));
++ m_displayName = QObject::tr("%1").arg(line.mid(5));
+ else
+ m_displayName = line.mid(5);
+ }
+--
+2.38.1
+
diff --git a/x11-misc/sddm/files/sddm-0.18.1-fix-qt-5.15.7.patch b/x11-misc/sddm/files/sddm-0.18.1-fix-qt-5.15.7.patch
new file mode 100644
index 000000000000..65e9b8573356
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.18.1-fix-qt-5.15.7.patch
@@ -0,0 +1,33 @@
+From 5fe712d0e73c6263647bf306f40fbac94a52f4a6 Mon Sep 17 00:00:00 2001
+From: Harald Sitter <sitter@kde.org>
+Date: Mon, 24 Oct 2022 13:15:48 +0200
+Subject: disable automatic portal launching
+
+in Qt6 (and the KDE patch collection for Qt 5) genericunixservices will
+internally attempt to probe the portal tech early on in the app life
+cycle. this causes the protal system to launch app and then crash
+because we aren't actually providing a fully functional session. instead
+opt out of this altogether
+
+(cherry picked from commit fc24321541f6f65b7d1aac89cd82336ffd53e1a0)
+---
+ src/greeter/GreeterApp.cpp | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/greeter/GreeterApp.cpp b/src/greeter/GreeterApp.cpp
+index 4e117a7..a491f4d 100644
+--- a/src/greeter/GreeterApp.cpp
++++ b/src/greeter/GreeterApp.cpp
+@@ -318,6 +318,9 @@ int main(int argc, char **argv)
+ QSurfaceFormat::setDefaultFormat(format);
+ }
+
++ // Qt internally may load the xdg portal system early on, prevent this, we do not have a functional session running.
++ qputenv("QT_NO_XDG_DESKTOP_PORTAL", "1");
++
+ QGuiApplication app(argc, argv);
+
+ QCommandLineParser parser;
+--
+2.38.1
+
diff --git a/x11-misc/sddm/files/sddm-0.18.1-nvidia-glitches-vt-switch.patch b/x11-misc/sddm/files/sddm-0.18.1-nvidia-glitches-vt-switch.patch
new file mode 100644
index 000000000000..ab2fc18cbcbf
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.18.1-nvidia-glitches-vt-switch.patch
@@ -0,0 +1,46 @@
+From 76c11653522453efcf86f6f2f53bca1a497ea350 Mon Sep 17 00:00:00 2001
+From: David Edmundson <kde@davidedmundson.co.uk>
+Date: Thu, 28 Mar 2019 11:43:37 +0000
+Subject: Enable QSurfaceFormat::ResetNotification on new Qt
+
+This fixes graphical glitches on nvidia after VT switching.
+
+It's opt-in as it requires code paths to handle glGetError differently.
+The version comparison is because my early implementations missed a code
+path. This was fixed in 5.12.2, but we may as well play safe
+
+(cherry picked from commit cd4e1fa21e1ab7178fa5d2ef858f3271575fd315)
+---
+ src/greeter/GreeterApp.cpp | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/src/greeter/GreeterApp.cpp b/src/greeter/GreeterApp.cpp
+index d47998e..4e117a7 100644
+--- a/src/greeter/GreeterApp.cpp
++++ b/src/greeter/GreeterApp.cpp
+@@ -40,6 +40,9 @@
+ #include <QDebug>
+ #include <QTimer>
+ #include <QTranslator>
++#include <QLibraryInfo>
++#include <QVersionNumber>
++#include <QSurfaceFormat>
+
+ #include <iostream>
+
+@@ -309,6 +312,12 @@ int main(int argc, char **argv)
+ qDebug() << "High-DPI autoscaling not Enabled";
+ }
+
++ if (QLibraryInfo::version() >= QVersionNumber(5, 13, 0)) {
++ auto format(QSurfaceFormat::defaultFormat());
++ format.setOption(QSurfaceFormat::ResetNotification);
++ QSurfaceFormat::setDefaultFormat(format);
++ }
++
+ QGuiApplication app(argc, argv);
+
+ QCommandLineParser parser;
+--
+2.38.1
+
diff --git a/x11-misc/sddm/sddm-0.18.1-r7.ebuild b/x11-misc/sddm/sddm-0.18.1-r7.ebuild
new file mode 100644
index 000000000000..a7e8f1c35a3e
--- /dev/null
+++ b/x11-misc/sddm/sddm-0.18.1-r7.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake linux-info systemd tmpfiles
+
+DESCRIPTION="Simple Desktop Display Manager"
+HOMEPAGE="https://github.com/sddm/sddm"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz"
+
+LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="+elogind +pam systemd test"
+
+REQUIRED_USE="?? ( elogind systemd )"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+ acct-group/sddm
+ acct-user/sddm
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtdeclarative:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ x11-base/xorg-server
+ x11-libs/libxcb[xkb]
+ elogind? ( sys-auth/elogind )
+ pam? ( sys-libs/pam )
+ !pam? ( virtual/libcrypt:= )
+ systemd? ( sys-apps/systemd:= )
+ !systemd? ( sys-power/upower )
+"
+DEPEND="${COMMON_DEPEND}
+ test? ( dev-qt/qttest:5 )
+"
+RDEPEND="${COMMON_DEPEND}
+ !systemd? ( gui-libs/display-manager-init )
+"
+BDEPEND="
+ dev-python/docutils
+ dev-qt/linguist-tools:5
+ kde-frameworks/extra-cmake-modules:5
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-respect-user-flags.patch"
+ "${FILESDIR}/${P}-Xsession.patch" # bug 611210
+ "${FILESDIR}/${PN}-0.18.0-sddmconfdir.patch"
+ # fix for groups: https://github.com/sddm/sddm/issues/1159
+ "${FILESDIR}/${P}-revert-honor-PAM-supplemental-groups.patch"
+ "${FILESDIR}/${P}-honor-PAM-supplemental-groups-v2.patch"
+ # fix for ReuseSession=true
+ "${FILESDIR}/${P}-only-reuse-online-sessions.patch"
+ # TODO: fix properly
+ "${FILESDIR}/pam-1.4-substack.patch"
+ # upstream git develop branch:
+ "${FILESDIR}/${P}-qt-5.15.2.patch"
+ "${FILESDIR}/${P}-cve-2020-28049.patch" # bug 753104
+ "${FILESDIR}/${P}-nvidia-glitches-vt-switch.patch"
+ "${FILESDIR}/${P}-drop-wayland-suffix.patch"
+ "${FILESDIR}/${P}-fix-qt-5.15.7.patch" # KDE-bug 458865
+)
+
+pkg_setup() {
+ local CONFIG_CHECK="~DRM"
+ use kernel_linux && linux-info_pkg_setup
+}
+
+src_prepare() {
+ cmake_src_prepare
+
+ if ! use test; then
+ sed -e "/^find_package/s/ Test//" -i CMakeLists.txt || die
+ cmake_comment_add_subdirectory test
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DENABLE_PAM=$(usex pam)
+ -DNO_SYSTEMD=$(usex '!systemd')
+ -DUSE_ELOGIND=$(usex 'elogind')
+ -DBUILD_MAN_PAGES=ON
+ -DDBUS_CONFIG_FILENAME="org.freedesktop.sddm.conf"
+ )
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ newtmpfiles "${FILESDIR}/${PN}.tmpfiles" "${PN}.conf"
+
+ # Create a default.conf as upstream dropped /etc/sddm.conf w/o replacement
+ local confd="/usr/share/sddm/sddm.conf.d"
+ dodir ${confd}
+ "${D}"/usr/bin/sddm --example-config > "${D}/${confd}"/00default.conf \
+ || die "Failed to create 00default.conf"
+
+ sed -e "/^InputMethod/s/qtvirtualkeyboard//" \
+ -e "/^ReuseSession/s/false/true/" \
+ -e "/^EnableHiDPI/s/false/true/" \
+ -i "${D}/${confd}"/00default.conf || die
+}
+
+pkg_postinst() {
+ tmpfiles_process "${PN}.conf"
+
+ elog "Starting with 0.18.0, SDDM no longer installs /etc/sddm.conf"
+ elog "Use it to override specific options. SDDM defaults are now"
+ elog "found in: /usr/share/sddm/sddm.conf.d/00default.conf"
+ elog
+ elog "NOTE: If SDDM startup appears to hang then entropy pool is too low."
+ elog "This can be fixed by configuring one of the following:"
+ elog " - Enable CONFIG_RANDOM_TRUST_CPU in linux kernel"
+ elog " - # emerge sys-apps/haveged && rc-update add haveged boot"
+ elog " - # emerge sys-apps/rng-tools && rc-update add rngd boot"
+ elog
+ elog "For more information on how to configure SDDM, please visit the wiki:"
+ elog " https://wiki.gentoo.org/wiki/SDDM"
+ if has_version x11-drivers/nvidia-drivers; then
+ elog
+ elog " Nvidia GPU owners in particular should pay attention"
+ elog " to the troubleshooting section."
+ fi
+
+ systemd_reenable sddm.service
+}