public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2015-09-09 21:18 Jauhien Piatlicki
  0 siblings, 0 replies; 23+ messages in thread
From: Jauhien Piatlicki @ 2015-09-09 21:18 UTC (permalink / raw
  To: gentoo-commits

commit:     4469f6ce771cb10ab430fa5741a519ef63153594
Author:     Jauhien Piatlicki <jauhien <AT> gentoo <DOT> org>
AuthorDate: Wed Sep  9 21:19:39 2015 +0000
Commit:     Jauhien Piatlicki <jauhien <AT> gentoo <DOT> org>
CommitDate: Wed Sep  9 21:22:29 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4469f6ce

x11-misc/sddm: sync 0.11.0 ebuild with 0.12.0

Remove no longer needed r2. Remove upower USE.

Gentoo-Bug: 559114

Package-Manager: portage-2.2.20.1

 x11-misc/sddm/files/sddm-0.10.0-consolekit.patch   | 13 ----
 x11-misc/sddm/files/sddm-0.11.0-consolekit2.patch  | 91 ----------------------
 x11-misc/sddm/files/sddm-0.11.0-upower.patch       | 11 ---
 x11-misc/sddm/sddm-0.11.0-r2.ebuild                | 76 ------------------
 ...sddm-0.11.0-r1.ebuild => sddm-0.11.0-r3.ebuild} | 17 ++--
 5 files changed, 8 insertions(+), 200 deletions(-)

diff --git a/x11-misc/sddm/files/sddm-0.10.0-consolekit.patch b/x11-misc/sddm/files/sddm-0.10.0-consolekit.patch
deleted file mode 100644
index acdfdc1..0000000
--- a/x11-misc/sddm/files/sddm-0.10.0-consolekit.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/data/scripts/Xsession b/data/scripts/Xsession
-index a5d270d..4b48524 100755
---- a/data/scripts/Xsession
-+++ b/data/scripts/Xsession
-@@ -74,7 +74,7 @@ case $session in
-     exec xterm -geometry 80x24-0-0
-     ;;
-   *)
--    eval exec "$session"
-+    eval exec ck-launch-session "$session"
-     ;;
- esac
- exec xmessage -center -buttons OK:0 -default OK "Sorry, cannot execute $session. Check $DESKTOP_SESSION.desktop."

diff --git a/x11-misc/sddm/files/sddm-0.11.0-consolekit2.patch b/x11-misc/sddm/files/sddm-0.11.0-consolekit2.patch
deleted file mode 100644
index 7f6f3f7..0000000
--- a/x11-misc/sddm/files/sddm-0.11.0-consolekit2.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-From 7a8024639ee3ae7e128a9dc3efce90a07b4d316c Mon Sep 17 00:00:00 2001
-From: Eric Koegel <eric.koegel@gmail.com>
-Date: Mon, 6 Jul 2015 11:16:38 +0300
-Subject: [PATCH] ConsoleKit2 support for system actions
-
-This adds support for calling ConsoleKit2's DBUS API for shutdown,
-reboot, suspend, and hibernate. It does so by using the exact same
-interface as login1, making it a shared seat manager backend.
----
- INSTALL                     |  4 ++--
- src/daemon/PowerManager.cpp | 26 +++++++++++++++++---------
- 2 files changed, 19 insertions(+), 11 deletions(-)
-
-diff --git a/INSTALL b/INSTALL
-index 77b6a8b..5d16710 100644
---- a/INSTALL
-+++ b/INSTALL
-@@ -30,8 +30,8 @@ its home set to `/var/lib/sddm` by default.
- SDDM depends on PAM for authorization and XCB to communicate with the X server.
- Apart from other things, it also depends on Qt for the user interface and event
- loop management.
--SDDM can optionally make use of logind (the systemd login manager API) or
--upower to enable support for suspend, hibernate etc.
-+SDDM can optionally make use of logind (the systemd login manager API), or
-+ConsoleKit2, or upower to enable support for suspend, hibernate etc.
- In order to build the man pages, you will need `rst2man` installed. It is
- provided by the python `docutils` package
- 
-diff --git a/src/daemon/PowerManager.cpp b/src/daemon/PowerManager.cpp
-index 3a4d25d..6329032 100644
---- a/src/daemon/PowerManager.cpp
-+++ b/src/daemon/PowerManager.cpp
-@@ -59,8 +59,8 @@ namespace SDDM {
- 
-     class UPowerBackend : public PowerManagerBackend {
-     public:
--        UPowerBackend() {
--            m_interface = new QDBusInterface(UPOWER_SERVICE, UPOWER_PATH, UPOWER_OBJECT, QDBusConnection::systemBus());
-+        UPowerBackend(const QString & service, const QString & path, const QString & interface) {
-+            m_interface = new QDBusInterface(service, path, interface, QDBusConnection::systemBus());
-         }
- 
-         ~UPowerBackend() {
-@@ -110,20 +110,24 @@ namespace SDDM {
-     };
- 
-     /**********************************************/
--    /* LOGIN1 BACKEND                             */
-+    /* LOGIN1 && ConsoleKit2 BACKEND              */
-     /**********************************************/
- 
- #define LOGIN1_SERVICE  QStringLiteral("org.freedesktop.login1")
- #define LOGIN1_PATH     QStringLiteral("/org/freedesktop/login1")
- #define LOGIN1_OBJECT   QStringLiteral("org.freedesktop.login1.Manager")
- 
--    class Login1Backend : public PowerManagerBackend {
-+#define CK2_SERVICE  QStringLiteral("org.freedesktop.ConsoleKit")
-+#define CK2_PATH     QStringLiteral("/org/freedesktop/ConsoleKit/Manager")
-+#define CK2_OBJECT   QStringLiteral("org.freedesktop.ConsoleKit.Manager")
-+
-+    class SeatManagerBackend : public PowerManagerBackend {
-     public:
--        Login1Backend() {
--            m_interface = new QDBusInterface(LOGIN1_SERVICE, LOGIN1_PATH, LOGIN1_OBJECT, QDBusConnection::systemBus());
-+        SeatManagerBackend(const QString & service, const QString & path, const QString & interface) {
-+            m_interface = new QDBusInterface(service, path, interface, QDBusConnection::systemBus());
-         }
- 
--        ~Login1Backend() {
-+        ~SeatManagerBackend() {
-             delete m_interface;
-         }
- 
-@@ -194,11 +198,15 @@ namespace SDDM {
- 
-         // check if login1 interface exists
-         if (interface->isServiceRegistered(LOGIN1_SERVICE))
--            m_backends << new Login1Backend();
-+            m_backends << new SeatManagerBackend(LOGIN1_SERVICE, LOGIN1_PATH, LOGIN1_OBJECT);
-+
-+        // check if ConsoleKit2 interface exists
-+        if (interface->isServiceRegistered(CK2_SERVICE))
-+            m_backends << new SeatManagerBackend(CK2_SERVICE, CK2_PATH, CK2_OBJECT);
- 
-         // check if upower interface exists
-         if (interface->isServiceRegistered(UPOWER_SERVICE))
--            m_backends << new UPowerBackend();
-+            m_backends << new UPowerBackend(UPOWER_SERVICE, UPOWER_PATH, UPOWER_OBJECT);
-     }
- 
-     PowerManager::~PowerManager() {

diff --git a/x11-misc/sddm/files/sddm-0.11.0-upower.patch b/x11-misc/sddm/files/sddm-0.11.0-upower.patch
deleted file mode 100644
index 387f106..0000000
--- a/x11-misc/sddm/files/sddm-0.11.0-upower.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/daemon/PowerManager.cpp	2015-08-17 00:52:12.786176023 +0200
-+++ b/src/daemon/PowerManager.cpp	2015-08-17 00:53:30.259207476 +0200
-@@ -209,7 +209,7 @@
- #endif // HAVE_CONSOLEKIT2
- 
-         // check if upower interface exists
--        if (interface->isServiceRegistered(UPOWER_SERVICE))
-+//        if (interface->isServiceRegistered(UPOWER_SERVICE))
-             m_backends << new UPowerBackend(UPOWER_SERVICE, UPOWER_PATH, UPOWER_OBJECT);
-     }
- 

diff --git a/x11-misc/sddm/sddm-0.11.0-r2.ebuild b/x11-misc/sddm/sddm-0.11.0-r2.ebuild
deleted file mode 100644
index 5057c94..0000000
--- a/x11-misc/sddm/sddm-0.11.0-r2.ebuild
+++ /dev/null
@@ -1,76 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-inherit cmake-utils toolchain-funcs user
-
-DESCRIPTION="Simple Desktop Display Manager"
-HOMEPAGE="https://github.com/sddm/sddm"
-SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~arm ~x86"
-
-LICENSE="GPL-2+ MIT CC-BY-3.0 public-domain"
-SLOT="0"
-IUSE="consolekit systemd +upower"
-REQUIRED_USE="?? ( upower systemd )"
-
-RDEPEND="
-	dev-qt/qtcore:5
-	dev-qt/qtdbus:5
-	dev-qt/qtdeclarative:5
-	dev-qt/linguist-tools:5
-	dev-qt/qttest:5
-	sys-libs/pam
-	>=x11-base/xorg-server-1.15.1
-	x11-libs/libxcb[xkb(-)]
-	consolekit? ( >=sys-auth/consolekit-0.9.4 )
-	systemd? ( sys-apps/systemd:= )
-	upower? ( || ( sys-power/upower sys-power/upower-pm-utils ) )"
-DEPEND="${RDEPEND}
-	>=sys-devel/gcc-4.7.0
-	virtual/pkgconfig"
-
-PATCHES=(
-	"${FILESDIR}/${P}-consolekit2.patch"
-	"${FILESDIR}/${P}-dbus-config.patch"
-)
-
-pkg_pretend() {
-	if [[ ${MERGE_TYPE} != binary  && $(tc-getCC) == *gcc* ]]; then
-		if [[ $(gcc-major-version) -lt 4 || $(gcc-major-version) == 4 && $(gcc-minor-version) -lt 7 ]] ; then
-			die 'The active compiler needs to be gcc 4.7 (or newer)'
-		fi
-	fi
-}
-
-pkg_setup() {
-	enewgroup ${PN}
-	enewuser ${PN} -1 -1 /var/lib/sddm ${PN}
-}
-
-src_prepare() {
-	cmake-utils_src_prepare
-
-	use consolekit && epatch "${FILESDIR}/${PN}-0.10.0-consolekit.patch"
-	use upower && epatch "${FILESDIR}/${P}-upower.patch"
-
-	# respect user's cflags
-	sed -e 's|-Wall -march=native||' \
-		-e 's|-O2||' \
-		-i CMakeLists.txt || die 'sed failed'
-}
-
-src_configure() {
-	local mycmakeargs=(
-		$(cmake-utils_use_no systemd SYSTEMD)
-		-DDBUS_CONFIG_FILENAME:STRING="org.freedesktop.sddm.conf"
-	)
-	cmake-utils_src_configure
-}
-
-pkg_postinst() {
-	ewarn "Add the sddm user manually to the video group"
-	ewarn "if you experience flickering or other rendering issues of sddm-greeter"
-	ewarn "see https://github.com/gentoo/qt/pull/52"
-}

diff --git a/x11-misc/sddm/sddm-0.11.0-r1.ebuild b/x11-misc/sddm/sddm-0.11.0-r3.ebuild
similarity index 81%
rename from x11-misc/sddm/sddm-0.11.0-r1.ebuild
rename to x11-misc/sddm/sddm-0.11.0-r3.ebuild
index 2cab5ed..5c7c964 100644
--- a/x11-misc/sddm/sddm-0.11.0-r1.ebuild
+++ b/x11-misc/sddm/sddm-0.11.0-r3.ebuild
@@ -12,8 +12,7 @@ KEYWORDS="~amd64 ~arm ~x86"
 
 LICENSE="GPL-2+ MIT CC-BY-3.0 public-domain"
 SLOT="0"
-IUSE="consolekit systemd +upower"
-REQUIRED_USE="?? ( upower systemd )"
+IUSE="consolekit systemd"
 
 RDEPEND="sys-libs/pam
 	>=x11-base/xorg-server-1.15.1
@@ -24,21 +23,21 @@ RDEPEND="sys-libs/pam
 	dev-qt/linguist-tools:5
 	dev-qt/qttest:5
 	systemd? ( sys-apps/systemd:= )
-	upower? ( || ( sys-power/upower sys-power/upower-pm-utils ) )"
+	!systemd? ( || ( sys-power/upower sys-power/upower-pm-utils ) )"
 DEPEND="${RDEPEND}
-	>=sys-devel/gcc-4.7.0
 	virtual/pkgconfig"
 
 pkg_pretend() {
-	if [[ ${MERGE_TYPE} != binary ]]; then
-		[[ $(gcc-version) < 4.7 ]] && \
+	if [[ ${MERGE_TYPE} != binary  && $(tc-getCC) == *gcc* ]]; then
+		if [[ $(gcc-major-version) -lt 4 || $(gcc-major-version) == 4 && $(gcc-minor-version) -lt 7 ]] ; then
 			die 'The active compiler needs to be gcc 4.7 (or newer)'
+		fi
 	fi
 }
 
 src_prepare() {
 	use consolekit && epatch "${FILESDIR}/${P}-consolekit.patch"
-	use upower && epatch "${FILESDIR}/${PN}-0.10.0-upower.patch"
+	use !systemd && epatch "${FILESDIR}/${PN}-0.10.0-upower.patch"
 	# fix bug 552318
 	epatch "${FILESDIR}/${P}-dbus-config.patch"
 
@@ -68,7 +67,7 @@ pkg_postinst() {
 	ewarn "see https://github.com/gentoo/qt/pull/52"
 }
 
-pkg_setup() {
+pkg_postinst() {
 	enewgroup ${PN}
-	enewuser ${PN} -1 -1 /var/lib/sddm ${PN}
+	enewuser ${PN} -1 -1 /var/lib/${PN} ${PN} video
 }


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2016-01-30 13:07 Michael Palimaka
  0 siblings, 0 replies; 23+ messages in thread
From: Michael Palimaka @ 2016-01-30 13:07 UTC (permalink / raw
  To: gentoo-commits

commit:     1e82a4168e8ff20cc5d985b531db74d9c869a560
Author:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 30 13:05:52 2016 +0000
Commit:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
CommitDate: Sat Jan 30 13:07:38 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1e82a416

x11-misc/sddm: remove old

It was interfering with consolekit.

Gentoo-bug: 571974

Package-Manager: portage-2.2.27

 x11-misc/sddm/Manifest                             |  1 -
 x11-misc/sddm/files/sddm-0.10.0-upower.patch       | 12 ----
 .../sddm/files/sddm-0.11.0-CVE-2015-0856.patch     | 15 -----
 x11-misc/sddm/files/sddm-0.11.0-dbus-config.patch  | 46 --------------
 x11-misc/sddm/sddm-0.11.0-r4.ebuild                | 73 ----------------------
 5 files changed, 147 deletions(-)

diff --git a/x11-misc/sddm/Manifest b/x11-misc/sddm/Manifest
index 957cdec..d5410c3 100644
--- a/x11-misc/sddm/Manifest
+++ b/x11-misc/sddm/Manifest
@@ -1,3 +1,2 @@
-DIST sddm-0.11.0.tar.gz 4735807 SHA256 80d53f075c275f744bd547523d6d640baccfacb4e463a71ec0facb8231b832ce SHA512 9dd2b80788e3cfdb353e64f709db451e04828991976b8b0f74c0e97dbf467fa2744702c73e5e50137eec10dac92df7dacd83fb458f75dd595556fc95fb1759f7 WHIRLPOOL 079c5093374710c2a3247a3e27dd26f3d10962c7cb8f260b80a4ba17a72e63676012d4b8e50f8f4bffc43124efdf05c7e14aefe86253b391345c7fa98a2d4c2f
 DIST sddm-0.12.0.tar.xz 3866620 SHA256 7d7504bf8a717a9131a2f32be852d7631365d21a468ca2649c8245f24ff29ae0 SHA512 d1d9f60634cb2a71096d92321a7a8b33efb8879a766979ca7c1d31ac5f1dbde8253384070338eef80f777db1cd78eef540e9111151f7f9e7d8e648d557e58047 WHIRLPOOL 58d21ead822b85bf3f0f6375cfadee6225dd9bf696e786fe68f283def43b4107d11e14b357d60b0278266270f9ddcb6a9b86285bc3b1a19644583f6ebebc4990
 DIST sddm-0.13.0.tar.xz 3869452 SHA256 dd868caaccf7783ead799f3b79e442d5adcb46251b78c8dbf3e9da0016dd347d SHA512 292a584945e74ea987088f975d5973b45a5b4fc07fa90b487fb9ece2de7ecca352344354474dfa8d103c8242367c19ad926e62a553e5b567d8d88a3f2c73c171 WHIRLPOOL e3961ecd5e22e8d565c16d86b6043ba7f3d6c1c296047d196577ab25af4e50216d67d53e9690b4df262c5ae4486bf36f88d345110a54bada9d75c4ff0dfc5ff3

diff --git a/x11-misc/sddm/files/sddm-0.10.0-upower.patch b/x11-misc/sddm/files/sddm-0.10.0-upower.patch
deleted file mode 100644
index 8c0f34c..0000000
--- a/x11-misc/sddm/files/sddm-0.10.0-upower.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -u -r sddm-0.9.0.orig/src/daemon/PowerManager.cpp sddm-0.9.0/src/daemon/PowerManager.cpp
---- sddm-0.9.0.orig/src/daemon/PowerManager.cpp	2014-10-01 18:40:37.402683578 +0200
-+++ sddm-0.9.0/src/daemon/PowerManager.cpp	2014-10-01 18:40:43.502618164 +0200
-@@ -197,7 +197,7 @@
-             m_backends << new Login1Backend();
- 
-         // check if upower interface exists
--        if (interface->isServiceRegistered(UPOWER_SERVICE))
-+//        if (interface->isServiceRegistered(UPOWER_SERVICE))
-             m_backends << new UPowerBackend();
-     }
- 

diff --git a/x11-misc/sddm/files/sddm-0.11.0-CVE-2015-0856.patch b/x11-misc/sddm/files/sddm-0.11.0-CVE-2015-0856.patch
deleted file mode 100644
index 37c1b97..0000000
--- a/x11-misc/sddm/files/sddm-0.11.0-CVE-2015-0856.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Fix for CVE-2015-0856 (bug 563108) backported from the version 0.12.0.
---- src/daemon/Greeter.cpp
-+++ src/daemon/Greeter.cpp
-@@ -135,6 +135,11 @@
-             env.insert("XDG_VTNR", QString::number(m_display->terminalId()));
-             env.insert("XDG_SESSION_CLASS", "greeter");
-             env.insert("XDG_SESSION_TYPE", m_display->sessionType());
-+
-+            //some themes may use KDE components and that will automatically load KDE's crash handler which we don't want
-+            //counterintuitively setting this env disables that handler
-+            env.insert("KDE_DEBUG", "1");
-+
-             m_auth->insertEnvironment(env);
- 
-             // log message

diff --git a/x11-misc/sddm/files/sddm-0.11.0-dbus-config.patch b/x11-misc/sddm/files/sddm-0.11.0-dbus-config.patch
deleted file mode 100644
index c13c2bd..0000000
--- a/x11-misc/sddm/files/sddm-0.11.0-dbus-config.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 4ab6ab1b78617c51a6d9db4d03be2b3d75e7acc5 Mon Sep 17 00:00:00 2001
-From: Harald Sitter <sitter@kde.org>
-Date: Tue, 14 Apr 2015 10:50:00 +0200
-Subject: [PATCH] allow changing the dbus config file name
-
-on some distributions the generic name of the dbus config might be provided
-by more than one display manager, so always installing with the generic
-name would require distributions to hard-patch the cmake code.
-allowing to change it through a cmake cache variable enables distributions
-to simply parameterize in their cmake call.
-
-this for example affects Ubuntu where the config would be provided by both
-SDDM and LightDM.
----
- CMakeLists.txt      | 1 +
- data/CMakeLists.txt | 2 +-
- 2 files changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 7ceed6e..cf21dc9 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -141,6 +141,7 @@ set(SESSION_COMMAND             "${DATA_INSTALL_DIR}/scripts/Xsession"
- 
- set(CONFIG_FILE                 "${CMAKE_INSTALL_FULL_SYSCONFDIR}/sddm.conf"        CACHE PATH      "Path of the sddm config file")
- set(LOG_FILE                    "${CMAKE_INSTALL_FULL_LOCALSTATEDIR}/log/sddm.log"  CACHE PATH      "Path of the sddm log file")
-+set(DBUS_CONFIG_FILENAME        "org.freedesktop.DisplayManager.conf"               CACHE STRING    "Name of the sddm config file")
- set(COMPONENTS_TRANSLATION_DIR  "${DATA_INSTALL_DIR}/translations"                  CACHE PATH      "Components translations directory")
- 
- # Add subdirectories
-diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt
-index 918892f..335f4e7 100644
---- a/data/CMakeLists.txt
-+++ b/data/CMakeLists.txt
-@@ -1,7 +1,7 @@
- install(DIRECTORY   "faces"                             DESTINATION "${DATA_INSTALL_DIR}")
- install(DIRECTORY   "flags"                             DESTINATION "${DATA_INSTALL_DIR}")
- 
--install(FILES "org.freedesktop.DisplayManager.conf"       DESTINATION "${DBUS_CONFIG_DIR}")
-+install(FILES "org.freedesktop.DisplayManager.conf"     DESTINATION "${DBUS_CONFIG_DIR}" RENAME ${DBUS_CONFIG_FILENAME})
- 
- install(FILES "scripts/Xsession" "scripts/Xsetup" "scripts/Xstop" DESTINATION "${DATA_INSTALL_DIR}/scripts"
-         PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE
--- 
-2.3.6
-

diff --git a/x11-misc/sddm/sddm-0.11.0-r4.ebuild b/x11-misc/sddm/sddm-0.11.0-r4.ebuild
deleted file mode 100644
index 50cbf07..0000000
--- a/x11-misc/sddm/sddm-0.11.0-r4.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-inherit cmake-utils toolchain-funcs user
-
-DESCRIPTION="Simple Desktop Display Manager"
-HOMEPAGE="https://github.com/sddm/sddm"
-SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~arm ~x86"
-
-LICENSE="GPL-2+ MIT CC-BY-3.0 public-domain"
-SLOT="0"
-IUSE="consolekit systemd"
-
-RDEPEND="sys-libs/pam
-	>=x11-base/xorg-server-1.15.1
-	x11-libs/libxcb[xkb(-)]
-	dev-qt/qtcore:5
-	dev-qt/qtdbus:5
-	dev-qt/qtdeclarative:5
-	dev-qt/qttest:5
-	systemd? ( sys-apps/systemd:= )
-	!systemd? ( || ( sys-power/upower sys-power/upower-pm-utils ) )"
-DEPEND="${RDEPEND}
-	dev-qt/linguist-tools:5
-	virtual/pkgconfig"
-
-pkg_pretend() {
-	if [[ ${MERGE_TYPE} != binary  && $(tc-getCC) == *gcc* ]]; then
-		if [[ $(gcc-major-version) -lt 4 || $(gcc-major-version) == 4 && $(gcc-minor-version) -lt 7 ]] ; then
-			die 'The active compiler needs to be gcc 4.7 (or newer)'
-		fi
-	fi
-}
-
-src_prepare() {
-	use consolekit && epatch "${FILESDIR}/${P}-consolekit.patch"
-	use !systemd && epatch "${FILESDIR}/${PN}-0.10.0-upower.patch"
-	# fix bug 552318 and bug 563108
-	epatch "${FILESDIR}/${P}-dbus-config.patch" "${FILESDIR}/${P}-CVE-2015-0856.patch"
-
-	# respect user's cflags
-	sed -e 's|-Wall -march=native||' \
-		-e 's|-O2||' \
-		-i CMakeLists.txt || die 'sed failed'
-}
-
-src_configure() {
-	local mycmakeargs=(
-		$(cmake-utils_use_no systemd SYSTEMD)
-		-DDBUS_CONFIG_FILENAME:STRING="org.freedesktop.sddm.conf"
-	)
-	cmake-utils_src_configure
-}
-
-pkg_postinst() {
-	if use consolekit; then
-		ewarn "This display manager doesn't have native built-in ConsoleKit support."
-		ewarn "In order to use ConsoleKit pam module with this display manager,"
-		ewarn "you should remove the \"nox11\" parameter from pm_ck_connector.so"
-		ewarn "line in /etc/pam.d/system-login"
-	fi
-	ewarn "Add the sddm user manually to the video group"
-	ewarn "if you experience flickering or other rendering issues of sddm-greeter"
-	ewarn "see https://github.com/gentoo/qt/pull/52"
-}
-
-pkg_postinst() {
-	enewgroup ${PN}
-	enewuser ${PN} -1 -1 /var/lib/${PN} ${PN} video
-}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2017-08-15  9:21 Lars Wendler
  0 siblings, 0 replies; 23+ messages in thread
From: Lars Wendler @ 2017-08-15  9:21 UTC (permalink / raw
  To: gentoo-commits

commit:     93cd34224fd5a22bb3258a6824a0346f4c8adfa5
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 15 09:18:26 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Aug 15 09:20:59 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=93cd3422

x11-misc/sddm: Revbump to not show usernames twice (bug #627902).

Permission kindly granted by kensington.

Package-Manager: Portage-2.3.7, Repoman-2.3.3

 .../sddm/files/sddm-0.14.0-nsswitch_conf.patch     | 27 +++++++
 x11-misc/sddm/sddm-0.14.0-r4.ebuild                | 90 ++++++++++++++++++++++
 2 files changed, 117 insertions(+)

diff --git a/x11-misc/sddm/files/sddm-0.14.0-nsswitch_conf.patch b/x11-misc/sddm/files/sddm-0.14.0-nsswitch_conf.patch
new file mode 100644
index 00000000000..371df93e2b8
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.14.0-nsswitch_conf.patch
@@ -0,0 +1,27 @@
+From 1f39c7a91ea4bc9527628adb01cb49173f1e68be Mon Sep 17 00:00:00 2001
+From: Palo Kisa <palo.kisa@gmail.com>
+Date: Fri, 9 Jun 2017 10:13:01 +0200
+Subject: [PATCH] UserModel: Check for duplicates from getpwent()
+
+---
+ src/greeter/UserModel.cpp | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/src/greeter/UserModel.cpp b/src/greeter/UserModel.cpp
+index 94c492d0..33114d08 100644
+--- a/src/greeter/UserModel.cpp
++++ b/src/greeter/UserModel.cpp
+@@ -72,6 +72,13 @@ namespace SDDM {
+             if (mainConfig.Users.HideShells.get().contains(QString::fromLocal8Bit(current_pw->pw_shell)))
+                 continue;
+ 
++            // skip duplicates
++            // Note: getpwent() makes no attempt to suppress duplicate information
++            // if multiple sources are specified in nsswitch.conf(5).
++            if (d->users.cend()
++                != std::find_if(d->users.cbegin(), d->users.cend(), [current_pw](const UserPtr & u) { return u->uid == current_pw->pw_uid; }))
++                continue;
++
+             // create user
+             UserPtr user { new User() };
+             user->name = QString::fromLocal8Bit(current_pw->pw_name);

diff --git a/x11-misc/sddm/sddm-0.14.0-r4.ebuild b/x11-misc/sddm/sddm-0.14.0-r4.ebuild
new file mode 100644
index 00000000000..a79ea8f1a2f
--- /dev/null
+++ b/x11-misc/sddm/sddm-0.14.0-r4.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit cmake-utils user
+
+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"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
+SLOT="0"
+IUSE="consolekit elogind +pam systemd"
+
+REQUIRED_USE="?? ( elogind systemd )"
+
+RDEPEND=">=dev-qt/qtcore-5.6:5
+	>=dev-qt/qtdbus-5.6:5
+	>=dev-qt/qtgui-5.6:5
+	>=dev-qt/qtdeclarative-5.6:5
+	>=dev-qt/qtnetwork-5.6:5
+	>=x11-base/xorg-server-1.15.1
+	x11-libs/libxcb[xkb(-)]
+	consolekit? ( >=sys-auth/consolekit-0.9.4 )
+	elogind? ( sys-auth/elogind )
+	pam? ( sys-libs/pam )
+	systemd? ( sys-apps/systemd:= )
+	!systemd? ( || ( sys-power/upower sys-power/upower-pm-utils ) )"
+
+DEPEND="${RDEPEND}
+	dev-python/docutils
+	>=dev-qt/linguist-tools-5.6:5
+	>=dev-qt/qttest-5.6:5
+	kde-frameworks/extra-cmake-modules
+	virtual/pkgconfig"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-0.13.0-pam_kwallet.patch"
+	# fix for flags handling and bug 563108
+	"${FILESDIR}/${PN}-0.12.0-respect-user-flags.patch"
+	"${FILESDIR}/${P}-avatars.patch"
+	"${FILESDIR}/${PN}-enable-elogind.patch"
+	"${FILESDIR}/${P}-nsswitch_conf.patch" #627902
+)
+
+pkg_pretend() {
+	if [[ ${MERGE_TYPE} != binary  && $(tc-getCC) == *gcc* ]]; then
+		if [[ $(gcc-major-version) -lt 4 || $(gcc-major-version) == 4 && $(gcc-minor-version) -lt 7 ]] ; then
+			die 'The active compiler needs to be gcc 4.7 (or newer)'
+		fi
+	fi
+}
+
+src_prepare() {
+	use consolekit && eapply "${FILESDIR}/${P}-consolekit.patch"
+
+	cmake-utils_src_prepare
+}
+
+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-utils_src_configure
+}
+
+pkg_postinst() {
+	enewgroup ${PN}
+	enewuser ${PN} -1 -1 /var/lib/${PN} ${PN},video
+
+	if use consolekit && use pam && [[ -e "${ROOT}"/etc/pam.d/system-login ]]; then
+		local line=$(grep "pam_ck_connector.*nox11" "${ROOT}"/etc/pam.d/system-login)
+		if [[ -z ${line} ]]; then
+			ewarn
+			ewarn "Erroneous /etc/pam.d/system-login settings detected!"
+			ewarn "Please restore 'nox11' option in the line containing pam_ck_connector:"
+			ewarn
+			ewarn "session      optional      pam_ck_connector.so nox11"
+			ewarn
+			ewarn "or 'emerge -1 sys-auth/pambase' and run etc-update."
+			ewarn
+		fi
+	fi
+}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2017-09-02 15:07 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2017-09-02 15:07 UTC (permalink / raw
  To: gentoo-commits

commit:     84a633a3c1487b5c1295c0a2705f3e6d9a26bdf1
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Sep  2 15:05:03 2017 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Sep  2 15:06:33 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=84a633a3

x11-misc/sddm: Drop old

Package-Manager: Portage-2.3.8, Repoman-2.3.3

 x11-misc/sddm/files/sddm-0.11.0-consolekit.patch | 11 ---
 x11-misc/sddm/sddm-0.14.0-r3.ebuild              | 89 ------------------------
 2 files changed, 100 deletions(-)

diff --git a/x11-misc/sddm/files/sddm-0.11.0-consolekit.patch b/x11-misc/sddm/files/sddm-0.11.0-consolekit.patch
deleted file mode 100644
index 0e2a7f8d7cb..00000000000
--- a/x11-misc/sddm/files/sddm-0.11.0-consolekit.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/data/scripts/Xsession	2015-01-08 12:58:24.448241484 +0100
-+++ b/data/scripts/Xsession	2015-01-08 13:00:07.794244087 +0100
-@@ -93,7 +93,7 @@
-     exec xterm -geometry 80x24-0-0
-     ;;
-   *)
--    eval exec "$session"
-+    eval exec ck-launch-session "$session"
-     ;;
- esac
- exec xmessage -center -buttons OK:0 -default OK "Sorry, cannot execute $session. Check $DESKTOP_SESSION.desktop."

diff --git a/x11-misc/sddm/sddm-0.14.0-r3.ebuild b/x11-misc/sddm/sddm-0.14.0-r3.ebuild
deleted file mode 100644
index 5a2d25ea534..00000000000
--- a/x11-misc/sddm/sddm-0.14.0-r3.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit cmake-utils user
-
-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"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-
-LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
-SLOT="0"
-IUSE="consolekit elogind +pam systemd"
-
-REQUIRED_USE="?? ( elogind systemd )"
-
-RDEPEND=">=dev-qt/qtcore-5.6:5
-	>=dev-qt/qtdbus-5.6:5
-	>=dev-qt/qtgui-5.6:5
-	>=dev-qt/qtdeclarative-5.6:5
-	>=dev-qt/qtnetwork-5.6:5
-	>=x11-base/xorg-server-1.15.1
-	x11-libs/libxcb[xkb(-)]
-	consolekit? ( >=sys-auth/consolekit-0.9.4 )
-	elogind? ( sys-auth/elogind )
-	pam? ( sys-libs/pam )
-	systemd? ( sys-apps/systemd:= )
-	!systemd? ( || ( sys-power/upower sys-power/upower-pm-utils ) )"
-
-DEPEND="${RDEPEND}
-	dev-python/docutils
-	>=dev-qt/linguist-tools-5.6:5
-	>=dev-qt/qttest-5.6:5
-	kde-frameworks/extra-cmake-modules
-	virtual/pkgconfig"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-0.13.0-pam_kwallet.patch"
-	# fix for flags handling and bug 563108
-	"${FILESDIR}/${PN}-0.12.0-respect-user-flags.patch"
-	"${FILESDIR}/${P}-avatars.patch"
-	"${FILESDIR}/${PN}-enable-elogind.patch"
-)
-
-pkg_pretend() {
-	if [[ ${MERGE_TYPE} != binary  && $(tc-getCC) == *gcc* ]]; then
-		if [[ $(gcc-major-version) -lt 4 || $(gcc-major-version) == 4 && $(gcc-minor-version) -lt 7 ]] ; then
-			die 'The active compiler needs to be gcc 4.7 (or newer)'
-		fi
-	fi
-}
-
-src_prepare() {
-	use consolekit && eapply "${FILESDIR}/${P}-consolekit.patch"
-
-	cmake-utils_src_prepare
-}
-
-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-utils_src_configure
-}
-
-pkg_postinst() {
-	enewgroup ${PN}
-	enewuser ${PN} -1 -1 /var/lib/${PN} ${PN},video
-
-	if use consolekit && use pam && [[ -e "${ROOT}"/etc/pam.d/system-login ]]; then
-		local line=$(grep "pam_ck_connector.*nox11" "${ROOT}"/etc/pam.d/system-login)
-		if [[ -z ${line} ]]; then
-			ewarn
-			ewarn "Erroneous /etc/pam.d/system-login settings detected!"
-			ewarn "Please restore 'nox11' option in the line containing pam_ck_connector:"
-			ewarn
-			ewarn "session      optional      pam_ck_connector.so nox11"
-			ewarn
-			ewarn "or 'emerge -1 sys-auth/pambase' and run etc-update."
-			ewarn
-		fi
-	fi
-}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2017-10-14  4:26 Michael Palimaka
  0 siblings, 0 replies; 23+ messages in thread
From: Michael Palimaka @ 2017-10-14  4:26 UTC (permalink / raw
  To: gentoo-commits

commit:     58f84fe4964a0bdd7e335c7819cdb9c03c52697c
Author:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 14 04:24:32 2017 +0000
Commit:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
CommitDate: Sat Oct 14 04:26:47 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=58f84fe4

x11-misc/sddm: fix runtime failure when consolekit is used

Bug: https://bugs.gentoo.org/633920
Package-Manager: Portage-2.3.8, Repoman-2.3.3

 x11-misc/sddm/files/sddm-0.16.0-ck2-revert.patch | 20 +++++++
 x11-misc/sddm/sddm-0.16.0-r1.ebuild              | 66 ++++++++++++++++++++++++
 2 files changed, 86 insertions(+)

diff --git a/x11-misc/sddm/files/sddm-0.16.0-ck2-revert.patch b/x11-misc/sddm/files/sddm-0.16.0-ck2-revert.patch
new file mode 100644
index 00000000000..bbe2a272840
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.16.0-ck2-revert.patch
@@ -0,0 +1,20 @@
+SDDM 0.16.0 fails to start with consolekit2 because it assumes consolekit2
+has the same interface names as logind.
+
+This patch forces sddm to use legacy behaviour when consolekit2 is detected.
+
+Bug: https://bugs.gentoo.org/633920
+Bug: https://github.com/sddm/sddm/issues/903
+Bug: https://github.com/ConsoleKit2/ConsoleKit2/issues/99
+
+--- a/src/daemon/LogindDBusTypes.cpp
++++ b/src/daemon/LogindDBusTypes.cpp
+@@ -60,7 +60,7 @@
+ 
+     if (QDBusConnection::systemBus().interface()->isServiceRegistered(QStringLiteral("org.freedesktop.ConsoleKit"))) {
+         qDebug() << "Console kit interface found";
+-        available = true;
++        available = false;
+         serviceName = QStringLiteral("org.freedesktop.ConsoleKit");
+         managerPath = QStringLiteral("/org/freedesktop/ConsoleKit/Manager");
+         managerIfaceName = QStringLiteral("/org.freedesktop.ConsoleKit.Manager"); //note this doesn't match logind

diff --git a/x11-misc/sddm/sddm-0.16.0-r1.ebuild b/x11-misc/sddm/sddm-0.16.0-r1.ebuild
new file mode 100644
index 00000000000..3aaacde32ab
--- /dev/null
+++ b/x11-misc/sddm/sddm-0.16.0-r1.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils systemd user
+
+DESCRIPTION="Simple Desktop Display Manager"
+HOMEPAGE="https://github.com/sddm/sddm"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
+SLOT="0"
+IUSE="consolekit elogind +pam systemd"
+
+REQUIRED_USE="?? ( elogind systemd )"
+
+RDEPEND="
+	>=dev-qt/qtcore-5.6:5
+	>=dev-qt/qtdbus-5.6:5
+	>=dev-qt/qtgui-5.6:5
+	>=dev-qt/qtdeclarative-5.6:5
+	>=dev-qt/qtnetwork-5.6:5
+	>=x11-base/xorg-server-1.15.1
+	x11-libs/libxcb[xkb]
+	consolekit? ( >=sys-auth/consolekit-0.9.4 )
+	elogind? ( sys-auth/elogind )
+	pam? ( sys-libs/pam )
+	systemd? ( sys-apps/systemd:= )
+	!systemd? ( sys-power/upower )"
+
+DEPEND="${RDEPEND}
+	dev-python/docutils
+	>=dev-qt/linguist-tools-5.6:5
+	>=dev-qt/qttest-5.6:5
+	kde-frameworks/extra-cmake-modules
+	virtual/pkgconfig"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-0.12.0-respect-user-flags.patch" # fix for flags handling and bug 563108
+	"${FILESDIR}/${P}-ck2-revert.patch" #bug 633920
+)
+
+src_prepare() {
+	use consolekit && eapply "${FILESDIR}/${PN}-0.14.0-consolekit.patch"
+	cmake-utils_src_prepare
+}
+
+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-utils_src_configure
+}
+
+pkg_postinst() {
+	enewgroup ${PN}
+	enewuser ${PN} -1 -1 /var/lib/${PN} ${PN},video
+
+	systemd_reenable sddm.service
+}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2017-10-21 19:45 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2017-10-21 19:45 UTC (permalink / raw
  To: gentoo-commits

commit:     efe17b52278ad2d1c223b002b567f746f85265a8
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 21 16:29:24 2017 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Oct 21 19:45:38 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=efe17b52

x11-misc/sddm: Drop old

Package-Manager: Portage-2.3.12, Repoman-2.3.3

 .../sddm/files/sddm-0.14.0-nsswitch_conf.patch     | 27 -------
 x11-misc/sddm/files/sddm-enable-elogind.patch      | 56 -------------
 x11-misc/sddm/sddm-0.14.0-r4.ebuild                | 92 ----------------------
 3 files changed, 175 deletions(-)

diff --git a/x11-misc/sddm/files/sddm-0.14.0-nsswitch_conf.patch b/x11-misc/sddm/files/sddm-0.14.0-nsswitch_conf.patch
deleted file mode 100644
index 371df93e2b8..00000000000
--- a/x11-misc/sddm/files/sddm-0.14.0-nsswitch_conf.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 1f39c7a91ea4bc9527628adb01cb49173f1e68be Mon Sep 17 00:00:00 2001
-From: Palo Kisa <palo.kisa@gmail.com>
-Date: Fri, 9 Jun 2017 10:13:01 +0200
-Subject: [PATCH] UserModel: Check for duplicates from getpwent()
-
----
- src/greeter/UserModel.cpp | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/src/greeter/UserModel.cpp b/src/greeter/UserModel.cpp
-index 94c492d0..33114d08 100644
---- a/src/greeter/UserModel.cpp
-+++ b/src/greeter/UserModel.cpp
-@@ -72,6 +72,13 @@ namespace SDDM {
-             if (mainConfig.Users.HideShells.get().contains(QString::fromLocal8Bit(current_pw->pw_shell)))
-                 continue;
- 
-+            // skip duplicates
-+            // Note: getpwent() makes no attempt to suppress duplicate information
-+            // if multiple sources are specified in nsswitch.conf(5).
-+            if (d->users.cend()
-+                != std::find_if(d->users.cbegin(), d->users.cend(), [current_pw](const UserPtr & u) { return u->uid == current_pw->pw_uid; }))
-+                continue;
-+
-             // create user
-             UserPtr user { new User() };
-             user->name = QString::fromLocal8Bit(current_pw->pw_name);

diff --git a/x11-misc/sddm/files/sddm-enable-elogind.patch b/x11-misc/sddm/files/sddm-enable-elogind.patch
deleted file mode 100644
index d1277e9554f..00000000000
--- a/x11-misc/sddm/files/sddm-enable-elogind.patch
+++ /dev/null
@@ -1,56 +0,0 @@
---- a/CMakeLists.txt	2016-11-10 09:27:03.866358608 +0100
-+++ b/CMakeLists.txt	2016-11-10 10:28:25.384374766 +0100
-@@ -93,7 +93,7 @@
- endif()
- 
- # systemd
--if(NOT NO_SYSTEMD)
-+if(NOT NO_SYSTEMD AND NOT USE_ELOGIND)
-     pkg_check_modules(SYSTEMD "systemd")
- endif()
- 
-@@ -127,12 +127,34 @@
-     set(REBOOT_COMMAND "/usr/bin/systemctl reboot")
- else()
-     set(SYSTEMD_FOUND 0)
-+endif()
-+add_feature_info("systemd" SYSTEMD_FOUND "systemd support")
-+add_feature_info("journald" JOURNALD_FOUND "journald support")
-+
-+# elogind
-+if(NO_SYSTEMD AND USE_ELOGIND)
-+    pkg_check_modules(ELOGIND "libelogind")
-+endif()
-+
-+if(ELOGIND_FOUND)
-+    add_definitions(-DHAVE_ELOGIND)
-+    set(CMAKE_AUTOMOC_MOC_OPTIONS -DHAVE_ELOGIND)
-+
-+    set(MINIMUM_VT 7)
-+    set(HALT_COMMAND "/usr/bin/loginctl poweroff")
-+    set(REBOOT_COMMAND "/usr/bin/loginctl reboot")
-+else()
-+    set(ELOGIND_FOUND 0)
-+endif()
-+add_feature_info("elogind" ELOGIND_FOUND "elogind support")
-+
-+# Default behaviour if neither systemd nor elogind is used
-+if (NOT ELOGIND_FOUND AND NOT SYSTEMD_FOUND)
-     set(MINIMUM_VT 7)
-     set(HALT_COMMAND "/sbin/shutdown -h -P now")
-     set(REBOOT_COMMAND "/sbin/shutdown -r now")
- endif()
--add_feature_info("systemd" SYSTEMD_FOUND "systemd support")
--add_feature_info("journald" JOURNALD_FOUND "journald support")
-+
- 
- # Set constants
- set(DATA_INSTALL_DIR            "${CMAKE_INSTALL_FULL_DATADIR}/sddm"                CACHE PATH      "System application data install directory")
---- a/services/sddm-greeter.pam	2016-06-19 12:24:42.000000000 +0200
-+++ b/services/sddm-greeter.pam	2016-11-02 09:48:18.990032363 +0100
-@@ -14,4 +14,5 @@
- 
- # Setup session
- session		required pam_unix.so
- session		optional pam_systemd.so
-+session		optional pam_elogind.so

diff --git a/x11-misc/sddm/sddm-0.14.0-r4.ebuild b/x11-misc/sddm/sddm-0.14.0-r4.ebuild
deleted file mode 100644
index f67abdc0bdc..00000000000
--- a/x11-misc/sddm/sddm-0.14.0-r4.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit cmake-utils systemd user
-
-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"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-
-LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
-SLOT="0"
-IUSE="consolekit elogind +pam systemd"
-
-REQUIRED_USE="?? ( elogind systemd )"
-
-RDEPEND=">=dev-qt/qtcore-5.6:5
-	>=dev-qt/qtdbus-5.6:5
-	>=dev-qt/qtgui-5.6:5
-	>=dev-qt/qtdeclarative-5.6:5
-	>=dev-qt/qtnetwork-5.6:5
-	>=x11-base/xorg-server-1.15.1
-	x11-libs/libxcb[xkb(-)]
-	consolekit? ( >=sys-auth/consolekit-0.9.4 )
-	elogind? ( sys-auth/elogind )
-	pam? ( sys-libs/pam )
-	systemd? ( sys-apps/systemd:= )
-	!systemd? ( || ( sys-power/upower sys-power/upower-pm-utils ) )"
-
-DEPEND="${RDEPEND}
-	dev-python/docutils
-	>=dev-qt/linguist-tools-5.6:5
-	>=dev-qt/qttest-5.6:5
-	kde-frameworks/extra-cmake-modules
-	virtual/pkgconfig"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-0.13.0-pam_kwallet.patch"
-	# fix for flags handling and bug 563108
-	"${FILESDIR}/${PN}-0.12.0-respect-user-flags.patch"
-	"${FILESDIR}/${P}-avatars.patch"
-	"${FILESDIR}/${PN}-enable-elogind.patch"
-	"${FILESDIR}/${P}-nsswitch_conf.patch" #627902
-)
-
-pkg_pretend() {
-	if [[ ${MERGE_TYPE} != binary  && $(tc-getCC) == *gcc* ]]; then
-		if [[ $(gcc-major-version) -lt 4 || $(gcc-major-version) == 4 && $(gcc-minor-version) -lt 7 ]] ; then
-			die 'The active compiler needs to be gcc 4.7 (or newer)'
-		fi
-	fi
-}
-
-src_prepare() {
-	use consolekit && eapply "${FILESDIR}/${P}-consolekit.patch"
-
-	cmake-utils_src_prepare
-}
-
-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-utils_src_configure
-}
-
-pkg_postinst() {
-	enewgroup ${PN}
-	enewuser ${PN} -1 -1 /var/lib/${PN} ${PN},video
-
-	systemd_reenable sddm.service
-
-	if use consolekit && use pam && [[ -e "${ROOT}"/etc/pam.d/system-login ]]; then
-		local line=$(grep "pam_ck_connector.*nox11" "${ROOT}"/etc/pam.d/system-login)
-		if [[ -z ${line} ]]; then
-			ewarn
-			ewarn "Erroneous /etc/pam.d/system-login settings detected!"
-			ewarn "Please restore 'nox11' option in the line containing pam_ck_connector:"
-			ewarn
-			ewarn "session      optional      pam_ck_connector.so nox11"
-			ewarn
-			ewarn "or 'emerge -1 sys-auth/pambase' and run etc-update."
-			ewarn
-		fi
-	fi
-}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2017-10-21 19:45 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2017-10-21 19:45 UTC (permalink / raw
  To: gentoo-commits

commit:     43b42afbcdf73e9dc819938fb6ed4c8d289beecb
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 21 12:44:59 2017 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Oct 21 19:45:37 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=43b42afb

x11-misc/sddm: Fix Xsession launch for consolekit

Based on patch by Joakim Tjernlund <joakim.tjernlund <AT> infinera.com>

Gentoo-bug: 611210
Package-Manager: Portage-2.3.12, Repoman-2.3.3

 x11-misc/sddm/files/sddm-0.16.0-Xsession.patch | 24 ++++++++++
 x11-misc/sddm/sddm-0.16.0-r2.ebuild            | 62 ++++++++++++++++++++++++++
 2 files changed, 86 insertions(+)

diff --git a/x11-misc/sddm/files/sddm-0.16.0-Xsession.patch b/x11-misc/sddm/files/sddm-0.16.0-Xsession.patch
new file mode 100644
index 00000000000..f341e1863f7
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.16.0-Xsession.patch
@@ -0,0 +1,24 @@
+--- a/data/scripts/Xsession	2016-08-28 14:52:04.910181422 +0200
++++ b/data/scripts/Xsession	2017-10-21 15:25:47.668886596 +0200
+@@ -50,6 +50,10 @@
+     ;;
+ esac
+ 
++# Make D-Bus and ConsoleKit start properly, see:
++# /etc/X11/xinit/xinitrc.d/{80-dbus,90-consolekit}
++command="$@"
++
+ [ -f /etc/xprofile ] && . /etc/xprofile
+ [ -f $HOME/.xprofile ] && . $HOME/.xprofile
+ 
+@@ -94,8 +98,8 @@
+   . "$USERXSESSION"
+ fi
+ 
+-if [ -z "$@" ]; then
++if [ -z "$command" ]; then
+     exec xmessage -center -buttons OK:0 -default OK "Sorry, $DESKTOP_SESSION is no valid session."
+ else
+-    exec $@
++    exec $command
+ fi

diff --git a/x11-misc/sddm/sddm-0.16.0-r2.ebuild b/x11-misc/sddm/sddm-0.16.0-r2.ebuild
new file mode 100644
index 00000000000..26770167920
--- /dev/null
+++ b/x11-misc/sddm/sddm-0.16.0-r2.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils systemd user
+
+DESCRIPTION="Simple Desktop Display Manager"
+HOMEPAGE="https://github.com/sddm/sddm"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
+SLOT="0"
+IUSE="consolekit elogind +pam systemd"
+
+REQUIRED_USE="?? ( elogind systemd )"
+
+RDEPEND="
+	>=dev-qt/qtcore-5.6:5
+	>=dev-qt/qtdbus-5.6:5
+	>=dev-qt/qtgui-5.6:5
+	>=dev-qt/qtdeclarative-5.6:5
+	>=dev-qt/qtnetwork-5.6:5
+	>=x11-base/xorg-server-1.15.1
+	x11-libs/libxcb[xkb]
+	consolekit? ( >=sys-auth/consolekit-0.9.4 )
+	elogind? ( sys-auth/elogind )
+	pam? ( sys-libs/pam )
+	systemd? ( sys-apps/systemd:= )
+	!systemd? ( sys-power/upower )"
+
+DEPEND="${RDEPEND}
+	dev-python/docutils
+	>=dev-qt/linguist-tools-5.6:5
+	>=dev-qt/qttest-5.6:5
+	kde-frameworks/extra-cmake-modules
+	virtual/pkgconfig"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-0.12.0-respect-user-flags.patch" # fix for flags handling and bug 563108
+	"${FILESDIR}/${P}-Xsession.patch" # bug 611210
+	"${FILESDIR}/${P}-ck2-revert.patch" # bug 633920
+)
+
+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-utils_src_configure
+}
+
+pkg_postinst() {
+	enewgroup ${PN}
+	enewuser ${PN} -1 -1 /var/lib/${PN} ${PN},video
+
+	systemd_reenable sddm.service
+}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2018-04-05 15:55 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2018-04-05 15:55 UTC (permalink / raw
  To: gentoo-commits

commit:     8e892dae48e6e695e7e809748a94d67e70be6c2f
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Apr  5 15:53:03 2018 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Apr  5 15:54:47 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8e892dae

x11-misc/sddm: Fix SwitchToGreeter error

Thanks-to: Alexander Miller <alex.miller <AT> gmx.de>
Bug: https://bugs.gentoo.org/644718
Package-Manager: Portage-2.3.28, Repoman-2.3.9

 .../sddm/files/sddm-0.17.0-switchtogreeter.patch   | 54 ++++++++++++++
 x11-misc/sddm/sddm-0.17.0-r2.ebuild                | 83 ++++++++++++++++++++++
 2 files changed, 137 insertions(+)

diff --git a/x11-misc/sddm/files/sddm-0.17.0-switchtogreeter.patch b/x11-misc/sddm/files/sddm-0.17.0-switchtogreeter.patch
new file mode 100644
index 00000000000..22d2fa4ae9b
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.17.0-switchtogreeter.patch
@@ -0,0 +1,54 @@
+Subject: [PATCH] Fix switchToGreeter not available without logind
+From: Alexander Miller <alex.miller@gmx.de>
+
+Seats can't be created until SeatManager's signals are
+connected to the DisplayManager, or the latter won't see
+them and switchToGreeter doesn't work. So split SeatManager
+initialization from its constructor and call initialize it
+only after all connections have been set up in DaemonApp's
+constructor.
+
+With logind there may have been enough delay before seats
+got actually added so things would work, but it's still
+cleaner to fix the order.
+
+Fixes: https://bugs.gentoo.org/644718
+Fixes: https://github.com/sddm/sddm/issues/824
+
+--- a/src/daemon/SeatManager.h
++++ b/src/daemon/SeatManager.h
+@@ -31,8 +31,9 @@ namespace SDDM {
+     class SeatManager : public QObject {
+         Q_OBJECT
+     public:
+-        explicit SeatManager(QObject *parent = 0);
++        explicit SeatManager(QObject *parent = 0) {}
+ 
++        void initialize();
+         void createSeat(const QString &name);
+         void removeSeat(const QString &name);
+         void switchToGreeter(const QString &seat);
+--- a/src/daemon/SeatManager.cpp
++++ b/src/daemon/SeatManager.cpp
+@@ -93,8 +93,7 @@ namespace SDDM {
+         }
+     }
+ 
+-    SeatManager::SeatManager(QObject *parent) : QObject(parent) {
+-
++    void SeatManager::initialize() {
+         if (DaemonApp::instance()->testing() || !Logind::isAvailable()) {
+             //if we don't have logind/CK2, just create a single seat immediately and don't do any other connections
+             createSeat(QStringLiteral("seat0"));
+--- a/src/daemon/DaemonApp.cpp
++++ b/src/daemon/DaemonApp.cpp
+@@ -75,6 +75,9 @@ namespace SDDM {
+ 
+         // log message
+         qDebug() << "Starting...";
++
++        // initialize seats only after signals are connected
++        m_seatManager->initialize();
+     }
+ 
+     bool DaemonApp::testing() const {

diff --git a/x11-misc/sddm/sddm-0.17.0-r2.ebuild b/x11-misc/sddm/sddm-0.17.0-r2.ebuild
new file mode 100644
index 00000000000..0baf9364f5e
--- /dev/null
+++ b/x11-misc/sddm/sddm-0.17.0-r2.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PLOCALES="ar ca cs da de es et fi fr hi_IN hu it ja kk ko lt lv nb nl nn pl pt_BR pt_PT ro ru sk sr sr@ijekavian sr@ijekavianlatin sr@latin sv tr uk zh_CN zh_TW"
+inherit cmake-utils l10n systemd user
+
+DESCRIPTION="Simple Desktop Display Manager"
+HOMEPAGE="https://github.com/sddm/sddm"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
+SLOT="0"
+IUSE="consolekit elogind +pam systemd test"
+
+REQUIRED_USE="?? ( elogind systemd )"
+
+RDEPEND="
+	>=dev-qt/qtcore-5.6:5
+	>=dev-qt/qtdbus-5.6:5
+	>=dev-qt/qtdeclarative-5.6:5
+	>=dev-qt/qtgui-5.6:5
+	>=dev-qt/qtnetwork-5.6:5
+	>=x11-base/xorg-server-1.15.1
+	x11-libs/libXau
+	x11-libs/libxcb[xkb]
+	consolekit? ( >=sys-auth/consolekit-0.9.4 )
+	elogind? ( sys-auth/elogind )
+	pam? ( sys-libs/pam )
+	systemd? ( sys-apps/systemd:= )
+	!systemd? ( sys-power/upower )"
+
+DEPEND="${RDEPEND}
+	dev-python/docutils
+	>=dev-qt/linguist-tools-5.6:5
+	kde-frameworks/extra-cmake-modules
+	virtual/pkgconfig
+	test? ( >=dev-qt/qttest-5.6:5 )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-0.12.0-respect-user-flags.patch" # fix for flags handling and bug 563108
+	"${FILESDIR}/${PN}-0.16.0-Xsession.patch" # bug 611210
+	"${FILESDIR}/${PN}-0.16.0-ck2-revert.patch" # bug 633920
+	# not yet upstream, fixing issues caused by hostname changes
+	"${FILESDIR}/${P}-switchtogreeter.patch" # bugs 644718, 649888
+)
+
+src_prepare() {
+	cmake-utils_src_prepare
+
+	disable_locale() {
+		sed -e "/${1}\.ts/d" -i data/translations/CMakeLists.txt || die
+	}
+	l10n_find_plocales_changes "data/translations" "" ".ts"
+	l10n_for_each_disabled_locale_do disable_locale
+
+	use test || cmake_comment_add_subdirectory test
+}
+
+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-utils_src_configure
+}
+
+src_install() {
+	cmake-utils_src_install
+	sed -i -e "/^InputMethod/s/qtvirtualkeyboard//" "${D}"/etc/sddm.conf || die
+}
+
+pkg_postinst() {
+	enewgroup ${PN}
+	enewuser ${PN} -1 -1 /var/lib/${PN} ${PN},video
+
+	systemd_reenable sddm.service
+}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2018-05-27 21:34 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2018-05-27 21:34 UTC (permalink / raw
  To: gentoo-commits

commit:     dc186212892ef0c9872c16b73f55f79a96f0198e
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun May 27 20:26:08 2018 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun May 27 21:34:11 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dc186212

x11-misc/sddm: Upstream adj. to sddm.service to fix logind race cond.

Closes: https://bugs.gentoo.org/656286
Package-Manager: Portage-2.3.40, Repoman-2.3.9

 x11-misc/sddm/files/sddm-0.17.0-logind-race.patch | 26 +++++++
 x11-misc/sddm/sddm-0.17.0-r3.ebuild               | 83 +++++++++++++++++++++++
 2 files changed, 109 insertions(+)

diff --git a/x11-misc/sddm/files/sddm-0.17.0-logind-race.patch b/x11-misc/sddm/files/sddm-0.17.0-logind-race.patch
new file mode 100644
index 00000000000..a55702061c9
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.17.0-logind-race.patch
@@ -0,0 +1,26 @@
+From fca8c808b7fa4a947a0c60157f0eb5227b3ccfff Mon Sep 17 00:00:00 2001
+From: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
+Date: Mon, 26 Feb 2018 09:03:05 +0100
+Subject: [PATCH] Fix race between sddm and logind
+
+Make sure sddm is run after logind.
+An explicit dependency will make sddm run after logind every time.
+
+Closes: #978
+---
+ services/sddm.service.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/services/sddm.service.in b/services/sddm.service.in
+index df03d92a..9d7618c6 100644
+--- a/services/sddm.service.in
++++ b/services/sddm.service.in
+@@ -2,7 +2,7 @@
+ Description=Simple Desktop Display Manager
+ Documentation=man:sddm(1) man:sddm.conf(5)
+ Conflicts=getty@tty1.service
+-After=systemd-user-sessions.service getty@tty1.service plymouth-quit.service
++After=systemd-user-sessions.service getty@tty1.service plymouth-quit.service systemd-logind.service
+ 
+ [Service]
+ ExecStart=@CMAKE_INSTALL_FULL_BINDIR@/sddm

diff --git a/x11-misc/sddm/sddm-0.17.0-r3.ebuild b/x11-misc/sddm/sddm-0.17.0-r3.ebuild
new file mode 100644
index 00000000000..623e779a6f1
--- /dev/null
+++ b/x11-misc/sddm/sddm-0.17.0-r3.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PLOCALES="ar ca cs da de es et fi fr hi_IN hu it ja kk ko lt lv nb nl nn pl pt_BR pt_PT ro ru sk sr sr@ijekavian sr@ijekavianlatin sr@latin sv tr uk zh_CN zh_TW"
+inherit cmake-utils l10n systemd user
+
+DESCRIPTION="Simple Desktop Display Manager"
+HOMEPAGE="https://github.com/sddm/sddm"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz"
+KEYWORDS="amd64 ~arm ~arm64 x86"
+
+LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
+SLOT="0"
+IUSE="consolekit elogind +pam systemd test"
+
+REQUIRED_USE="?? ( elogind systemd )"
+
+RDEPEND="
+	>=dev-qt/qtcore-5.6:5
+	>=dev-qt/qtdbus-5.6:5
+	>=dev-qt/qtdeclarative-5.6:5
+	>=dev-qt/qtgui-5.6:5
+	>=dev-qt/qtnetwork-5.6:5
+	>=x11-base/xorg-server-1.15.1
+	x11-libs/libxcb[xkb]
+	consolekit? ( >=sys-auth/consolekit-0.9.4 )
+	elogind? ( sys-auth/elogind )
+	pam? ( sys-libs/pam )
+	systemd? ( sys-apps/systemd:= )
+	!systemd? ( sys-power/upower )"
+
+DEPEND="${RDEPEND}
+	dev-python/docutils
+	>=dev-qt/linguist-tools-5.6:5
+	kde-frameworks/extra-cmake-modules
+	virtual/pkgconfig
+	test? ( >=dev-qt/qttest-5.6:5 )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-0.12.0-respect-user-flags.patch" # fix for flags handling and bug 563108
+	"${FILESDIR}/${PN}-0.16.0-Xsession.patch" # bug 611210
+	"${FILESDIR}/${PN}-0.16.0-ck2-revert.patch" # bug 633920
+	"${FILESDIR}/${P}-logind-race.patch" # bug 656286
+	# TODO: not yet upstream
+	"${FILESDIR}/${P}-switchtogreeter.patch" # bugs 644718, 649888
+)
+
+src_prepare() {
+	cmake-utils_src_prepare
+
+	disable_locale() {
+		sed -e "/${1}\.ts/d" -i data/translations/CMakeLists.txt || die
+	}
+	l10n_find_plocales_changes "data/translations" "" ".ts"
+	l10n_for_each_disabled_locale_do disable_locale
+
+	use test || cmake_comment_add_subdirectory test
+}
+
+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-utils_src_configure
+}
+
+src_install() {
+	cmake-utils_src_install
+	sed -i -e "/^InputMethod/s/qtvirtualkeyboard//" "${D}"/etc/sddm.conf || die
+}
+
+pkg_postinst() {
+	enewgroup ${PN}
+	enewuser ${PN} -1 -1 /var/lib/${PN} ${PN},video
+
+	systemd_reenable sddm.service
+}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2018-06-06 10:14 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2018-06-06 10:14 UTC (permalink / raw
  To: gentoo-commits

commit:     12842ffb4b5a4ca1490724bb2d6646e49a4832d0
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed Jun  6 10:12:11 2018 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Jun  6 10:12:11 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=12842ffb

x11-misc/sddm: Fix switchtogreeter patch, add consolekit fix

Bug: https://bugs.gentoo.org/647254
Bug: https://bugs.gentoo.org/655912
Package-Manager: Portage-2.3.40, Repoman-2.3.9

 x11-misc/sddm/files/sddm-0.17.0-consolekit.patch   | 22 ++++++
 .../files/sddm-0.17.0-switchtogreeter-r1.patch     | 54 ++++++++++++++
 x11-misc/sddm/sddm-0.17.0-r4.ebuild                | 84 ++++++++++++++++++++++
 3 files changed, 160 insertions(+)

diff --git a/x11-misc/sddm/files/sddm-0.17.0-consolekit.patch b/x11-misc/sddm/files/sddm-0.17.0-consolekit.patch
new file mode 100644
index 00000000000..ca265d13145
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.17.0-consolekit.patch
@@ -0,0 +1,22 @@
+From 7bd9f322182d840f3cfaee9a49f5cbd5f426aa1b Mon Sep 17 00:00:00 2001
+From: Erik Ridderby <tech@rby.nu>
+Date: Sat, 12 May 2018 08:04:26 +0200
+Subject: [PATCH] Fixed typo that prevents ConsoleKit to be detected (#1027)
+
+---
+ src/daemon/LogindDBusTypes.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/daemon/LogindDBusTypes.cpp b/src/daemon/LogindDBusTypes.cpp
+index 79c70312..011bb7f5 100644
+--- a/src/daemon/LogindDBusTypes.cpp
++++ b/src/daemon/LogindDBusTypes.cpp
+@@ -63,7 +63,7 @@ LogindPathInternal::LogindPathInternal()
+         available = true;
+         serviceName = QStringLiteral("org.freedesktop.ConsoleKit");
+         managerPath = QStringLiteral("/org/freedesktop/ConsoleKit/Manager");
+-        managerIfaceName = QStringLiteral("/org.freedesktop.ConsoleKit.Manager"); //note this doesn't match logind
++        managerIfaceName = QStringLiteral("org.freedesktop.ConsoleKit.Manager"); //note this doesn't match logind
+         seatIfaceName = QStringLiteral("org.freedesktop.ConsoleKit.Seat");
+         sessionIfaceName = QStringLiteral("org.freedesktop.ConsoleKit.Session");
+         userIfaceName = QStringLiteral("org.freedesktop.ConsoleKit.User");

diff --git a/x11-misc/sddm/files/sddm-0.17.0-switchtogreeter-r1.patch b/x11-misc/sddm/files/sddm-0.17.0-switchtogreeter-r1.patch
new file mode 100644
index 00000000000..35982bceda2
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.17.0-switchtogreeter-r1.patch
@@ -0,0 +1,54 @@
+Subject: [PATCH] Fix switchToGreeter not available without logind
+From: Alexander Miller <alex.miller@gmx.de>
+
+Seats can't be created until SeatManager's signals are
+connected to the DisplayManager, or the latter won't see
+them and switchToGreeter doesn't work. So split SeatManager
+initialization from its constructor and call initialize it
+only after all connections have been set up in DaemonApp's
+constructor.
+
+With logind there may have been enough delay before seats
+got actually added so things would work, but it's still
+cleaner to fix the order.
+
+Fixes: https://bugs.gentoo.org/644718
+Fixes: https://github.com/sddm/sddm/issues/824
+
+--- a/src/daemon/SeatManager.h
++++ b/src/daemon/SeatManager.h
+@@ -31,8 +31,9 @@ namespace SDDM {
+     class SeatManager : public QObject {
+         Q_OBJECT
+     public:
+-        explicit SeatManager(QObject *parent = 0);
++        explicit SeatManager(QObject *parent = 0) : QObject(parent) {}
+ 
++        void initialize();
+         void createSeat(const QString &name);
+         void removeSeat(const QString &name);
+         void switchToGreeter(const QString &seat);
+--- a/src/daemon/SeatManager.cpp
++++ b/src/daemon/SeatManager.cpp
+@@ -93,8 +93,7 @@ namespace SDDM {
+         }
+     }
+ 
+-    SeatManager::SeatManager(QObject *parent) : QObject(parent) {
+-
++    void SeatManager::initialize() {
+         if (DaemonApp::instance()->testing() || !Logind::isAvailable()) {
+             //if we don't have logind/CK2, just create a single seat immediately and don't do any other connections
+             createSeat(QStringLiteral("seat0"));
+--- a/src/daemon/DaemonApp.cpp
++++ b/src/daemon/DaemonApp.cpp
+@@ -75,6 +75,9 @@ namespace SDDM {
+ 
+         // log message
+         qDebug() << "Starting...";
++
++        // initialize seats only after signals are connected
++        m_seatManager->initialize();
+     }
+ 
+     bool DaemonApp::testing() const {

diff --git a/x11-misc/sddm/sddm-0.17.0-r4.ebuild b/x11-misc/sddm/sddm-0.17.0-r4.ebuild
new file mode 100644
index 00000000000..090a03ea4de
--- /dev/null
+++ b/x11-misc/sddm/sddm-0.17.0-r4.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PLOCALES="ar ca cs da de es et fi fr hi_IN hu it ja kk ko lt lv nb nl nn pl pt_BR pt_PT ro ru sk sr sr@ijekavian sr@ijekavianlatin sr@latin sv tr uk zh_CN zh_TW"
+inherit cmake-utils l10n systemd user
+
+DESCRIPTION="Simple Desktop Display Manager"
+HOMEPAGE="https://github.com/sddm/sddm"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
+SLOT="0"
+IUSE="consolekit elogind +pam systemd test"
+
+REQUIRED_USE="?? ( elogind systemd )"
+
+RDEPEND="
+	>=dev-qt/qtcore-5.6:5
+	>=dev-qt/qtdbus-5.6:5
+	>=dev-qt/qtdeclarative-5.6:5
+	>=dev-qt/qtgui-5.6:5
+	>=dev-qt/qtnetwork-5.6:5
+	>=x11-base/xorg-server-1.15.1
+	x11-libs/libxcb[xkb]
+	consolekit? ( >=sys-auth/consolekit-0.9.4 )
+	elogind? ( sys-auth/elogind )
+	pam? ( sys-libs/pam )
+	systemd? ( sys-apps/systemd:= )
+	!systemd? ( sys-power/upower )"
+
+DEPEND="${RDEPEND}
+	dev-python/docutils
+	>=dev-qt/linguist-tools-5.6:5
+	kde-frameworks/extra-cmake-modules
+	virtual/pkgconfig
+	test? ( >=dev-qt/qttest-5.6:5 )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-0.12.0-respect-user-flags.patch" # fix for flags handling and bug 563108
+	"${FILESDIR}/${PN}-0.16.0-Xsession.patch" # bug 611210
+	"${FILESDIR}/${PN}-0.16.0-ck2-revert.patch" # bug 633920
+	"${FILESDIR}/${P}-consolekit.patch" # bug 647254
+	"${FILESDIR}/${P}-logind-race.patch" # bug 656286
+	# TODO: pending upstream
+	"${FILESDIR}/${P}-switchtogreeter-r1.patch" # bugs 644718, 649888, 655912
+)
+
+src_prepare() {
+	cmake-utils_src_prepare
+
+	disable_locale() {
+		sed -e "/${1}\.ts/d" -i data/translations/CMakeLists.txt || die
+	}
+	l10n_find_plocales_changes "data/translations" "" ".ts"
+	l10n_for_each_disabled_locale_do disable_locale
+
+	use test || cmake_comment_add_subdirectory test
+}
+
+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-utils_src_configure
+}
+
+src_install() {
+	cmake-utils_src_install
+	sed -i -e "/^InputMethod/s/qtvirtualkeyboard//" "${D}"/etc/sddm.conf || die
+}
+
+pkg_postinst() {
+	enewgroup ${PN}
+	enewuser ${PN} -1 -1 /var/lib/${PN} ${PN},video
+
+	systemd_reenable sddm.service
+}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2020-06-20 15:42 Mikle Kolyada
  0 siblings, 0 replies; 23+ messages in thread
From: Mikle Kolyada @ 2020-06-20 15:42 UTC (permalink / raw
  To: gentoo-commits

commit:     fc12cf7f28f79caafd79b95919f3c1aa6f1cdf11
Author:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 20 15:41:55 2020 +0000
Commit:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sat Jun 20 15:42:15 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fc12cf7f

x11-misc/sddm: fix pam-1.4 compat

Closes: https://bugs.gentoo.org/728550
Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>

 x11-misc/sddm/files/pam-1.4-substack.patch |  49 +++++++++++++
 x11-misc/sddm/sddm-0.18.1-r2.ebuild        | 109 +++++++++++++++++++++++++++++
 2 files changed, 158 insertions(+)

diff --git a/x11-misc/sddm/files/pam-1.4-substack.patch b/x11-misc/sddm/files/pam-1.4-substack.patch
new file mode 100644
index 00000000000..56be825e6e9
--- /dev/null
+++ b/x11-misc/sddm/files/pam-1.4-substack.patch
@@ -0,0 +1,49 @@
+From 9fc1d933517eb01846585f41d04ee335f9f198e8 Mon Sep 17 00:00:00 2001
+From: Mikle Kolyada <zlogene@gentoo.org>
+Date: Sat, 20 Jun 2020 18:32:37 +0300
+Subject: [PATCH] Fix pam v1.4.0 compat
+
+Signed-off-by: Mikle Kolyada <zlogene@gentoo.org>
+---
+ services/sddm-autologin.pam | 1 -
+ services/sddm.pam           | 8 ++++----
+ 2 files changed, 4 insertions(+), 5 deletions(-)
+
+diff --git a/sddm-0.18.1/services/sddm-autologin.pam b/sddm-0.18.1/services/sddm-autologin.pam
+index 4c82048..fc86790 100755
+--- a/services/sddm-autologin.pam
++++ b/services/sddm-autologin.pam
+@@ -1,6 +1,5 @@
+ #%PAM-1.0
+ auth        required    pam_env.so
+-auth        required    pam_tally.so file=/var/log/faillog onerr=succeed
+ auth        required    pam_shells.so
+ auth        required    pam_nologin.so
+ auth        required    pam_permit.so
+diff --git a/sddm-0.18.1/services/sddm.pam b/sddm-0.18.1/services/sddm.pam
+index 343650e..61c1976 100755
+--- a/services/sddm.pam
++++ b/services/sddm.pam
+@@ -1,15 +1,15 @@
+ #%PAM-1.0
+ 
+-auth		include		system-login
++auth		substack		system-login
+ -auth		optional	pam_gnome_keyring.so
+ -auth   optional  pam_kwallet5.so
+ 
+-account		include		system-login
++account		substack	system-login
+ 
+-password	include		system-login
++password	substack	system-login
+ -password	optional	pam_gnome_keyring.so use_authtok
+ 
+-session		optional	pam_keyinit.so force revoke
++session		substack	pam_keyinit.so force revoke
+ session		include		system-login
+ -session		optional	pam_gnome_keyring.so auto_start
+ -session  optional  pam_kwallet5.so auto_start
+-- 
+2.26.2
+

diff --git a/x11-misc/sddm/sddm-0.18.1-r2.ebuild b/x11-misc/sddm/sddm-0.18.1-r2.ebuild
new file mode 100644
index 00000000000..ddadebe514b
--- /dev/null
+++ b/x11-misc/sddm/sddm-0.18.1-r2.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PLOCALES="ar bn ca cs da de es et fi fr hi_IN hu is it ja kk ko lt lv nb nl nn pl pt_BR pt_PT ro ru sk sr sr@ijekavian sr@ijekavianlatin sr@latin sv tr uk zh_CN zh_TW"
+inherit cmake l10n systemd user
+
+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 ~ppc64 ~x86"
+IUSE="consolekit elogind +pam systemd test"
+RESTRICT="!test? ( test )"
+
+REQUIRED_USE="?? ( elogind systemd )"
+
+BDEPEND="
+	dev-python/docutils
+	>=dev-qt/linguist-tools-5.9.4:5
+	kde-frameworks/extra-cmake-modules:5
+	virtual/pkgconfig
+"
+RDEPEND="
+	>=dev-qt/qtcore-5.9.4:5
+	>=dev-qt/qtdbus-5.9.4:5
+	>=dev-qt/qtdeclarative-5.9.4:5
+	>=dev-qt/qtgui-5.9.4:5
+	>=dev-qt/qtnetwork-5.9.4:5
+	>=x11-base/xorg-server-1.15.1
+	x11-libs/libxcb[xkb]
+	consolekit? ( >=sys-auth/consolekit-0.9.4 )
+	elogind? ( sys-auth/elogind )
+	pam? ( sys-libs/pam )
+	systemd? ( sys-apps/systemd:= )
+	!systemd? ( sys-power/upower )
+"
+DEPEND="${RDEPEND}
+	test? ( >=dev-qt/qttest-5.9.4:5 )
+"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-0.12.0-respect-user-flags.patch"
+	"${FILESDIR}/${PN}-0.18.0-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}/${PN}-0.16.0-ck2-revert.patch" # bug 633920
+	"${FILESDIR}/pam-1.4-substack.patch"
+)
+
+src_prepare() {
+	cmake_src_prepare
+
+	disable_locale() {
+		sed -e "/${1}\.ts/d" -i data/translations/CMakeLists.txt || die
+	}
+	l10n_find_plocales_changes "data/translations" "" ".ts"
+	l10n_for_each_disabled_locale_do disable_locale
+
+	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
+
+	# 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() {
+	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"
+
+	enewgroup ${PN}
+	enewuser ${PN} -1 -1 /var/lib/${PN} ${PN},video
+
+	systemd_reenable sddm.service
+}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2020-10-06 18:20 Mikle Kolyada
  0 siblings, 0 replies; 23+ messages in thread
From: Mikle Kolyada @ 2020-10-06 18:20 UTC (permalink / raw
  To: gentoo-commits

commit:     4c2c73b5f641f7cee794c01f754334a9d405eb8e
Author:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Tue Oct  6 18:19:57 2020 +0000
Commit:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Tue Oct  6 18:20:28 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4c2c73b5

x11-misc/sddm: remove consolekit support

Package-Manager: Portage-3.0.4, Repoman-3.0.1
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>

 x11-misc/sddm/files/sddm-0.14.0-consolekit.patch | 9 ---------
 x11-misc/sddm/metadata.xml                       | 1 -
 x11-misc/sddm/sddm-0.15.0.ebuild                 | 6 ++----
 x11-misc/sddm/sddm-0.18.1-r1.ebuild              | 3 +--
 x11-misc/sddm/sddm-0.18.1-r3.ebuild              | 3 +--
 5 files changed, 4 insertions(+), 18 deletions(-)

diff --git a/x11-misc/sddm/files/sddm-0.14.0-consolekit.patch b/x11-misc/sddm/files/sddm-0.14.0-consolekit.patch
deleted file mode 100644
index 64ea0648286..00000000000
--- a/x11-misc/sddm/files/sddm-0.14.0-consolekit.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- a/data/scripts/Xsession	2016-08-28 14:52:04.910181422 +0200
-+++ b/data/scripts/Xsession	2016-08-28 14:53:07.157184480 +0200
-@@ -91,5 +91,5 @@
- if [ -z "$@" ]; then
-     exec xmessage -center -buttons OK:0 -default OK "Sorry, $DESKTOP_SESSION is no valid session."
- else
--    exec $@
-+    exec ck-launch-session $@
- fi

diff --git a/x11-misc/sddm/metadata.xml b/x11-misc/sddm/metadata.xml
index c5bfbd1e394..9d1e3774b72 100644
--- a/x11-misc/sddm/metadata.xml
+++ b/x11-misc/sddm/metadata.xml
@@ -10,7 +10,6 @@
     <name>Gentoo KDE Project</name>
   </maintainer>
   <use>
-    <flag name="consolekit">Use ck-launch-session from sys-auth/consolekit by default in Xsession (no native support)</flag>
     <flag name="elogind">Use <pkg>sys-auth/elogind</pkg> for session tracking.</flag>
   </use>
   <longdescription lang="en">

diff --git a/x11-misc/sddm/sddm-0.15.0.ebuild b/x11-misc/sddm/sddm-0.15.0.ebuild
index 9dde4b79612..115926b2651 100644
--- a/x11-misc/sddm/sddm-0.15.0.ebuild
+++ b/x11-misc/sddm/sddm-0.15.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -12,7 +12,7 @@ KEYWORDS="amd64 ~arm ~arm64 x86"
 
 LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
 SLOT="0"
-IUSE="consolekit elogind +pam systemd"
+IUSE="elogind +pam systemd"
 
 REQUIRED_USE="?? ( elogind systemd )"
 
@@ -24,7 +24,6 @@ RDEPEND="
 	>=dev-qt/qtnetwork-5.6:5
 	>=x11-base/xorg-server-1.15.1
 	x11-libs/libxcb[xkb]
-	consolekit? ( >=sys-auth/consolekit-0.9.4 )
 	elogind? ( sys-auth/elogind )
 	pam? ( sys-libs/pam )
 	systemd? ( sys-apps/systemd:= )
@@ -41,7 +40,6 @@ DEPEND="${RDEPEND}
 PATCHES=( "${FILESDIR}/${PN}-0.12.0-respect-user-flags.patch" )
 
 src_prepare() {
-	use consolekit && eapply "${FILESDIR}/${PN}-0.14.0-consolekit.patch"
 	cmake-utils_src_prepare
 }
 

diff --git a/x11-misc/sddm/sddm-0.18.1-r1.ebuild b/x11-misc/sddm/sddm-0.18.1-r1.ebuild
index bb3da55d933..a413e69e420 100644
--- a/x11-misc/sddm/sddm-0.18.1-r1.ebuild
+++ b/x11-misc/sddm/sddm-0.18.1-r1.ebuild
@@ -13,7 +13,7 @@ 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 ~ppc64 x86"
-IUSE="consolekit elogind +pam systemd test"
+IUSE="elogind +pam systemd test"
 RESTRICT="!test? ( test )"
 
 REQUIRED_USE="?? ( elogind systemd )"
@@ -32,7 +32,6 @@ RDEPEND="
 	>=dev-qt/qtnetwork-5.9.4:5
 	>=x11-base/xorg-server-1.15.1
 	x11-libs/libxcb[xkb]
-	consolekit? ( >=sys-auth/consolekit-0.9.4 )
 	elogind? ( sys-auth/elogind )
 	pam? ( <=sys-libs/pam-1.3.1_p20200128-r1 )
 	systemd? ( sys-apps/systemd:= )

diff --git a/x11-misc/sddm/sddm-0.18.1-r3.ebuild b/x11-misc/sddm/sddm-0.18.1-r3.ebuild
index 9b168d277fe..b2925b5571e 100644
--- a/x11-misc/sddm/sddm-0.18.1-r3.ebuild
+++ b/x11-misc/sddm/sddm-0.18.1-r3.ebuild
@@ -13,7 +13,7 @@ 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 ~ppc64 x86"
-IUSE="consolekit elogind +pam systemd test"
+IUSE="elogind +pam systemd test"
 RESTRICT="!test? ( test )"
 
 REQUIRED_USE="?? ( elogind systemd )"
@@ -32,7 +32,6 @@ RDEPEND="
 	>=dev-qt/qtnetwork-5.9.4:5
 	>=x11-base/xorg-server-1.15.1
 	x11-libs/libxcb[xkb]
-	consolekit? ( >=sys-auth/consolekit-0.9.4 )
 	elogind? ( sys-auth/elogind )
 	pam? ( sys-libs/pam )
 	systemd? ( sys-apps/systemd:= )


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2022-04-01 14:48 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2022-04-01 14:48 UTC (permalink / raw
  To: gentoo-commits

commit:     ef6b9e5792b528c6a7ae70d8cda5646d5e75bdfe
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 31 20:32:24 2022 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Fri Apr  1 14:47:07 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ef6b9e57

x11-misc/sddm: Drop obsolete ConsoleKit patch and quirks

Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 x11-misc/sddm/files/sddm-0.18.1-Xsession.patch | 24 ++++++++++++++++++++++++
 x11-misc/sddm/sddm-0.18.1-r6.ebuild            |  6 ++----
 2 files changed, 26 insertions(+), 4 deletions(-)

diff --git a/x11-misc/sddm/files/sddm-0.18.1-Xsession.patch b/x11-misc/sddm/files/sddm-0.18.1-Xsession.patch
new file mode 100644
index 000000000000..e1e3c1527be7
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.18.1-Xsession.patch
@@ -0,0 +1,24 @@
+--- a/data/scripts/Xsession
++++ b/data/scripts/Xsession
+@@ -50,6 +50,10 @@
+     ;;
+ esac
+ 
++# Make D-Bus start properly, see:
++# /etc/X11/xinit/xinitrc.d/80-dbus
++command="$@"
++
+ [ -f /etc/xprofile ] && . /etc/xprofile
+ [ -f $HOME/.xprofile ] && . $HOME/.xprofile
+ 
+@@ -94,8 +98,8 @@
+   . "$USERXSESSION"
+ fi
+ 
+-if [ -z "$*" ]; then
++if [ -z "$command" ]; then
+     exec xmessage -center -buttons OK:0 -default OK "Sorry, $DESKTOP_SESSION is no valid session."
+ else
+-    exec $@
++    exec $command
+ fi

diff --git a/x11-misc/sddm/sddm-0.18.1-r6.ebuild b/x11-misc/sddm/sddm-0.18.1-r6.ebuild
index 3d1b2b680504..3ee4febc099e 100644
--- a/x11-misc/sddm/sddm-0.18.1-r6.ebuild
+++ b/x11-misc/sddm/sddm-0.18.1-r6.ebuild
@@ -46,7 +46,7 @@ DEPEND="${RDEPEND}
 
 PATCHES=(
 	"${FILESDIR}/${P}-respect-user-flags.patch"
-	"${FILESDIR}/${PN}-0.18.0-Xsession.patch" # bug 611210
+	"${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"
@@ -54,12 +54,10 @@ PATCHES=(
 	# fix for ReuseSession=true
 	"${FILESDIR}/${P}-only-reuse-online-sessions.patch"
 	# TODO: fix properly
-	"${FILESDIR}/${PN}-0.16.0-ck2-revert.patch" # bug 633920
 	"${FILESDIR}/pam-1.4-substack.patch"
 	# upstream git develop branch:
 	"${FILESDIR}/${P}-qt-5.15.2.patch"
-	# bug 753104
-	"${FILESDIR}/${P}-cve-2020-28049.patch"
+	"${FILESDIR}/${P}-cve-2020-28049.patch" # bug 753104
 )
 
 src_prepare() {


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2022-04-01 14:48 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2022-04-01 14:48 UTC (permalink / raw
  To: gentoo-commits

commit:     d4fe5a71ce71d8c80cbd90e0cd9676dd2dc087d8
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 12 21:44:29 2020 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Fri Apr  1 14:47:07 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d4fe5a71

x11-misc/sddm: Rebase *respect-user-flags.patch onto 0.18.1

Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 ...ect-user-flags.patch => sddm-0.18.1-respect-user-flags.patch} | 9 ++++-----
 x11-misc/sddm/sddm-0.18.1-r5.ebuild                              | 2 +-
 x11-misc/sddm/sddm-0.18.1-r6.ebuild                              | 2 +-
 3 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/x11-misc/sddm/files/sddm-0.12.0-respect-user-flags.patch b/x11-misc/sddm/files/sddm-0.18.1-respect-user-flags.patch
similarity index 69%
rename from x11-misc/sddm/files/sddm-0.12.0-respect-user-flags.patch
rename to x11-misc/sddm/files/sddm-0.18.1-respect-user-flags.patch
index fc450169792d..6801fa799ead 100644
--- a/x11-misc/sddm/files/sddm-0.12.0-respect-user-flags.patch
+++ b/x11-misc/sddm/files/sddm-0.18.1-respect-user-flags.patch
@@ -1,9 +1,8 @@
-diff -u CMakeLists.txt CMakeLists.txt 
---- a/CMakeLists.txt      2015-09-05 22:40:50.000000000 +0200
-+++ b/CMakeLists.txt      2015-09-07 12:15:33.419530808 +0200
-@@ -35,22 +35,6 @@
+--- a/CMakeLists.txt	2020-10-12 13:03:39.000000000 +0200
++++ b/CMakeLists.txt	2020-10-12 23:40:04.480687143 +0200
+@@ -41,22 +41,6 @@
  # Definitions
- add_definitions(-Wall -std=c++11 -DQT_NO_CAST_FROM_ASCII)
+ add_definitions(-Wall -std=c++11 -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_FOREACH)
  
 -# Default build type
 -if(NOT CMAKE_BUILD_TYPE)

diff --git a/x11-misc/sddm/sddm-0.18.1-r5.ebuild b/x11-misc/sddm/sddm-0.18.1-r5.ebuild
index 20b127562993..52bc18534548 100644
--- a/x11-misc/sddm/sddm-0.18.1-r5.ebuild
+++ b/x11-misc/sddm/sddm-0.18.1-r5.ebuild
@@ -43,7 +43,7 @@ DEPEND="${RDEPEND}
 "
 
 PATCHES=(
-	"${FILESDIR}/${PN}-0.12.0-respect-user-flags.patch"
+	"${FILESDIR}/${P}-respect-user-flags.patch"
 	"${FILESDIR}/${PN}-0.18.0-Xsession.patch" # bug 611210
 	"${FILESDIR}/${PN}-0.18.0-sddmconfdir.patch"
 	# fix for groups: https://github.com/sddm/sddm/issues/1159

diff --git a/x11-misc/sddm/sddm-0.18.1-r6.ebuild b/x11-misc/sddm/sddm-0.18.1-r6.ebuild
index ee7fbfa1a60b..3d1b2b680504 100644
--- a/x11-misc/sddm/sddm-0.18.1-r6.ebuild
+++ b/x11-misc/sddm/sddm-0.18.1-r6.ebuild
@@ -45,7 +45,7 @@ DEPEND="${RDEPEND}
 "
 
 PATCHES=(
-	"${FILESDIR}/${PN}-0.12.0-respect-user-flags.patch"
+	"${FILESDIR}/${P}-respect-user-flags.patch"
 	"${FILESDIR}/${PN}-0.18.0-Xsession.patch" # bug 611210
 	"${FILESDIR}/${PN}-0.18.0-sddmconfdir.patch"
 	# fix for groups: https://github.com/sddm/sddm/issues/1159


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2022-04-01 14:48 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2022-04-01 14:48 UTC (permalink / raw
  To: gentoo-commits

commit:     943445b50d918a2a5ac0712105e109973147eb6e
Author:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
AuthorDate: Sun Mar 27 19:42:50 2022 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Fri Apr  1 14:47:07 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=943445b5

x11-misc/sddm: migrate to glep-81

Also added tmpfiles handling and patch for CVE-2020-28049.

Bug: https://bugs.gentoo.org/753104
Closes: https://bugs.gentoo.org/802306
Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../sddm/files/sddm-0.18.1-cve-2020-28049.patch    |  94 +++++++++++++++++
 x11-misc/sddm/files/sddm.tmpfiles                  |   1 +
 x11-misc/sddm/sddm-0.18.1-r6.ebuild                | 116 +++++++++++++++++++++
 3 files changed, 211 insertions(+)

diff --git a/x11-misc/sddm/files/sddm-0.18.1-cve-2020-28049.patch b/x11-misc/sddm/files/sddm-0.18.1-cve-2020-28049.patch
new file mode 100644
index 000000000000..8209c0739dc6
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.18.1-cve-2020-28049.patch
@@ -0,0 +1,94 @@
+From be202f533ab98a684c6a007e8d5b4357846bc222 Mon Sep 17 00:00:00 2001
+From: Fabian Vogt <fabian@ritter-vogt.de>
+Date: Tue, 6 Oct 2020 21:21:38 +0200
+Subject: [PATCH] Fix X not having access control on startup
+
+If the auth file is empty, X allows any local application (= any user on the
+system) to connect. This is currently the case until X wrote the display
+number to sddm and sddm used that to write the entry into the file.
+To work around this chicken-and-egg problem, make use of the fact that X
+doesn't actually look at the display number in the passed auth file and just
+use :0 unconditionally. Also make sure that writing the entry was actually
+successful.
+
+CVE-2020-28049
+---
+ src/daemon/XorgDisplayServer.cpp | 25 ++++++++++++++++++++-----
+ src/daemon/XorgDisplayServer.h   |  2 +-
+ 2 files changed, 21 insertions(+), 6 deletions(-)
+
+diff --git a/src/daemon/XorgDisplayServer.cpp b/src/daemon/XorgDisplayServer.cpp
+index d04f6344..df685b2d 100644
+--- a/src/daemon/XorgDisplayServer.cpp
++++ b/src/daemon/XorgDisplayServer.cpp
+@@ -88,7 +88,7 @@ namespace SDDM {
+         return m_cookie;
+     }
+ 
+-    void XorgDisplayServer::addCookie(const QString &file) {
++    bool XorgDisplayServer::addCookie(const QString &file) {
+         // log message
+         qDebug() << "Adding cookie to" << file;
+ 
+@@ -104,13 +104,13 @@ namespace SDDM {
+ 
+         // check file
+         if (!fp)
+-            return;
++            return false;
+         fprintf(fp, "remove %s\n", qPrintable(m_display));
+         fprintf(fp, "add %s . %s\n", qPrintable(m_display), qPrintable(m_cookie));
+         fprintf(fp, "exit\n");
+ 
+         // close pipe
+-        pclose(fp);
++        return pclose(fp) == 0;
+     }
+ 
+     bool XorgDisplayServer::start() {
+@@ -127,6 +127,15 @@ namespace SDDM {
+         // log message
+         qDebug() << "Display server starting...";
+ 
++        // generate auth file.
++        // For the X server's copy, the display number doesn't matter.
++        // An empty file would result in no access control!
++        m_display = QStringLiteral(":0");
++        if(!addCookie(m_authPath)) {
++            qCritical() << "Failed to write xauth file";
++            return false;
++        }
++
+         if (daemonApp->testing()) {
+             QStringList args;
+             QDir x11socketDir(QStringLiteral("/tmp/.X11-unix"));
+@@ -217,8 +226,14 @@ namespace SDDM {
+             emit started();
+         }
+ 
+-        // generate auth file
+-        addCookie(m_authPath);
++        // The file is also used by the greeter, which does care about the
++        // display number. Write the proper entry, if it's different.
++        if(m_display != QStringLiteral(":0")) {
++            if(!addCookie(m_authPath)) {
++                qCritical() << "Failed to write xauth file";
++                return false;
++            }
++        }
+         changeOwner(m_authPath);
+ 
+         // set flag
+diff --git a/src/daemon/XorgDisplayServer.h b/src/daemon/XorgDisplayServer.h
+index d2bdf6d4..e97a0b53 100644
+--- a/src/daemon/XorgDisplayServer.h
++++ b/src/daemon/XorgDisplayServer.h
+@@ -40,7 +40,7 @@ namespace SDDM {
+ 
+         const QString &cookie() const;
+ 
+-        void addCookie(const QString &file);
++        bool addCookie(const QString &file);
+ 
+     public slots:
+         bool start();

diff --git a/x11-misc/sddm/files/sddm.tmpfiles b/x11-misc/sddm/files/sddm.tmpfiles
new file mode 100644
index 000000000000..300d646138c1
--- /dev/null
+++ b/x11-misc/sddm/files/sddm.tmpfiles
@@ -0,0 +1 @@
+d /var/lib/sddm 0755 sddm sddm

diff --git a/x11-misc/sddm/sddm-0.18.1-r6.ebuild b/x11-misc/sddm/sddm-0.18.1-r6.ebuild
new file mode 100644
index 000000000000..ee7fbfa1a60b
--- /dev/null
+++ b/x11-misc/sddm/sddm-0.18.1-r6.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PLOCALES="ar bn ca cs da de es et fi fr hi_IN hu is it ja kk ko lt lv nb nl nn pl pt_BR pt_PT ro ru sk sr sr@ijekavian sr@ijekavianlatin sr@latin sv tr uk zh_CN zh_TW"
+inherit cmake plocale 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 ~ppc64 ~riscv ~x86"
+IUSE="elogind +pam systemd test"
+RESTRICT="!test? ( test )"
+
+REQUIRED_USE="?? ( elogind systemd )"
+
+BDEPEND="
+	dev-python/docutils
+	>=dev-qt/linguist-tools-5.9.4:5
+	kde-frameworks/extra-cmake-modules:5
+	virtual/pkgconfig
+"
+RDEPEND="
+	acct-group/sddm
+	acct-user/sddm
+	>=dev-qt/qtcore-5.9.4:5
+	>=dev-qt/qtdbus-5.9.4:5
+	>=dev-qt/qtdeclarative-5.9.4:5
+	>=dev-qt/qtgui-5.9.4:5
+	>=dev-qt/qtnetwork-5.9.4:5
+	>=x11-base/xorg-server-1.15.1
+	x11-libs/libxcb[xkb]
+	elogind? ( sys-auth/elogind )
+	pam? ( sys-libs/pam )
+	!pam? ( virtual/libcrypt:= )
+	systemd? ( sys-apps/systemd:= )
+	!systemd? ( sys-power/upower )
+"
+DEPEND="${RDEPEND}
+	test? ( >=dev-qt/qttest-5.9.4:5 )
+"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-0.12.0-respect-user-flags.patch"
+	"${FILESDIR}/${PN}-0.18.0-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}/${PN}-0.16.0-ck2-revert.patch" # bug 633920
+	"${FILESDIR}/pam-1.4-substack.patch"
+	# upstream git develop branch:
+	"${FILESDIR}/${P}-qt-5.15.2.patch"
+	# bug 753104
+	"${FILESDIR}/${P}-cve-2020-28049.patch"
+)
+
+src_prepare() {
+	cmake_src_prepare
+
+	disable_locale() {
+		sed -e "/${1}\.ts/d" -i data/translations/CMakeLists.txt || die
+	}
+	plocale_find_changes "data/translations" "" ".ts"
+	plocale_for_each_disabled_locale disable_locale
+
+	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"
+
+	systemd_reenable sddm.service
+}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2022-04-02 12:38 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2022-04-02 12:38 UTC (permalink / raw
  To: gentoo-commits

commit:     4c2f2e12abcee705d727ecccbf9f6b6d07374710
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Apr  2 12:37:49 2022 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Apr  2 12:37:49 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4c2f2e12

x11-misc/sddm: Cleanup vulnerable 0.18.1-r5

Bug: https://bugs.gentoo.org/753104
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 x11-misc/sddm/files/sddm-0.16.0-ck2-revert.patch |  20 ----
 x11-misc/sddm/files/sddm-0.18.0-Xsession.patch   |  24 -----
 x11-misc/sddm/sddm-0.18.1-r5.ebuild              | 111 -----------------------
 3 files changed, 155 deletions(-)

diff --git a/x11-misc/sddm/files/sddm-0.16.0-ck2-revert.patch b/x11-misc/sddm/files/sddm-0.16.0-ck2-revert.patch
deleted file mode 100644
index bbe2a272840c..000000000000
--- a/x11-misc/sddm/files/sddm-0.16.0-ck2-revert.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-SDDM 0.16.0 fails to start with consolekit2 because it assumes consolekit2
-has the same interface names as logind.
-
-This patch forces sddm to use legacy behaviour when consolekit2 is detected.
-
-Bug: https://bugs.gentoo.org/633920
-Bug: https://github.com/sddm/sddm/issues/903
-Bug: https://github.com/ConsoleKit2/ConsoleKit2/issues/99
-
---- a/src/daemon/LogindDBusTypes.cpp
-+++ b/src/daemon/LogindDBusTypes.cpp
-@@ -60,7 +60,7 @@
- 
-     if (QDBusConnection::systemBus().interface()->isServiceRegistered(QStringLiteral("org.freedesktop.ConsoleKit"))) {
-         qDebug() << "Console kit interface found";
--        available = true;
-+        available = false;
-         serviceName = QStringLiteral("org.freedesktop.ConsoleKit");
-         managerPath = QStringLiteral("/org/freedesktop/ConsoleKit/Manager");
-         managerIfaceName = QStringLiteral("/org.freedesktop.ConsoleKit.Manager"); //note this doesn't match logind

diff --git a/x11-misc/sddm/files/sddm-0.18.0-Xsession.patch b/x11-misc/sddm/files/sddm-0.18.0-Xsession.patch
deleted file mode 100644
index 41c813a06645..000000000000
--- a/x11-misc/sddm/files/sddm-0.18.0-Xsession.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- a/data/scripts/Xsession	2016-08-28 14:52:04.910181422 +0200
-+++ b/data/scripts/Xsession	2017-10-21 15:25:47.668886596 +0200
-@@ -50,6 +50,10 @@
-     ;;
- esac
- 
-+# Make D-Bus and ConsoleKit start properly, see:
-+# /etc/X11/xinit/xinitrc.d/{80-dbus,90-consolekit}
-+command="$@"
-+
- [ -f /etc/xprofile ] && . /etc/xprofile
- [ -f $HOME/.xprofile ] && . $HOME/.xprofile
- 
-@@ -94,8 +98,8 @@
-   . "$USERXSESSION"
- fi
- 
--if [ -z "$*" ]; then
-+if [ -z "$command" ]; then
-     exec xmessage -center -buttons OK:0 -default OK "Sorry, $DESKTOP_SESSION is no valid session."
- else
--    exec $@
-+    exec $command
- fi

diff --git a/x11-misc/sddm/sddm-0.18.1-r5.ebuild b/x11-misc/sddm/sddm-0.18.1-r5.ebuild
deleted file mode 100644
index 52bc18534548..000000000000
--- a/x11-misc/sddm/sddm-0.18.1-r5.ebuild
+++ /dev/null
@@ -1,111 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PLOCALES="ar bn ca cs da de es et fi fr hi_IN hu is it ja kk ko lt lv nb nl nn pl pt_BR pt_PT ro ru sk sr sr@ijekavian sr@ijekavianlatin sr@latin sv tr uk zh_CN zh_TW"
-inherit cmake plocale systemd user
-
-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 ~ppc64 ~riscv x86"
-IUSE="elogind +pam systemd test"
-RESTRICT="!test? ( test )"
-
-REQUIRED_USE="?? ( elogind systemd )"
-
-BDEPEND="
-	dev-python/docutils
-	>=dev-qt/linguist-tools-5.9.4:5
-	kde-frameworks/extra-cmake-modules:5
-	virtual/pkgconfig
-"
-RDEPEND="
-	>=dev-qt/qtcore-5.9.4:5
-	>=dev-qt/qtdbus-5.9.4:5
-	>=dev-qt/qtdeclarative-5.9.4:5
-	>=dev-qt/qtgui-5.9.4:5
-	>=dev-qt/qtnetwork-5.9.4:5
-	>=x11-base/xorg-server-1.15.1
-	x11-libs/libxcb[xkb]
-	elogind? ( sys-auth/elogind )
-	pam? ( sys-libs/pam )
-	!pam? ( virtual/libcrypt:= )
-	systemd? ( sys-apps/systemd:= )
-	!systemd? ( sys-power/upower )
-"
-DEPEND="${RDEPEND}
-	test? ( >=dev-qt/qttest-5.9.4:5 )
-"
-
-PATCHES=(
-	"${FILESDIR}/${P}-respect-user-flags.patch"
-	"${FILESDIR}/${PN}-0.18.0-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}/${PN}-0.16.0-ck2-revert.patch" # bug 633920
-	"${FILESDIR}/pam-1.4-substack.patch"
-	# upstream git develop branch:
-	"${FILESDIR}/${P}-qt-5.15.2.patch"
-)
-
-src_prepare() {
-	cmake_src_prepare
-
-	disable_locale() {
-		sed -e "/${1}\.ts/d" -i data/translations/CMakeLists.txt || die
-	}
-	plocale_find_changes "data/translations" "" ".ts"
-	plocale_for_each_disabled_locale disable_locale
-
-	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
-
-	# 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() {
-	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"
-
-	enewgroup ${PN}
-	enewuser ${PN} -1 -1 /var/lib/${PN} ${PN},video
-
-	systemd_reenable sddm.service
-}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2022-11-24 21:05 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2022-11-24 21:05 UTC (permalink / raw
  To: gentoo-commits

commit:     c6d2f39f1e75acd270d6213e7f52c0383647718e
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 24 20:41:18 2022 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Nov 24 21:05:00 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c6d2f39f

x11-misc/sddm: Backport several 0.19.0 and master branch fixes

- Nvidia VT switching glitch
- Crash w/ Qt 5.15.7 (KDE QtPatchCollection)
- Prevent duplicate (Wayland) session suffix

Alex (1):
      Prevent duplicate session name.

David Edmundson (1):
      Enable QSurfaceFormat::ResetNotification on new Qt

Harald Sitter (1):
      disable automatic portal launching

KDE-bug: https://bugs.kde.org/show_bug.cgi?id=458865

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../files/sddm-0.18.1-drop-wayland-suffix.patch    |  28 +++++
 .../sddm/files/sddm-0.18.1-fix-qt-5.15.7.patch     |  33 ++++++
 .../sddm-0.18.1-nvidia-glitches-vt-switch.patch    |  46 +++++++
 x11-misc/sddm/sddm-0.18.1-r7.ebuild                | 132 +++++++++++++++++++++
 4 files changed, 239 insertions(+)

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
+}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2023-06-27 11:25 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2023-06-27 11:25 UTC (permalink / raw
  To: gentoo-commits

commit:     94c6fa3154bbae2d4a906d9ee4f105fc62320702
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 26 15:51:27 2023 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Jun 27 11:25:40 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=94c6fa31

x11-misc/sddm: add 0.20.0

See also:
https://github.com/sddm/sddm/releases/tag/v0.20.0

This is adding back RDEPEND=x11-base/xorg-server for two reasons:
- X11 is the default DisplayServer, with all other options EXPERIMENTAL
- every other distro still depends on it, probably for that reason

Closes: https://bugs.gentoo.org/669980
Bug: https://bugs.gentoo.org/728550
Closes: https://bugs.gentoo.org/790713
Closes: https://bugs.gentoo.org/907069
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 x11-misc/sddm/Manifest                             |   1 +
 .../sddm-0.20.0-fix-use-development-sessions.patch |  83 +++++++++++++
 x11-misc/sddm/sddm-0.20.0.ebuild                   | 132 +++++++++++++++++++++
 3 files changed, 216 insertions(+)

diff --git a/x11-misc/sddm/Manifest b/x11-misc/sddm/Manifest
index 4145f4344c73..09b732679e91 100644
--- a/x11-misc/sddm/Manifest
+++ b/x11-misc/sddm/Manifest
@@ -1,2 +1,3 @@
 DIST sddm-0.18.1.tar.xz 3402972 BLAKE2B 99ab43d374e9a3d318f692a6d496d8a6d68927af3c8e8fc2208d7355ec90649a14758b39f5733dd32f942ed569de88085576d4f5f8666f4f97079e0fb6dcb99e SHA512 ff0637600cda2f4da1f643f047f8ee822bd9651ae4ccbb614b9804175c97360ada7af93e07a7b63832f014ef6e7d1b5380ab2b8959f8024ea520fa5ff17efd60
 DIST sddm-0.19.0_p20230608.tar.gz 3553104 BLAKE2B 41622866f28f9a2aee3b1f6f02f66271d8fe762da71d2215bb6b4b87418504ce321db81625a6cfab099bdaa395da1bf4153a65e795612e745546c2a42e97f270 SHA512 76a591a41d3f171c6c3ec5d57837d3061f3dd094ec1e08003f0bacd90c061613505c899ce0b86c7bd4c5f8c346f7bb15f9cd574377dcece123a756329a805562
+DIST sddm-0.20.0.tar.gz 3552722 BLAKE2B 8086c9555d5ce1598db3279353de077d51adbcc5222a929750e8558a1bcdad395a411f90608bffdc6e1ca7e7ac2b8325e25cf04cbf8476698d787ce7e60c2105 SHA512 0f64b405f1451873a01a2210530feb6f4cbbdea17be9d039c105088963a48322968db7b60c0d20ac5d97c8ec2a19e5130f0a74c0f9de58c61453d8ce8bb6272a

diff --git a/x11-misc/sddm/files/sddm-0.20.0-fix-use-development-sessions.patch b/x11-misc/sddm/files/sddm-0.20.0-fix-use-development-sessions.patch
new file mode 100644
index 000000000000..3213828181ca
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.20.0-fix-use-development-sessions.patch
@@ -0,0 +1,83 @@
+From 5b702ae986464fe6dbc8557d4b2da725ac1ed175 Mon Sep 17 00:00:00 2001
+From: Fabian Vogt <fvogt@suse.de>
+Date: Mon, 26 Jun 2023 09:52:05 +0200
+Subject: [PATCH] Session: Parse .desktop files manually again
+
+Using QSettings::IniFormat doesn't quite work. Implement a custom parser
+for those files to handle them according to the specification.
+
+Fixes #1745
+---
+ src/common/Session.cpp | 52 +++++++++++++++++++++++++++++++++++++++++-
+ 1 file changed, 51 insertions(+), 1 deletion(-)
+
+diff --git a/src/common/Session.cpp b/src/common/Session.cpp
+index 4bb2142ca..5eec64859 100644
+--- a/src/common/Session.cpp
++++ b/src/common/Session.cpp
+@@ -34,6 +34,56 @@
+ const QString s_entryExtention = QStringLiteral(".desktop");
+ 
+ namespace SDDM {
++    // QSettings::IniFormat can't be used to read .desktop files due to different
++    // syntax of values (escape sequences, quoting, automatic QStringList detection).
++    // So implement yet another .desktop file parser.
++    class DesktopFileFormat {
++        static bool readFunc(QIODevice &device, QSettings::SettingsMap &map)
++        {
++            QString currentSectionName;
++            while(!device.atEnd())
++            {
++                // Iterate each line, remove line terminators
++                const auto line = device.readLine().replace("\r", "").replace("\n", "");
++                if(line.isEmpty() || line.startsWith('#'))
++                    continue; // Ignore empty lines and comments
++
++                if(line.startsWith('[')) // Section header
++                {
++                    // Remove [ and ].
++                    currentSectionName = QString::fromUtf8(line.mid(1, line.length() - 2));
++                }
++                else if(int equalsPos = line.indexOf('='); equalsPos > 0) // Key=Value
++                {
++                    const auto key = QString::fromUtf8(line.left(equalsPos));
++
++                    // Read the value, handle escape sequences
++                    auto valueBytes = line.mid(equalsPos + 1);
++                    valueBytes.replace("\\s", " ").replace("\\n", "\n");
++                    valueBytes.replace("\\t", "\t").replace("\\r", "\r");
++                    valueBytes.replace("\\\\", "\\");
++
++                    auto value = QString::fromUtf8(valueBytes);
++                    map.insert(currentSectionName + QLatin1Char('/') + key, value);
++                }
++            }
++
++            return true;
++        }
++    public:
++        // Register the .desktop file format if necessary, return its id.
++        static QSettings::Format format()
++        {
++            static QSettings::Format s_format = QSettings::InvalidFormat;
++            if (s_format == QSettings::InvalidFormat)
++                s_format = QSettings::registerFormat(QStringLiteral("desktop"),
++                                                     DesktopFileFormat::readFunc, nullptr,
++                                                     Qt::CaseSensitive);
++
++            return s_format;
++        }
++    };
++
+     Session::Session()
+         : m_valid(false)
+         , m_type(UnknownSession)
+@@ -169,7 +219,7 @@ namespace SDDM {
+         if (!file.isOpen())
+             return;
+ 
+-        QSettings settings(m_fileName, QSettings::IniFormat);
++        QSettings settings(m_fileName, DesktopFileFormat::format());
+ #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+         settings.setIniCodec("UTF-8");
+ #endif

diff --git a/x11-misc/sddm/sddm-0.20.0.ebuild b/x11-misc/sddm/sddm-0.20.0.ebuild
new file mode 100644
index 000000000000..7d246cd0dea3
--- /dev/null
+++ b/x11-misc/sddm/sddm-0.20.0.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+if [[ ${PV} == *9999* ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
+else
+	SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+	KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+fi
+
+QTMIN=5.15.2
+inherit cmake linux-info optfeature systemd tmpfiles
+
+DESCRIPTION="Simple Desktop Display Manager"
+HOMEPAGE="https://github.com/sddm/sddm"
+
+LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
+SLOT="0"
+IUSE="+elogind systemd test"
+
+REQUIRED_USE="^^ ( elogind systemd )"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+	acct-group/sddm
+	acct-user/sddm
+	>=dev-qt/qtcore-${QTMIN}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtnetwork-${QTMIN}:5
+	sys-libs/pam
+	x11-libs/libXau
+	x11-libs/libxcb:=
+	elogind? ( sys-auth/elogind[pam] )
+	systemd? ( sys-apps/systemd:=[pam] )
+	!systemd? ( sys-power/upower )
+"
+DEPEND="${COMMON_DEPEND}
+	test? ( >=dev-qt/qttest-${QTMIN}:5 )
+"
+RDEPEND="${COMMON_DEPEND}
+	x11-base/xorg-server
+	!systemd? ( gui-libs/display-manager-init )
+"
+BDEPEND="
+	dev-python/docutils
+	>=dev-qt/linguist-tools-${QTMIN}:5
+	kde-frameworks/extra-cmake-modules:5
+	virtual/pkgconfig
+"
+
+PATCHES=(
+	# Downstream patches
+	"${FILESDIR}/${P}-respect-user-flags.patch"
+	"${FILESDIR}/${PN}-0.18.1-Xsession.patch" # bug 611210
+	"${FILESDIR}/${P}-sddm.pam-use-substack.patch" # bug 728550
+	"${FILESDIR}/${P}-disable-etc-debian-check.patch"
+	"${FILESDIR}/${P}-no-default-pam_systemd-module.patch" # bug 669980
+	"${FILESDIR}/${P}-fix-use-development-sessions.patch" # git master
+)
+
+pkg_setup() {
+	local CONFIG_CHECK="~DRM"
+	use kernel_linux && linux-info_pkg_setup
+}
+
+src_prepare() {
+	touch 01gentoo.conf || die
+
+cat <<-EOF >> 01gentoo.conf
+[General]
+# Remove qtvirtualkeyboard as InputMethod default
+InputMethod=
+EOF
+
+	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=(
+		-DBUILD_MAN_PAGES=ON
+		-DDBUS_CONFIG_FILENAME="org.freedesktop.sddm.conf"
+		-DRUNTIME_DIR=/run/sddm
+		-DSYSTEMD_TMPFILES_DIR="/usr/lib/tmpfiles.d"
+		-DNO_SYSTEMD=$(usex !systemd)
+		-DUSE_ELOGIND=$(usex elogind)
+	)
+	cmake_src_configure
+}
+
+src_install() {
+	cmake_src_install
+
+	insinto /etc/sddm.conf.d/
+	doins "${S}"/01gentoo.conf
+}
+
+pkg_postinst() {
+	tmpfiles_process "${PN}.conf"
+
+	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 "SDDM example config can be shown with:"
+	elog "  ${EROOT}/usr/bin/sddm --example-config"
+	elog "Use ${EROOT}/etc/sddm.conf.d/ directory to override specific options."
+	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
+
+	optfeature "Weston DisplayServer support (EXPERIMENTAL)" dev-libs/weston
+	optfeature "KWin DisplayServer support (EXPERIMENTAL)" kde-plasma/kwin
+
+	systemd_reenable sddm.service
+}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2023-09-02 18:01 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2023-09-02 18:01 UTC (permalink / raw
  To: gentoo-commits

commit:     94d5a070729123284b72092743d5316d3563b9f7
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Sep  2 17:00:55 2023 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Sep  2 18:01:00 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=94d5a070

x11-misc/sddm: Backport some post-0.20 fixes

- greeter: Look at WAYLAND_DISPLAY for platform detection
- Ignore InputMethod=qtvirtualkeyboard on wayland
- Install dbus policy in /usr/share, not /etc

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../files/sddm-0.20.0-dbus-policy-in-usr.patch     |  29 +++++
 .../sddm-0.20.0-greeter-platform-detection.patch   |  24 ++++
 ...dm-0.20.0-no-qtvirtualkeyboard-on-wayland.patch |  32 +++++
 x11-misc/sddm/sddm-0.20.0-r1.ebuild                | 136 +++++++++++++++++++++
 4 files changed, 221 insertions(+)

diff --git a/x11-misc/sddm/files/sddm-0.20.0-dbus-policy-in-usr.patch b/x11-misc/sddm/files/sddm-0.20.0-dbus-policy-in-usr.patch
new file mode 100644
index 000000000000..8926b8400430
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.20.0-dbus-policy-in-usr.patch
@@ -0,0 +1,29 @@
+From 0823810ed1683e6dcb7d687795764e11ddb6ff8a Mon Sep 17 00:00:00 2001
+From: Gioele Barabucci <gioele@svario.it>
+Date: Sun, 16 Jul 2023 11:51:08 +0200
+Subject: [PATCH] CMakeLists.txt: Install dbus policy in /usr/share, not /etc
+
+From https://bugs.debian.org/1006631:
+
+> dbus supports policy files in both `/usr/share/dbus-1/system.d` and
+> `/etc/dbus-1/systemd`. [The] recently released dbus 1.14.0, officially
+> deprecates installing packages' default policies into `/etc/dbus-1/systemd`,
+> instead reserving it for the sysadmin. This is the same idea as the
+> difference between `/usr/lib/udev/rules.d` and `/etc/udev/rules.d`.
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 72c4086bb..44956e52d 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -181,7 +181,7 @@ endif()
+ 
+ # Set constants
+ set(DATA_INSTALL_DIR            "${CMAKE_INSTALL_FULL_DATADIR}/sddm"                CACHE PATH      "System application data install directory")
+-set(DBUS_CONFIG_DIR             "${CMAKE_INSTALL_SYSCONFDIR}/dbus-1/system.d"       CACHE PATH      "DBus config files directory")
++set(DBUS_CONFIG_DIR             "${CMAKE_INSTALL_FULL_DATADIR}/dbus-1/system.d"       CACHE PATH      "DBus config files directory")
+ set(STATE_DIR                   "${CMAKE_INSTALL_FULL_LOCALSTATEDIR}/lib/sddm"      CACHE PATH      "State directory")
+ set(RUNTIME_DIR                 "${RUNTIME_DIR_DEFAULT}"                            CACHE PATH      "Runtime data storage directory")
+ set(QML_INSTALL_DIR             "${QT_IMPORTS_DIR}"                                 CACHE PATH      "QML component installation directory")

diff --git a/x11-misc/sddm/files/sddm-0.20.0-greeter-platform-detection.patch b/x11-misc/sddm/files/sddm-0.20.0-greeter-platform-detection.patch
new file mode 100644
index 000000000000..57d138875bea
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.20.0-greeter-platform-detection.patch
@@ -0,0 +1,24 @@
+From e27b70957505dc7b986ab2fa68219af546c63344 Mon Sep 17 00:00:00 2001
+From: Fabian Vogt <fabian@ritter-vogt.de>
+Date: Fri, 30 Jun 2023 09:42:58 +0200
+Subject: [PATCH] greeter: Look at WAYLAND_DISPLAY for platform detection
+
+When running sddm-greeter manually in a wayland session, it otherwise
+misdetects that as xcb.
+---
+ src/greeter/GreeterApp.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/greeter/GreeterApp.cpp b/src/greeter/GreeterApp.cpp
+index c2978d67e..4e4f65301 100644
+--- a/src/greeter/GreeterApp.cpp
++++ b/src/greeter/GreeterApp.cpp
+@@ -319,7 +319,7 @@ int main(int argc, char **argv)
+         platform = QString::fromUtf8(qgetenv("QT_QPA_PLATFORM"));
+     }
+     if (platform.isEmpty()) {
+-        platform = QStringLiteral("xcb");
++        platform = qEnvironmentVariableIsSet("WAYLAND_DISPLAY") ? QStringLiteral("wayland") : QStringLiteral("xcb");
+     }
+ 
+     // Install message handler

diff --git a/x11-misc/sddm/files/sddm-0.20.0-no-qtvirtualkeyboard-on-wayland.patch b/x11-misc/sddm/files/sddm-0.20.0-no-qtvirtualkeyboard-on-wayland.patch
new file mode 100644
index 000000000000..0081f3d4e8a3
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.20.0-no-qtvirtualkeyboard-on-wayland.patch
@@ -0,0 +1,32 @@
+From 07631f2ef00a52d883d0fd47ff7d1e1a6bc6358f Mon Sep 17 00:00:00 2001
+From: Fabian Vogt <fabian@ritter-vogt.de>
+Date: Fri, 30 Jun 2023 09:44:37 +0200
+Subject: [PATCH] Ignore InputMethod=qtvirtualkeyboard on wayland
+
+Using QT_IM_MODULE=qtvirtualkeyboard in wayland client applications is not
+supported by Qt, but is sddm's builtin default. Avoid setting that.
+---
+ src/greeter/GreeterApp.cpp | 10 ++++++++--
+ 1 file changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/src/greeter/GreeterApp.cpp b/src/greeter/GreeterApp.cpp
+index 4e4f65301..01613cc66 100644
+--- a/src/greeter/GreeterApp.cpp
++++ b/src/greeter/GreeterApp.cpp
+@@ -351,8 +351,14 @@ int main(int argc, char **argv)
+     qputenv("KDE_DEBUG", "1");
+ 
+     // Qt IM module
+-    if (!SDDM::mainConfig.InputMethod.get().isEmpty())
+-        qputenv("QT_IM_MODULE", SDDM::mainConfig.InputMethod.get().toLocal8Bit().constData());
++    QString inputMethod = SDDM::mainConfig.InputMethod.get();
++    // Using qtvirtualkeyboard as IM on wayland doesn't really work,
++    // it has to be done by the compositor instead.
++    if (platform.startsWith(QStringLiteral("wayland")) && inputMethod == QStringLiteral("qtvirtualkeyboard"))
++        inputMethod = QString{};
++
++    if (!inputMethod.isEmpty())
++        qputenv("QT_IM_MODULE", inputMethod.toLocal8Bit());
+ 
+     QGuiApplication app(argc, argv);
+     SDDM::SignalHandler s;

diff --git a/x11-misc/sddm/sddm-0.20.0-r1.ebuild b/x11-misc/sddm/sddm-0.20.0-r1.ebuild
new file mode 100644
index 000000000000..63babd63cc42
--- /dev/null
+++ b/x11-misc/sddm/sddm-0.20.0-r1.ebuild
@@ -0,0 +1,136 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+if [[ ${PV} == *9999* ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
+else
+	SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+	KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+fi
+
+QTMIN=5.15.2
+inherit cmake linux-info optfeature systemd tmpfiles
+
+DESCRIPTION="Simple Desktop Display Manager"
+HOMEPAGE="https://github.com/sddm/sddm"
+
+LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
+SLOT="0"
+IUSE="+elogind systemd test"
+
+REQUIRED_USE="^^ ( elogind systemd )"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+	acct-group/sddm
+	acct-user/sddm
+	>=dev-qt/qtcore-${QTMIN}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtnetwork-${QTMIN}:5
+	sys-libs/pam
+	x11-libs/libXau
+	x11-libs/libxcb:=
+	elogind? ( sys-auth/elogind[pam] )
+	systemd? ( sys-apps/systemd:=[pam] )
+	!systemd? ( sys-power/upower )
+"
+DEPEND="${COMMON_DEPEND}
+	test? ( >=dev-qt/qttest-${QTMIN}:5 )
+"
+RDEPEND="${COMMON_DEPEND}
+	x11-base/xorg-server
+	!systemd? ( gui-libs/display-manager-init )
+"
+BDEPEND="
+	dev-python/docutils
+	>=dev-qt/linguist-tools-${QTMIN}:5
+	kde-frameworks/extra-cmake-modules:5
+	virtual/pkgconfig
+"
+
+PATCHES=(
+	# Downstream patches
+	"${FILESDIR}/${P}-respect-user-flags.patch"
+	"${FILESDIR}/${PN}-0.18.1-Xsession.patch" # bug 611210
+	"${FILESDIR}/${P}-sddm.pam-use-substack.patch" # bug 728550
+	"${FILESDIR}/${P}-disable-etc-debian-check.patch"
+	"${FILESDIR}/${P}-no-default-pam_systemd-module.patch" # bug 669980
+	# git master
+	"${FILESDIR}/${P}-fix-use-development-sessions.patch"
+	"${FILESDIR}/${P}-greeter-platform-detection.patch"
+	"${FILESDIR}/${P}-no-qtvirtualkeyboard-on-wayland.patch"
+	"${FILESDIR}/${P}-dbus-policy-in-usr.patch"
+)
+
+pkg_setup() {
+	local CONFIG_CHECK="~DRM"
+	use kernel_linux && linux-info_pkg_setup
+}
+
+src_prepare() {
+	touch 01gentoo.conf || die
+
+cat <<-EOF >> 01gentoo.conf
+[General]
+# Remove qtvirtualkeyboard as InputMethod default
+InputMethod=
+EOF
+
+	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=(
+		-DBUILD_MAN_PAGES=ON
+		-DDBUS_CONFIG_FILENAME="org.freedesktop.sddm.conf"
+		-DRUNTIME_DIR=/run/sddm
+		-DSYSTEMD_TMPFILES_DIR="/usr/lib/tmpfiles.d"
+		-DNO_SYSTEMD=$(usex !systemd)
+		-DUSE_ELOGIND=$(usex elogind)
+	)
+	cmake_src_configure
+}
+
+src_install() {
+	cmake_src_install
+
+	insinto /etc/sddm.conf.d/
+	doins "${S}"/01gentoo.conf
+}
+
+pkg_postinst() {
+	tmpfiles_process "${PN}.conf"
+
+	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 "SDDM example config can be shown with:"
+	elog "  ${EROOT}/usr/bin/sddm --example-config"
+	elog "Use ${EROOT}/etc/sddm.conf.d/ directory to override specific options."
+	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
+
+	optfeature "Weston DisplayServer support (EXPERIMENTAL)" dev-libs/weston
+	optfeature "KWin DisplayServer support (EXPERIMENTAL)" kde-plasma/kwin
+
+	systemd_reenable sddm.service
+}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2024-02-27 12:11 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2024-02-27 12:11 UTC (permalink / raw
  To: gentoo-commits

commit:     24554604dd9e5e0810aefde471e33471a90c6e43
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 27 12:02:04 2024 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Feb 27 12:09:46 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=24554604

x11-misc/sddm: add 0.21.0

Not adding Qt6 option yet, as this is still WIP upstream.

Closes: https://bugs.gentoo.org/565862
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 x11-misc/sddm/Manifest                             |   1 +
 x11-misc/sddm/files/sddm-0.21.0-Xsession.patch     |  41 ++++++
 .../sddm-0.21.0-disable-etc-debian-check.patch     |  26 ++++
 ...sddm-0.21.0-no-default-pam_systemd-module.patch |  44 +++++++
 x11-misc/sddm/files/sddm.logrotate                 |   5 +
 x11-misc/sddm/sddm-0.21.0.ebuild                   | 138 +++++++++++++++++++++
 6 files changed, 255 insertions(+)

diff --git a/x11-misc/sddm/Manifest b/x11-misc/sddm/Manifest
index c952e48624cf..c5a2b8780fb4 100644
--- a/x11-misc/sddm/Manifest
+++ b/x11-misc/sddm/Manifest
@@ -1,2 +1,3 @@
 DIST sddm-0.18.1.tar.xz 3402972 BLAKE2B 99ab43d374e9a3d318f692a6d496d8a6d68927af3c8e8fc2208d7355ec90649a14758b39f5733dd32f942ed569de88085576d4f5f8666f4f97079e0fb6dcb99e SHA512 ff0637600cda2f4da1f643f047f8ee822bd9651ae4ccbb614b9804175c97360ada7af93e07a7b63832f014ef6e7d1b5380ab2b8959f8024ea520fa5ff17efd60
 DIST sddm-0.20.0.tar.gz 3552722 BLAKE2B 8086c9555d5ce1598db3279353de077d51adbcc5222a929750e8558a1bcdad395a411f90608bffdc6e1ca7e7ac2b8325e25cf04cbf8476698d787ce7e60c2105 SHA512 0f64b405f1451873a01a2210530feb6f4cbbdea17be9d039c105088963a48322968db7b60c0d20ac5d97c8ec2a19e5130f0a74c0f9de58c61453d8ce8bb6272a
+DIST sddm-0.21.0.tar.gz 3557266 BLAKE2B 849cb8b06b9510e5366ea28ef322c242db7d5a77d94c0a5a727f468209880a717055ad8b0c2f5a857852202a4d6bc1f68281fe0e0ab3c6a32327b5a4219af3a0 SHA512 2e8e460e7f318f20a406dcbb1a9fa1dc78b6a5b8d888bfbbaae22b9c642dbc49cf2ac682b4ea9ed847bbafa9bdc361ba08795e59cad970088b370caaaa70f458

diff --git a/x11-misc/sddm/files/sddm-0.21.0-Xsession.patch b/x11-misc/sddm/files/sddm-0.21.0-Xsession.patch
new file mode 100644
index 000000000000..0388ee894231
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.21.0-Xsession.patch
@@ -0,0 +1,41 @@
+From dac9752495d1467d11e30450989194177677f30a Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Sat, 21 Oct 2017 14:44:59 2017 +0200
+Subject: [PATCH 2/5] Xsession
+
+Thanks-to: Joakim Tjernlund <joakim.tjernlund@infinera.com>
+Bug: https://bugs.gentoo.org/611210
+
+---
+ data/scripts/Xsession | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/data/scripts/Xsession b/data/scripts/Xsession
+index a971d40..2d84a5a 100755
+--- a/data/scripts/Xsession
++++ b/data/scripts/Xsession
+@@ -39,6 +39,10 @@ case $SHELL in
+     ;;
+ esac
+ 
++# Make D-Bus start properly, see:
++# /etc/X11/xinit/xinitrc.d/80-dbus
++command="$@"
++
+ [ -f /etc/xprofile ] && . /etc/xprofile
+ [ -f /usr/local/etc/xprofile ] && . /usr/local/etc/xprofile
+ [ -f $HOME/.xprofile ] && . $HOME/.xprofile
+@@ -87,8 +91,8 @@ if [ -f "$USERXSESSION" ]; then
+   . "$USERXSESSION"
+ fi
+ 
+-if [ -z "$*" ]; then
++if [ -z "$command" ]; then
+     exec xmessage -center -buttons OK:0 -default OK "Sorry, $DESKTOP_SESSION is no valid session."
+ else
+-    exec $@
++    exec $command
+ fi
+-- 
+2.43.0
+

diff --git a/x11-misc/sddm/files/sddm-0.21.0-disable-etc-debian-check.patch b/x11-misc/sddm/files/sddm-0.21.0-disable-etc-debian-check.patch
new file mode 100644
index 000000000000..b0a13259991b
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.21.0-disable-etc-debian-check.patch
@@ -0,0 +1,26 @@
+From cef0ad9776d9349e85020b529d20dcc88113015a Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Tue, 13 Oct 2020 01:04:44 +0200
+Subject: [PATCH 4/5] Disable /etc/debian_version check
+
+Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
+---
+ services/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/services/CMakeLists.txt b/services/CMakeLists.txt
+index 5158e87..441e46a 100644
+--- a/services/CMakeLists.txt
++++ b/services/CMakeLists.txt
+@@ -20,7 +20,7 @@ endif()
+ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/sddm-greeter.pam.in" "${CMAKE_CURRENT_BINARY_DIR}/sddm-greeter.pam")
+ 
+ if(INSTALL_PAM_CONFIGURATION)
+-    if(EXISTS "/etc/debian_version")
++    if(0)
+         install(FILES debian.sddm-autologin.pam DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/pam.d RENAME sddm-autologin)
+         install(FILES debian.sddm-greeter.pam DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/pam.d RENAME sddm-greeter)
+         install(FILES debian.sddm.pam DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/pam.d RENAME sddm)
+-- 
+2.43.0
+

diff --git a/x11-misc/sddm/files/sddm-0.21.0-no-default-pam_systemd-module.patch b/x11-misc/sddm/files/sddm-0.21.0-no-default-pam_systemd-module.patch
new file mode 100644
index 000000000000..4a213d853d16
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.21.0-no-default-pam_systemd-module.patch
@@ -0,0 +1,44 @@
+From 6f618b6862d625796c13677ff265bae21b44e029 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Tue, 13 Oct 2020 01:10:00 +0200
+Subject: [PATCH 5/5] Don't add pam_systemd.so to pam.d/sddm-greeter in case of
+ NO_SYSTEMD
+
+---
+ services/CMakeLists.txt      | 7 +++++--
+ services/sddm-greeter.pam.in | 2 +-
+ 2 files changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/services/CMakeLists.txt b/services/CMakeLists.txt
+index 441e46a..8e70fb1 100644
+--- a/services/CMakeLists.txt
++++ b/services/CMakeLists.txt
+@@ -12,10 +12,13 @@ if(DEFINED SYSTEMD_TMPFILES_DIR)
+     install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sddm-tmpfiles.conf" DESTINATION "${SYSTEMD_TMPFILES_DIR}" RENAME sddm.conf)
+ endif()
+ 
++set(LOGIND_PAM_MODULE "session		optional")
+ if(USE_ELOGIND)
+-    set(LOGIND_PAM_MODULE "pam_elogind.so")
++    set(LOGIND_PAM_MODULE "${LOGIND_PAM_MODULE}	pam_elogind.so")
++elseif(NOT NO_SYSTEMD)
++    set(LOGIND_PAM_MODULE "${LOGIND_PAM_MODULE}	pam_systemd.so")
+ else()
+-    set(LOGIND_PAM_MODULE "pam_systemd.so")
++    set(LOGIND_PAM_MODULE "")
+ endif()
+ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/sddm-greeter.pam.in" "${CMAKE_CURRENT_BINARY_DIR}/sddm-greeter.pam")
+ 
+diff --git a/services/sddm-greeter.pam.in b/services/sddm-greeter.pam.in
+index d41792d..35dcfd5 100644
+--- a/services/sddm-greeter.pam.in
++++ b/services/sddm-greeter.pam.in
+@@ -14,4 +14,4 @@ password	required pam_deny.so
+ 
+ # Setup session
+ session		required pam_unix.so
+-session		optional @LOGIND_PAM_MODULE@
++@LOGIND_PAM_MODULE@
+-- 
+2.43.0
+

diff --git a/x11-misc/sddm/files/sddm.logrotate b/x11-misc/sddm/files/sddm.logrotate
new file mode 100644
index 000000000000..ba6199c416dc
--- /dev/null
+++ b/x11-misc/sddm/files/sddm.logrotate
@@ -0,0 +1,5 @@
+/var/log/sddm.log {
+	missingok
+	notifempty
+	copytruncate
+}

diff --git a/x11-misc/sddm/sddm-0.21.0.ebuild b/x11-misc/sddm/sddm-0.21.0.ebuild
new file mode 100644
index 000000000000..a81703972d7f
--- /dev/null
+++ b/x11-misc/sddm/sddm-0.21.0.ebuild
@@ -0,0 +1,138 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+if [[ ${PV} == *9999* ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
+else
+	SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+	KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+fi
+
+QTMIN=5.15.12
+inherit cmake linux-info optfeature systemd tmpfiles
+
+DESCRIPTION="Simple Desktop Display Manager"
+HOMEPAGE="https://github.com/sddm/sddm"
+
+LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
+SLOT="0"
+IUSE="+elogind systemd test"
+
+REQUIRED_USE="^^ ( elogind systemd )"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+	acct-group/sddm
+	acct-user/sddm
+	>=dev-qt/qtcore-${QTMIN}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtnetwork-${QTMIN}:5
+	sys-libs/pam
+	x11-libs/libXau
+	x11-libs/libxcb:=
+	elogind? ( sys-auth/elogind[pam] )
+	systemd? ( sys-apps/systemd:=[pam] )
+	!systemd? ( sys-power/upower )
+"
+DEPEND="${COMMON_DEPEND}
+	test? ( >=dev-qt/qttest-${QTMIN}:5 )
+"
+RDEPEND="${COMMON_DEPEND}
+	x11-base/xorg-server
+	!systemd? ( gui-libs/display-manager-init )
+"
+BDEPEND="
+	dev-python/docutils
+	>=dev-qt/linguist-tools-${QTMIN}:5
+	kde-frameworks/extra-cmake-modules:0
+	virtual/pkgconfig
+"
+
+PATCHES=(
+	# Downstream patches
+	"${FILESDIR}/${PN}-0.20.0-respect-user-flags.patch"
+	"${FILESDIR}/${P}-Xsession.patch" # bug 611210
+	"${FILESDIR}/${PN}-0.20.0-sddm.pam-use-substack.patch" # bug 728550
+	"${FILESDIR}/${P}-disable-etc-debian-check.patch"
+	"${FILESDIR}/${P}-no-default-pam_systemd-module.patch" # bug 669980
+)
+
+pkg_setup() {
+	local CONFIG_CHECK="~DRM"
+	use kernel_linux && linux-info_pkg_setup
+}
+
+src_prepare() {
+	touch 01gentoo.conf || die
+
+cat <<-EOF >> 01gentoo.conf
+[General]
+# Remove qtvirtualkeyboard as InputMethod default
+InputMethod=
+EOF
+
+	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=(
+		-DBUILD_MAN_PAGES=ON
+		-DBUILD_WITH_QT6=OFF # default theme  (and others) not yet compatible
+		-DDBUS_CONFIG_FILENAME="org.freedesktop.sddm.conf"
+		-DRUNTIME_DIR=/run/sddm
+		-DSYSTEMD_TMPFILES_DIR="/usr/lib/tmpfiles.d"
+		-DNO_SYSTEMD=$(usex !systemd)
+		-DUSE_ELOGIND=$(usex elogind)
+	)
+	cmake_src_configure
+}
+
+src_install() {
+	cmake_src_install
+
+	insinto /etc/sddm.conf.d/
+	doins "${S}"/01gentoo.conf
+
+	# with systemd logs are sent to journald, so no point to bother in that case
+	if ! use systemd; then
+		insinto /etc/logrotate.d
+		newins "${FILESDIR}/sddm.logrotate" sddm
+	fi
+}
+
+pkg_postinst() {
+	tmpfiles_process "${PN}.conf"
+
+	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 "SDDM example config can be shown with:"
+	elog "  ${EROOT}/usr/bin/sddm --example-config"
+	elog "Use ${EROOT}/etc/sddm.conf.d/ directory to override specific options."
+	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
+
+	optfeature "Weston DisplayServer support (EXPERIMENTAL)" dev-libs/weston
+	optfeature "KWin DisplayServer support (EXPERIMENTAL)" kde-plasma/kwin
+
+	systemd_reenable sddm.service
+}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2024-03-08 22:59 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2024-03-08 22:59 UTC (permalink / raw
  To: gentoo-commits

commit:     73163d56cdd1a916e9f6d3a06e97e97acf3b3087
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Mar  7 18:09:33 2024 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Fri Mar  8 22:59:26 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=73163d56

x11-misc/sddm: Ship our own pam files

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 x11-misc/sddm/Manifest                             |  1 +
 .../sddm-0.21.0-disable-etc-debian-check.patch     | 26 -------------
 ...sddm-0.21.0-no-default-pam_systemd-module.patch | 44 ----------------------
 x11-misc/sddm/sddm-0.21.0.ebuild                   | 24 +++++++++---
 4 files changed, 20 insertions(+), 75 deletions(-)

diff --git a/x11-misc/sddm/Manifest b/x11-misc/sddm/Manifest
index c5a2b8780fb4..57ed50b91404 100644
--- a/x11-misc/sddm/Manifest
+++ b/x11-misc/sddm/Manifest
@@ -1,3 +1,4 @@
 DIST sddm-0.18.1.tar.xz 3402972 BLAKE2B 99ab43d374e9a3d318f692a6d496d8a6d68927af3c8e8fc2208d7355ec90649a14758b39f5733dd32f942ed569de88085576d4f5f8666f4f97079e0fb6dcb99e SHA512 ff0637600cda2f4da1f643f047f8ee822bd9651ae4ccbb614b9804175c97360ada7af93e07a7b63832f014ef6e7d1b5380ab2b8959f8024ea520fa5ff17efd60
 DIST sddm-0.20.0.tar.gz 3552722 BLAKE2B 8086c9555d5ce1598db3279353de077d51adbcc5222a929750e8558a1bcdad395a411f90608bffdc6e1ca7e7ac2b8325e25cf04cbf8476698d787ce7e60c2105 SHA512 0f64b405f1451873a01a2210530feb6f4cbbdea17be9d039c105088963a48322968db7b60c0d20ac5d97c8ec2a19e5130f0a74c0f9de58c61453d8ce8bb6272a
 DIST sddm-0.21.0.tar.gz 3557266 BLAKE2B 849cb8b06b9510e5366ea28ef322c242db7d5a77d94c0a5a727f468209880a717055ad8b0c2f5a857852202a4d6bc1f68281fe0e0ab3c6a32327b5a4219af3a0 SHA512 2e8e460e7f318f20a406dcbb1a9fa1dc78b6a5b8d888bfbbaae22b9c642dbc49cf2ac682b4ea9ed847bbafa9bdc361ba08795e59cad970088b370caaaa70f458
+DIST sddm-0.21.0-pam.tar.xz 676 BLAKE2B 06a79f74a5833eca9877df4be8639311382d13061b21aa3627e6c4b07725878ded62221fca943440bacc143f6be2a23b2e0a2124012ff2c9fac82e1eded11144 SHA512 6d91eef2434346f7707122454522cf19f104994ac95d562417f6060a92b4e6c9792bebcccabac8290479200b4ba02fc4d92c6098c435c7ceda796d619d8913c2

diff --git a/x11-misc/sddm/files/sddm-0.21.0-disable-etc-debian-check.patch b/x11-misc/sddm/files/sddm-0.21.0-disable-etc-debian-check.patch
deleted file mode 100644
index b0a13259991b..000000000000
--- a/x11-misc/sddm/files/sddm-0.21.0-disable-etc-debian-check.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From cef0ad9776d9349e85020b529d20dcc88113015a Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <asturm@gentoo.org>
-Date: Tue, 13 Oct 2020 01:04:44 +0200
-Subject: [PATCH 4/5] Disable /etc/debian_version check
-
-Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
----
- services/CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/services/CMakeLists.txt b/services/CMakeLists.txt
-index 5158e87..441e46a 100644
---- a/services/CMakeLists.txt
-+++ b/services/CMakeLists.txt
-@@ -20,7 +20,7 @@ endif()
- configure_file("${CMAKE_CURRENT_SOURCE_DIR}/sddm-greeter.pam.in" "${CMAKE_CURRENT_BINARY_DIR}/sddm-greeter.pam")
- 
- if(INSTALL_PAM_CONFIGURATION)
--    if(EXISTS "/etc/debian_version")
-+    if(0)
-         install(FILES debian.sddm-autologin.pam DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/pam.d RENAME sddm-autologin)
-         install(FILES debian.sddm-greeter.pam DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/pam.d RENAME sddm-greeter)
-         install(FILES debian.sddm.pam DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/pam.d RENAME sddm)
--- 
-2.43.0
-

diff --git a/x11-misc/sddm/files/sddm-0.21.0-no-default-pam_systemd-module.patch b/x11-misc/sddm/files/sddm-0.21.0-no-default-pam_systemd-module.patch
deleted file mode 100644
index 4a213d853d16..000000000000
--- a/x11-misc/sddm/files/sddm-0.21.0-no-default-pam_systemd-module.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 6f618b6862d625796c13677ff265bae21b44e029 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <asturm@gentoo.org>
-Date: Tue, 13 Oct 2020 01:10:00 +0200
-Subject: [PATCH 5/5] Don't add pam_systemd.so to pam.d/sddm-greeter in case of
- NO_SYSTEMD
-
----
- services/CMakeLists.txt      | 7 +++++--
- services/sddm-greeter.pam.in | 2 +-
- 2 files changed, 6 insertions(+), 3 deletions(-)
-
-diff --git a/services/CMakeLists.txt b/services/CMakeLists.txt
-index 441e46a..8e70fb1 100644
---- a/services/CMakeLists.txt
-+++ b/services/CMakeLists.txt
-@@ -12,10 +12,13 @@ if(DEFINED SYSTEMD_TMPFILES_DIR)
-     install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sddm-tmpfiles.conf" DESTINATION "${SYSTEMD_TMPFILES_DIR}" RENAME sddm.conf)
- endif()
- 
-+set(LOGIND_PAM_MODULE "session		optional")
- if(USE_ELOGIND)
--    set(LOGIND_PAM_MODULE "pam_elogind.so")
-+    set(LOGIND_PAM_MODULE "${LOGIND_PAM_MODULE}	pam_elogind.so")
-+elseif(NOT NO_SYSTEMD)
-+    set(LOGIND_PAM_MODULE "${LOGIND_PAM_MODULE}	pam_systemd.so")
- else()
--    set(LOGIND_PAM_MODULE "pam_systemd.so")
-+    set(LOGIND_PAM_MODULE "")
- endif()
- configure_file("${CMAKE_CURRENT_SOURCE_DIR}/sddm-greeter.pam.in" "${CMAKE_CURRENT_BINARY_DIR}/sddm-greeter.pam")
- 
-diff --git a/services/sddm-greeter.pam.in b/services/sddm-greeter.pam.in
-index d41792d..35dcfd5 100644
---- a/services/sddm-greeter.pam.in
-+++ b/services/sddm-greeter.pam.in
-@@ -14,4 +14,4 @@ password	required pam_deny.so
- 
- # Setup session
- session		required pam_unix.so
--session		optional @LOGIND_PAM_MODULE@
-+@LOGIND_PAM_MODULE@
--- 
-2.43.0
-

diff --git a/x11-misc/sddm/sddm-0.21.0.ebuild b/x11-misc/sddm/sddm-0.21.0.ebuild
index a81703972d7f..6aeaf469501a 100644
--- a/x11-misc/sddm/sddm-0.21.0.ebuild
+++ b/x11-misc/sddm/sddm-0.21.0.ebuild
@@ -3,6 +3,7 @@
 
 EAPI=8
 
+PAM_TAR="${PN}-0.21.0-pam"
 if [[ ${PV} == *9999* ]]; then
 	inherit git-r3
 	EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
@@ -12,10 +13,11 @@ else
 fi
 
 QTMIN=5.15.12
-inherit cmake linux-info optfeature systemd tmpfiles
+inherit cmake linux-info optfeature pam systemd tmpfiles
 
 DESCRIPTION="Simple Desktop Display Manager"
 HOMEPAGE="https://github.com/sddm/sddm"
+SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${PAM_TAR}.tar.xz"
 
 LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
 SLOT="0"
@@ -57,9 +59,6 @@ PATCHES=(
 	# Downstream patches
 	"${FILESDIR}/${PN}-0.20.0-respect-user-flags.patch"
 	"${FILESDIR}/${P}-Xsession.patch" # bug 611210
-	"${FILESDIR}/${PN}-0.20.0-sddm.pam-use-substack.patch" # bug 728550
-	"${FILESDIR}/${P}-disable-etc-debian-check.patch"
-	"${FILESDIR}/${P}-no-default-pam_systemd-module.patch" # bug 669980
 )
 
 pkg_setup() {
@@ -67,6 +66,11 @@ pkg_setup() {
 	use kernel_linux && linux-info_pkg_setup
 }
 
+src_unpack() {
+	[[ ${PV} == *9999* ]] && git-r3_src_unpack
+	default
+}
+
 src_prepare() {
 	touch 01gentoo.conf || die
 
@@ -82,13 +86,19 @@ EOF
 		sed -e "/^find_package/s/ Test//" -i CMakeLists.txt || die
 		cmake_comment_add_subdirectory test
 	fi
+
+	if use systemd; then
+		sed -e "/pam_elogind.so/s/elogind/systemd/" \
+			-i "${WORKDIR}"/${PAM_TAR}/${PN}-greeter.pam || die
+	fi
 }
 
 src_configure() {
 	local mycmakeargs=(
 		-DBUILD_MAN_PAGES=ON
-		-DBUILD_WITH_QT6=OFF # default theme  (and others) not yet compatible
+		-DBUILD_WITH_QT6=OFF # default theme (and others) not yet compatible
 		-DDBUS_CONFIG_FILENAME="org.freedesktop.sddm.conf"
+		-DINSTALL_PAM_CONFIGURATION=OFF
 		-DRUNTIME_DIR=/run/sddm
 		-DSYSTEMD_TMPFILES_DIR="/usr/lib/tmpfiles.d"
 		-DNO_SYSTEMD=$(usex !systemd)
@@ -108,6 +118,10 @@ src_install() {
 		insinto /etc/logrotate.d
 		newins "${FILESDIR}/sddm.logrotate" sddm
 	fi
+
+	newpamd "${WORKDIR}"/${PAM_TAR}/${PN}.pam ${PN}
+	newpamd "${WORKDIR}"/${PAM_TAR}/${PN}-autologin.pam ${PN}-autologin
+	newpamd "${WORKDIR}"/${PAM_TAR}/${PN}-greeter.pam ${PN}-greeter
 }
 
 pkg_postinst() {


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2024-03-09  0:16 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2024-03-09  0:16 UTC (permalink / raw
  To: gentoo-commits

commit:     d625786b7adf82cd36e70094c219f794ead8e810
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Mar  9 00:08:49 2024 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Mar  9 00:11:34 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d625786b

x11-misc/sddm: move 0.20.0 patches into patchset tarball

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 x11-misc/sddm/Manifest                             |  1 +
 .../files/sddm-0.20.0-dbus-policy-in-usr.patch     | 29 --------
 .../sddm-0.20.0-disable-etc-debian-check.patch     | 26 -------
 .../sddm-0.20.0-fix-use-development-sessions.patch | 83 ----------------------
 .../sddm-0.20.0-greeter-platform-detection.patch   | 24 -------
 ...sddm-0.20.0-no-default-pam_systemd-module.patch | 43 -----------
 ...dm-0.20.0-no-qtvirtualkeyboard-on-wayland.patch | 32 ---------
 .../files/sddm-0.20.0-sddm.pam-use-substack.patch  | 37 ----------
 x11-misc/sddm/sddm-0.20.0-r1.ebuild                | 23 +++---
 9 files changed, 16 insertions(+), 282 deletions(-)

diff --git a/x11-misc/sddm/Manifest b/x11-misc/sddm/Manifest
index 1a53a302692c..62a7a158873c 100644
--- a/x11-misc/sddm/Manifest
+++ b/x11-misc/sddm/Manifest
@@ -1,5 +1,6 @@
 DIST sddm-0.18.1-patchset.tar.xz 7860 BLAKE2B b79738c58f19ebac24dd790ba7613d85ae78bc0c5161d35249e13ddbac3acefff2753b8d92fa47a73a607b3105310ea5d05e1a5a170068030fe28420ffee88b1 SHA512 30ca961f065188d570b1498f9eea5aeafb31ab53b7e9ce41e98e26cba12f8c16a245fffb25ea4d84c6fb9037a24523cd41acc9a8b140a1420282435c9497d9b4
 DIST sddm-0.18.1.tar.xz 3402972 BLAKE2B 99ab43d374e9a3d318f692a6d496d8a6d68927af3c8e8fc2208d7355ec90649a14758b39f5733dd32f942ed569de88085576d4f5f8666f4f97079e0fb6dcb99e SHA512 ff0637600cda2f4da1f643f047f8ee822bd9651ae4ccbb614b9804175c97360ada7af93e07a7b63832f014ef6e7d1b5380ab2b8959f8024ea520fa5ff17efd60
+DIST sddm-0.20.0-patchset.tar.xz 4024 BLAKE2B cb138568a158fb1070c3f4ed4182867973abef257e7b551a373a5d17adf19c15474cff27a3662de9fa674da218e9b04374802d0f1813569ce2966257903ac791 SHA512 fe07102ac4e41cc9e212f795405db8e4dac342c1dde2ec3b47002aaf251fc6a7641af4226f4729ef3325f070a77d6448602fffe7b5ff775b9dbfb57db9004d3c
 DIST sddm-0.20.0.tar.gz 3552722 BLAKE2B 8086c9555d5ce1598db3279353de077d51adbcc5222a929750e8558a1bcdad395a411f90608bffdc6e1ca7e7ac2b8325e25cf04cbf8476698d787ce7e60c2105 SHA512 0f64b405f1451873a01a2210530feb6f4cbbdea17be9d039c105088963a48322968db7b60c0d20ac5d97c8ec2a19e5130f0a74c0f9de58c61453d8ce8bb6272a
 DIST sddm-0.21.0-pam.tar.xz 676 BLAKE2B 06a79f74a5833eca9877df4be8639311382d13061b21aa3627e6c4b07725878ded62221fca943440bacc143f6be2a23b2e0a2124012ff2c9fac82e1eded11144 SHA512 6d91eef2434346f7707122454522cf19f104994ac95d562417f6060a92b4e6c9792bebcccabac8290479200b4ba02fc4d92c6098c435c7ceda796d619d8913c2
 DIST sddm-0.21.0.tar.gz 3557266 BLAKE2B 849cb8b06b9510e5366ea28ef322c242db7d5a77d94c0a5a727f468209880a717055ad8b0c2f5a857852202a4d6bc1f68281fe0e0ab3c6a32327b5a4219af3a0 SHA512 2e8e460e7f318f20a406dcbb1a9fa1dc78b6a5b8d888bfbbaae22b9c642dbc49cf2ac682b4ea9ed847bbafa9bdc361ba08795e59cad970088b370caaaa70f458

diff --git a/x11-misc/sddm/files/sddm-0.20.0-dbus-policy-in-usr.patch b/x11-misc/sddm/files/sddm-0.20.0-dbus-policy-in-usr.patch
deleted file mode 100644
index 8926b8400430..000000000000
--- a/x11-misc/sddm/files/sddm-0.20.0-dbus-policy-in-usr.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 0823810ed1683e6dcb7d687795764e11ddb6ff8a Mon Sep 17 00:00:00 2001
-From: Gioele Barabucci <gioele@svario.it>
-Date: Sun, 16 Jul 2023 11:51:08 +0200
-Subject: [PATCH] CMakeLists.txt: Install dbus policy in /usr/share, not /etc
-
-From https://bugs.debian.org/1006631:
-
-> dbus supports policy files in both `/usr/share/dbus-1/system.d` and
-> `/etc/dbus-1/systemd`. [The] recently released dbus 1.14.0, officially
-> deprecates installing packages' default policies into `/etc/dbus-1/systemd`,
-> instead reserving it for the sysadmin. This is the same idea as the
-> difference between `/usr/lib/udev/rules.d` and `/etc/udev/rules.d`.
----
- CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 72c4086bb..44956e52d 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -181,7 +181,7 @@ endif()
- 
- # Set constants
- set(DATA_INSTALL_DIR            "${CMAKE_INSTALL_FULL_DATADIR}/sddm"                CACHE PATH      "System application data install directory")
--set(DBUS_CONFIG_DIR             "${CMAKE_INSTALL_SYSCONFDIR}/dbus-1/system.d"       CACHE PATH      "DBus config files directory")
-+set(DBUS_CONFIG_DIR             "${CMAKE_INSTALL_FULL_DATADIR}/dbus-1/system.d"       CACHE PATH      "DBus config files directory")
- set(STATE_DIR                   "${CMAKE_INSTALL_FULL_LOCALSTATEDIR}/lib/sddm"      CACHE PATH      "State directory")
- set(RUNTIME_DIR                 "${RUNTIME_DIR_DEFAULT}"                            CACHE PATH      "Runtime data storage directory")
- set(QML_INSTALL_DIR             "${QT_IMPORTS_DIR}"                                 CACHE PATH      "QML component installation directory")

diff --git a/x11-misc/sddm/files/sddm-0.20.0-disable-etc-debian-check.patch b/x11-misc/sddm/files/sddm-0.20.0-disable-etc-debian-check.patch
deleted file mode 100644
index b851c852cc9b..000000000000
--- a/x11-misc/sddm/files/sddm-0.20.0-disable-etc-debian-check.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 20adb0eb3462e79ec76f93f2a622b99956145424 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <asturm@gentoo.org>
-Date: Tue, 13 Oct 2020 01:04:44 +0200
-Subject: [PATCH] Disable /etc/debian_version check
-
-Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
----
- services/CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/services/CMakeLists.txt b/services/CMakeLists.txt
-index 5032f33..afa5fd5 100644
---- a/services/CMakeLists.txt
-+++ b/services/CMakeLists.txt
-@@ -11,7 +11,7 @@ else()
- endif()
- configure_file("${CMAKE_CURRENT_SOURCE_DIR}/sddm-greeter.pam.in" "${CMAKE_CURRENT_BINARY_DIR}/sddm-greeter.pam")
- 
--if(EXISTS "/etc/debian_version")
-+if(0)
-     install(FILES debian.sddm-autologin.pam DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/pam.d RENAME sddm-autologin)
-     install(FILES debian.sddm-greeter.pam DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/pam.d RENAME sddm-greeter)
-     install(FILES debian.sddm.pam DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/pam.d RENAME sddm)
--- 
-2.39.1
-

diff --git a/x11-misc/sddm/files/sddm-0.20.0-fix-use-development-sessions.patch b/x11-misc/sddm/files/sddm-0.20.0-fix-use-development-sessions.patch
deleted file mode 100644
index 3213828181ca..000000000000
--- a/x11-misc/sddm/files/sddm-0.20.0-fix-use-development-sessions.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-From 5b702ae986464fe6dbc8557d4b2da725ac1ed175 Mon Sep 17 00:00:00 2001
-From: Fabian Vogt <fvogt@suse.de>
-Date: Mon, 26 Jun 2023 09:52:05 +0200
-Subject: [PATCH] Session: Parse .desktop files manually again
-
-Using QSettings::IniFormat doesn't quite work. Implement a custom parser
-for those files to handle them according to the specification.
-
-Fixes #1745
----
- src/common/Session.cpp | 52 +++++++++++++++++++++++++++++++++++++++++-
- 1 file changed, 51 insertions(+), 1 deletion(-)
-
-diff --git a/src/common/Session.cpp b/src/common/Session.cpp
-index 4bb2142ca..5eec64859 100644
---- a/src/common/Session.cpp
-+++ b/src/common/Session.cpp
-@@ -34,6 +34,56 @@
- const QString s_entryExtention = QStringLiteral(".desktop");
- 
- namespace SDDM {
-+    // QSettings::IniFormat can't be used to read .desktop files due to different
-+    // syntax of values (escape sequences, quoting, automatic QStringList detection).
-+    // So implement yet another .desktop file parser.
-+    class DesktopFileFormat {
-+        static bool readFunc(QIODevice &device, QSettings::SettingsMap &map)
-+        {
-+            QString currentSectionName;
-+            while(!device.atEnd())
-+            {
-+                // Iterate each line, remove line terminators
-+                const auto line = device.readLine().replace("\r", "").replace("\n", "");
-+                if(line.isEmpty() || line.startsWith('#'))
-+                    continue; // Ignore empty lines and comments
-+
-+                if(line.startsWith('[')) // Section header
-+                {
-+                    // Remove [ and ].
-+                    currentSectionName = QString::fromUtf8(line.mid(1, line.length() - 2));
-+                }
-+                else if(int equalsPos = line.indexOf('='); equalsPos > 0) // Key=Value
-+                {
-+                    const auto key = QString::fromUtf8(line.left(equalsPos));
-+
-+                    // Read the value, handle escape sequences
-+                    auto valueBytes = line.mid(equalsPos + 1);
-+                    valueBytes.replace("\\s", " ").replace("\\n", "\n");
-+                    valueBytes.replace("\\t", "\t").replace("\\r", "\r");
-+                    valueBytes.replace("\\\\", "\\");
-+
-+                    auto value = QString::fromUtf8(valueBytes);
-+                    map.insert(currentSectionName + QLatin1Char('/') + key, value);
-+                }
-+            }
-+
-+            return true;
-+        }
-+    public:
-+        // Register the .desktop file format if necessary, return its id.
-+        static QSettings::Format format()
-+        {
-+            static QSettings::Format s_format = QSettings::InvalidFormat;
-+            if (s_format == QSettings::InvalidFormat)
-+                s_format = QSettings::registerFormat(QStringLiteral("desktop"),
-+                                                     DesktopFileFormat::readFunc, nullptr,
-+                                                     Qt::CaseSensitive);
-+
-+            return s_format;
-+        }
-+    };
-+
-     Session::Session()
-         : m_valid(false)
-         , m_type(UnknownSession)
-@@ -169,7 +219,7 @@ namespace SDDM {
-         if (!file.isOpen())
-             return;
- 
--        QSettings settings(m_fileName, QSettings::IniFormat);
-+        QSettings settings(m_fileName, DesktopFileFormat::format());
- #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
-         settings.setIniCodec("UTF-8");
- #endif

diff --git a/x11-misc/sddm/files/sddm-0.20.0-greeter-platform-detection.patch b/x11-misc/sddm/files/sddm-0.20.0-greeter-platform-detection.patch
deleted file mode 100644
index 57d138875bea..000000000000
--- a/x11-misc/sddm/files/sddm-0.20.0-greeter-platform-detection.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From e27b70957505dc7b986ab2fa68219af546c63344 Mon Sep 17 00:00:00 2001
-From: Fabian Vogt <fabian@ritter-vogt.de>
-Date: Fri, 30 Jun 2023 09:42:58 +0200
-Subject: [PATCH] greeter: Look at WAYLAND_DISPLAY for platform detection
-
-When running sddm-greeter manually in a wayland session, it otherwise
-misdetects that as xcb.
----
- src/greeter/GreeterApp.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/greeter/GreeterApp.cpp b/src/greeter/GreeterApp.cpp
-index c2978d67e..4e4f65301 100644
---- a/src/greeter/GreeterApp.cpp
-+++ b/src/greeter/GreeterApp.cpp
-@@ -319,7 +319,7 @@ int main(int argc, char **argv)
-         platform = QString::fromUtf8(qgetenv("QT_QPA_PLATFORM"));
-     }
-     if (platform.isEmpty()) {
--        platform = QStringLiteral("xcb");
-+        platform = qEnvironmentVariableIsSet("WAYLAND_DISPLAY") ? QStringLiteral("wayland") : QStringLiteral("xcb");
-     }
- 
-     // Install message handler

diff --git a/x11-misc/sddm/files/sddm-0.20.0-no-default-pam_systemd-module.patch b/x11-misc/sddm/files/sddm-0.20.0-no-default-pam_systemd-module.patch
deleted file mode 100644
index 2ad739a86761..000000000000
--- a/x11-misc/sddm/files/sddm-0.20.0-no-default-pam_systemd-module.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 02a13d11dac72699e7580c538c152a7b5e0eb056 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <asturm@gentoo.org>
-Date: Tue, 13 Oct 2020 01:10:00 +0200
-Subject: Don't add pam_systemd.so to pam.d/sddm-greeter in case of NO_SYSTEMD
-
----
- services/CMakeLists.txt      | 7 +++++--
- services/sddm-greeter.pam.in | 2 +-
- 2 files changed, 6 insertions(+), 3 deletions(-)
-
-diff --git a/services/CMakeLists.txt b/services/CMakeLists.txt
-index 3d12eec..2ff13a8 100644
---- a/services/CMakeLists.txt
-+++ b/services/CMakeLists.txt
-@@ -4,10 +4,13 @@ if(SYSTEMD_FOUND)
-     install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sddm.service" DESTINATION "${SYSTEMD_SYSTEM_UNIT_DIR}")
- endif()
- 
-+set(LOGIND_PAM_MODULE "session		optional")
- if(USE_ELOGIND)
--    set(LOGIND_PAM_MODULE "pam_elogind.so")
-+    set(LOGIND_PAM_MODULE "${LOGIND_PAM_MODULE}	pam_elogind.so")
-+elseif(NOT NO_SYSTEMD)
-+    set(LOGIND_PAM_MODULE "${LOGIND_PAM_MODULE}	pam_systemd.so")
- else()
--    set(LOGIND_PAM_MODULE "pam_systemd.so")
-+    set(LOGIND_PAM_MODULE "")
- endif()
- configure_file("${CMAKE_CURRENT_SOURCE_DIR}/sddm-greeter.pam.in" "${CMAKE_CURRENT_BINARY_DIR}/sddm-greeter.pam")
- 
-diff --git a/services/sddm-greeter.pam.in b/services/sddm-greeter.pam.in
-index d41792d..35dcfd5 100644
---- a/services/sddm-greeter.pam.in
-+++ b/services/sddm-greeter.pam.in
-@@ -14,4 +14,4 @@ password	required pam_deny.so
- 
- # Setup session
- session		required pam_unix.so
--session		optional @LOGIND_PAM_MODULE@
-+@LOGIND_PAM_MODULE@
--- 
-2.35.1
-

diff --git a/x11-misc/sddm/files/sddm-0.20.0-no-qtvirtualkeyboard-on-wayland.patch b/x11-misc/sddm/files/sddm-0.20.0-no-qtvirtualkeyboard-on-wayland.patch
deleted file mode 100644
index 0081f3d4e8a3..000000000000
--- a/x11-misc/sddm/files/sddm-0.20.0-no-qtvirtualkeyboard-on-wayland.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 07631f2ef00a52d883d0fd47ff7d1e1a6bc6358f Mon Sep 17 00:00:00 2001
-From: Fabian Vogt <fabian@ritter-vogt.de>
-Date: Fri, 30 Jun 2023 09:44:37 +0200
-Subject: [PATCH] Ignore InputMethod=qtvirtualkeyboard on wayland
-
-Using QT_IM_MODULE=qtvirtualkeyboard in wayland client applications is not
-supported by Qt, but is sddm's builtin default. Avoid setting that.
----
- src/greeter/GreeterApp.cpp | 10 ++++++++--
- 1 file changed, 8 insertions(+), 2 deletions(-)
-
-diff --git a/src/greeter/GreeterApp.cpp b/src/greeter/GreeterApp.cpp
-index 4e4f65301..01613cc66 100644
---- a/src/greeter/GreeterApp.cpp
-+++ b/src/greeter/GreeterApp.cpp
-@@ -351,8 +351,14 @@ int main(int argc, char **argv)
-     qputenv("KDE_DEBUG", "1");
- 
-     // Qt IM module
--    if (!SDDM::mainConfig.InputMethod.get().isEmpty())
--        qputenv("QT_IM_MODULE", SDDM::mainConfig.InputMethod.get().toLocal8Bit().constData());
-+    QString inputMethod = SDDM::mainConfig.InputMethod.get();
-+    // Using qtvirtualkeyboard as IM on wayland doesn't really work,
-+    // it has to be done by the compositor instead.
-+    if (platform.startsWith(QStringLiteral("wayland")) && inputMethod == QStringLiteral("qtvirtualkeyboard"))
-+        inputMethod = QString{};
-+
-+    if (!inputMethod.isEmpty())
-+        qputenv("QT_IM_MODULE", inputMethod.toLocal8Bit());
- 
-     QGuiApplication app(argc, argv);
-     SDDM::SignalHandler s;

diff --git a/x11-misc/sddm/files/sddm-0.20.0-sddm.pam-use-substack.patch b/x11-misc/sddm/files/sddm-0.20.0-sddm.pam-use-substack.patch
deleted file mode 100644
index 6267adc7dda8..000000000000
--- a/x11-misc/sddm/files/sddm-0.20.0-sddm.pam-use-substack.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 9cbeb07664f4bd4273c2b62a522a864f6d4f27ae Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <asturm@gentoo.org>
-Date: Sat, 4 Feb 2023 13:31:36 +0100
-Subject: [PATCH] sddm.pam: Change to substack for system-login
-
-Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
----
- services/sddm.pam | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/services/sddm.pam b/services/sddm.pam
-index df11003..0a073f4 100644
---- a/services/sddm.pam
-+++ b/services/sddm.pam
-@@ -1,15 +1,15 @@
- #%PAM-1.0
- 
--auth        include     system-login
-+auth        substack    system-login
- -auth       optional    pam_gnome_keyring.so
- -auth       optional    pam_kwallet5.so
- 
--account     include     system-login
-+account     substack    system-login
- 
--password    include     system-login
-+password    substack    system-login
- -password   optional    pam_gnome_keyring.so    use_authtok
- 
- session     optional    pam_keyinit.so          force revoke
--session     include     system-login
-+session     substack    system-login
- -session    optional    pam_gnome_keyring.so    auto_start
- -session    optional    pam_kwallet5.so         auto_start
--- 
-2.39.1
-

diff --git a/x11-misc/sddm/sddm-0.20.0-r1.ebuild b/x11-misc/sddm/sddm-0.20.0-r1.ebuild
index 570aa9f84fdf..813a5d7bf9e0 100644
--- a/x11-misc/sddm/sddm-0.20.0-r1.ebuild
+++ b/x11-misc/sddm/sddm-0.20.0-r1.ebuild
@@ -1,8 +1,9 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
 
+PATCHSET="${P}-patchset"
 if [[ ${PV} == *9999* ]]; then
 	inherit git-r3
 	EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
@@ -16,6 +17,7 @@ inherit cmake linux-info optfeature systemd tmpfiles
 
 DESCRIPTION="Simple Desktop Display Manager"
 HOMEPAGE="https://github.com/sddm/sddm"
+SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${PATCHSET}.tar.xz"
 
 LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
 SLOT="0"
@@ -57,14 +59,14 @@ PATCHES=(
 	# Downstream patches
 	"${FILESDIR}/${P}-respect-user-flags.patch"
 	"${FILESDIR}/${PN}-0.18.1-Xsession.patch" # bug 611210
-	"${FILESDIR}/${P}-sddm.pam-use-substack.patch" # bug 728550
-	"${FILESDIR}/${P}-disable-etc-debian-check.patch"
-	"${FILESDIR}/${P}-no-default-pam_systemd-module.patch" # bug 669980
+	"${WORKDIR}/${PATCHSET}/${P}-sddm.pam-use-substack.patch" # bug 728550
+	"${WORKDIR}/${PATCHSET}/${P}-disable-etc-debian-check.patch"
+	"${WORKDIR}/${PATCHSET}/${P}-no-default-pam_systemd-module.patch" # bug 669980
 	# git master
-	"${FILESDIR}/${P}-fix-use-development-sessions.patch"
-	"${FILESDIR}/${P}-greeter-platform-detection.patch"
-	"${FILESDIR}/${P}-no-qtvirtualkeyboard-on-wayland.patch"
-	"${FILESDIR}/${P}-dbus-policy-in-usr.patch"
+	"${WORKDIR}/${PATCHSET}/${P}-fix-use-development-sessions.patch"
+	"${WORKDIR}/${PATCHSET}/${P}-greeter-platform-detection.patch"
+	"${WORKDIR}/${PATCHSET}/${P}-no-qtvirtualkeyboard-on-wayland.patch"
+	"${WORKDIR}/${PATCHSET}/${P}-dbus-policy-in-usr.patch"
 )
 
 pkg_setup() {
@@ -72,6 +74,11 @@ pkg_setup() {
 	use kernel_linux && linux-info_pkg_setup
 }
 
+src_unpack() {
+	[[ ${PV} == *9999* ]] && git-r3_src_unpack
+	default
+}
+
 src_prepare() {
 	touch 01gentoo.conf || die
 


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/
@ 2024-04-09 20:02 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2024-04-09 20:02 UTC (permalink / raw
  To: gentoo-commits

commit:     74fd8aa97757eb583822d3f4bb0ea9d8d03b4828
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Apr  9 19:48:01 2024 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Apr  9 20:01:49 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=74fd8aa9

x11-misc/sddm: drop 0.20.0-r1

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 x11-misc/sddm/Manifest                         |   2 -
 x11-misc/sddm/files/sddm-0.18.1-Xsession.patch |  24 -----
 x11-misc/sddm/sddm-0.20.0-r1.ebuild            | 143 -------------------------
 3 files changed, 169 deletions(-)

diff --git a/x11-misc/sddm/Manifest b/x11-misc/sddm/Manifest
index 62a7a158873c..8d6ee0946cd6 100644
--- a/x11-misc/sddm/Manifest
+++ b/x11-misc/sddm/Manifest
@@ -1,6 +1,4 @@
 DIST sddm-0.18.1-patchset.tar.xz 7860 BLAKE2B b79738c58f19ebac24dd790ba7613d85ae78bc0c5161d35249e13ddbac3acefff2753b8d92fa47a73a607b3105310ea5d05e1a5a170068030fe28420ffee88b1 SHA512 30ca961f065188d570b1498f9eea5aeafb31ab53b7e9ce41e98e26cba12f8c16a245fffb25ea4d84c6fb9037a24523cd41acc9a8b140a1420282435c9497d9b4
 DIST sddm-0.18.1.tar.xz 3402972 BLAKE2B 99ab43d374e9a3d318f692a6d496d8a6d68927af3c8e8fc2208d7355ec90649a14758b39f5733dd32f942ed569de88085576d4f5f8666f4f97079e0fb6dcb99e SHA512 ff0637600cda2f4da1f643f047f8ee822bd9651ae4ccbb614b9804175c97360ada7af93e07a7b63832f014ef6e7d1b5380ab2b8959f8024ea520fa5ff17efd60
-DIST sddm-0.20.0-patchset.tar.xz 4024 BLAKE2B cb138568a158fb1070c3f4ed4182867973abef257e7b551a373a5d17adf19c15474cff27a3662de9fa674da218e9b04374802d0f1813569ce2966257903ac791 SHA512 fe07102ac4e41cc9e212f795405db8e4dac342c1dde2ec3b47002aaf251fc6a7641af4226f4729ef3325f070a77d6448602fffe7b5ff775b9dbfb57db9004d3c
-DIST sddm-0.20.0.tar.gz 3552722 BLAKE2B 8086c9555d5ce1598db3279353de077d51adbcc5222a929750e8558a1bcdad395a411f90608bffdc6e1ca7e7ac2b8325e25cf04cbf8476698d787ce7e60c2105 SHA512 0f64b405f1451873a01a2210530feb6f4cbbdea17be9d039c105088963a48322968db7b60c0d20ac5d97c8ec2a19e5130f0a74c0f9de58c61453d8ce8bb6272a
 DIST sddm-0.21.0-pam.tar.xz 676 BLAKE2B 06a79f74a5833eca9877df4be8639311382d13061b21aa3627e6c4b07725878ded62221fca943440bacc143f6be2a23b2e0a2124012ff2c9fac82e1eded11144 SHA512 6d91eef2434346f7707122454522cf19f104994ac95d562417f6060a92b4e6c9792bebcccabac8290479200b4ba02fc4d92c6098c435c7ceda796d619d8913c2
 DIST sddm-0.21.0.tar.gz 3557266 BLAKE2B 849cb8b06b9510e5366ea28ef322c242db7d5a77d94c0a5a727f468209880a717055ad8b0c2f5a857852202a4d6bc1f68281fe0e0ab3c6a32327b5a4219af3a0 SHA512 2e8e460e7f318f20a406dcbb1a9fa1dc78b6a5b8d888bfbbaae22b9c642dbc49cf2ac682b4ea9ed847bbafa9bdc361ba08795e59cad970088b370caaaa70f458

diff --git a/x11-misc/sddm/files/sddm-0.18.1-Xsession.patch b/x11-misc/sddm/files/sddm-0.18.1-Xsession.patch
deleted file mode 100644
index e1e3c1527be7..000000000000
--- a/x11-misc/sddm/files/sddm-0.18.1-Xsession.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- a/data/scripts/Xsession
-+++ b/data/scripts/Xsession
-@@ -50,6 +50,10 @@
-     ;;
- esac
- 
-+# Make D-Bus start properly, see:
-+# /etc/X11/xinit/xinitrc.d/80-dbus
-+command="$@"
-+
- [ -f /etc/xprofile ] && . /etc/xprofile
- [ -f $HOME/.xprofile ] && . $HOME/.xprofile
- 
-@@ -94,8 +98,8 @@
-   . "$USERXSESSION"
- fi
- 
--if [ -z "$*" ]; then
-+if [ -z "$command" ]; then
-     exec xmessage -center -buttons OK:0 -default OK "Sorry, $DESKTOP_SESSION is no valid session."
- else
--    exec $@
-+    exec $command
- fi

diff --git a/x11-misc/sddm/sddm-0.20.0-r1.ebuild b/x11-misc/sddm/sddm-0.20.0-r1.ebuild
deleted file mode 100644
index 813a5d7bf9e0..000000000000
--- a/x11-misc/sddm/sddm-0.20.0-r1.ebuild
+++ /dev/null
@@ -1,143 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PATCHSET="${P}-patchset"
-if [[ ${PV} == *9999* ]]; then
-	inherit git-r3
-	EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
-else
-	SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-	KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86"
-fi
-
-QTMIN=5.15.2
-inherit cmake linux-info optfeature systemd tmpfiles
-
-DESCRIPTION="Simple Desktop Display Manager"
-HOMEPAGE="https://github.com/sddm/sddm"
-SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${PATCHSET}.tar.xz"
-
-LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
-SLOT="0"
-IUSE="+elogind systemd test"
-
-REQUIRED_USE="^^ ( elogind systemd )"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
-	acct-group/sddm
-	acct-user/sddm
-	>=dev-qt/qtcore-${QTMIN}:5
-	>=dev-qt/qtdbus-${QTMIN}:5
-	>=dev-qt/qtdeclarative-${QTMIN}:5
-	>=dev-qt/qtgui-${QTMIN}:5
-	>=dev-qt/qtnetwork-${QTMIN}:5
-	sys-libs/pam
-	x11-libs/libXau
-	x11-libs/libxcb:=
-	elogind? ( sys-auth/elogind[pam] )
-	systemd? ( sys-apps/systemd:=[pam] )
-	!systemd? ( sys-power/upower )
-"
-DEPEND="${COMMON_DEPEND}
-	test? ( >=dev-qt/qttest-${QTMIN}:5 )
-"
-RDEPEND="${COMMON_DEPEND}
-	x11-base/xorg-server
-	!systemd? ( gui-libs/display-manager-init )
-"
-BDEPEND="
-	dev-python/docutils
-	>=dev-qt/linguist-tools-${QTMIN}:5
-	kde-frameworks/extra-cmake-modules:0
-	virtual/pkgconfig
-"
-
-PATCHES=(
-	# Downstream patches
-	"${FILESDIR}/${P}-respect-user-flags.patch"
-	"${FILESDIR}/${PN}-0.18.1-Xsession.patch" # bug 611210
-	"${WORKDIR}/${PATCHSET}/${P}-sddm.pam-use-substack.patch" # bug 728550
-	"${WORKDIR}/${PATCHSET}/${P}-disable-etc-debian-check.patch"
-	"${WORKDIR}/${PATCHSET}/${P}-no-default-pam_systemd-module.patch" # bug 669980
-	# git master
-	"${WORKDIR}/${PATCHSET}/${P}-fix-use-development-sessions.patch"
-	"${WORKDIR}/${PATCHSET}/${P}-greeter-platform-detection.patch"
-	"${WORKDIR}/${PATCHSET}/${P}-no-qtvirtualkeyboard-on-wayland.patch"
-	"${WORKDIR}/${PATCHSET}/${P}-dbus-policy-in-usr.patch"
-)
-
-pkg_setup() {
-	local CONFIG_CHECK="~DRM"
-	use kernel_linux && linux-info_pkg_setup
-}
-
-src_unpack() {
-	[[ ${PV} == *9999* ]] && git-r3_src_unpack
-	default
-}
-
-src_prepare() {
-	touch 01gentoo.conf || die
-
-cat <<-EOF >> 01gentoo.conf
-[General]
-# Remove qtvirtualkeyboard as InputMethod default
-InputMethod=
-EOF
-
-	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=(
-		-DBUILD_MAN_PAGES=ON
-		-DDBUS_CONFIG_FILENAME="org.freedesktop.sddm.conf"
-		-DRUNTIME_DIR=/run/sddm
-		-DSYSTEMD_TMPFILES_DIR="/usr/lib/tmpfiles.d"
-		-DNO_SYSTEMD=$(usex !systemd)
-		-DUSE_ELOGIND=$(usex elogind)
-	)
-	cmake_src_configure
-}
-
-src_install() {
-	cmake_src_install
-
-	insinto /etc/sddm.conf.d/
-	doins "${S}"/01gentoo.conf
-}
-
-pkg_postinst() {
-	tmpfiles_process "${PN}.conf"
-
-	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 "SDDM example config can be shown with:"
-	elog "  ${EROOT}/usr/bin/sddm --example-config"
-	elog "Use ${EROOT}/etc/sddm.conf.d/ directory to override specific options."
-	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
-
-	optfeature "Weston DisplayServer support (EXPERIMENTAL)" dev-libs/weston
-	optfeature "KWin DisplayServer support (EXPERIMENTAL)" kde-plasma/kwin
-
-	systemd_reenable sddm.service
-}


^ permalink raw reply related	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2024-04-09 20:02 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-04-01 14:48 [gentoo-commits] repo/gentoo:master commit in: x11-misc/sddm/, x11-misc/sddm/files/ Andreas Sturmlechner
  -- strict thread matches above, loose matches on Subject: below --
2024-04-09 20:02 Andreas Sturmlechner
2024-03-09  0:16 Andreas Sturmlechner
2024-03-08 22:59 Andreas Sturmlechner
2024-02-27 12:11 Andreas Sturmlechner
2023-09-02 18:01 Andreas Sturmlechner
2023-06-27 11:25 Andreas Sturmlechner
2022-11-24 21:05 Andreas Sturmlechner
2022-04-02 12:38 Andreas Sturmlechner
2022-04-01 14:48 Andreas Sturmlechner
2022-04-01 14:48 Andreas Sturmlechner
2020-10-06 18:20 Mikle Kolyada
2020-06-20 15:42 Mikle Kolyada
2018-06-06 10:14 Andreas Sturmlechner
2018-05-27 21:34 Andreas Sturmlechner
2018-04-05 15:55 Andreas Sturmlechner
2017-10-21 19:45 Andreas Sturmlechner
2017-10-21 19:45 Andreas Sturmlechner
2017-10-14  4:26 Michael Palimaka
2017-09-02 15:07 Andreas Sturmlechner
2017-08-15  9:21 Lars Wendler
2016-01-30 13:07 Michael Palimaka
2015-09-09 21:18 Jauhien Piatlicki

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox