diff options
author | Johannes Huber <johu@gentoo.org> | 2016-12-23 17:24:02 +0100 |
---|---|---|
committer | Johannes Huber <johu@gentoo.org> | 2016-12-23 17:40:20 +0100 |
commit | caa941ea733d283d6c175a171de7e5987b3ba139 (patch) | |
tree | 72aff2cfa5d72217d28df4535263f376e9da8616 /x11-misc/sddm | |
parent | sys-apps/systemd: stable on ppc64, bug #568082 (diff) | |
download | gentoo-caa941ea733d283d6c175a171de7e5987b3ba139.tar.gz gentoo-caa941ea733d283d6c175a171de7e5987b3ba139.tar.bz2 gentoo-caa941ea733d283d6c175a171de7e5987b3ba139.zip |
x11-misc/sddm: Fix display user avatars
Revision bump backports upstream patch to fix displaying user avatars.
Acked-by: Michael Palimaka <kensington@gentoo.org>
Package-Manager: Portage-2.3.3, Repoman-2.3.1
Diffstat (limited to 'x11-misc/sddm')
-rw-r--r-- | x11-misc/sddm/files/sddm-0.14.0-avatars.patch | 33 | ||||
-rw-r--r-- | x11-misc/sddm/sddm-0.14.0-r2.ebuild | 85 |
2 files changed, 118 insertions, 0 deletions
diff --git a/x11-misc/sddm/files/sddm-0.14.0-avatars.patch b/x11-misc/sddm/files/sddm-0.14.0-avatars.patch new file mode 100644 index 000000000000..d40f68c10a2e --- /dev/null +++ b/x11-misc/sddm/files/sddm-0.14.0-avatars.patch @@ -0,0 +1,33 @@ +From ecb903e48822bd90650bdd64fe80754e3e9664cb Mon Sep 17 00:00:00 2001 +From: Bastian Beischer <bastian.beischer@gmail.com> +Date: Fri, 2 Sep 2016 13:05:18 +0200 +Subject: [PATCH] Fix display of user avatars. (#684) + +QFile::exists("...") does not understand file:// URLs, at least in Qt +5.7.0 and Qt 4.8.7. +--- + src/greeter/UserModel.cpp | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/src/greeter/UserModel.cpp b/src/greeter/UserModel.cpp +index 41a9f10..94c492d 100644 +--- a/src/greeter/UserModel.cpp ++++ b/src/greeter/UserModel.cpp +@@ -107,13 +107,13 @@ namespace SDDM { + d->lastIndex = i; + + if (avatarsEnabled) { +- const QString userFace = QStringLiteral("file://%1/.face.icon").arg(user->homeDir); +- const QString systemFace = QStringLiteral("file://%1/%2.face.icon").arg(facesDir).arg(user->name); ++ const QString userFace = QStringLiteral("%1/.face.icon").arg(user->homeDir); ++ const QString systemFace = QStringLiteral("%1/%2.face.icon").arg(facesDir).arg(user->name); + + if (QFile::exists(userFace)) +- user->icon = userFace; ++ user->icon = QStringLiteral("file://%1").arg(userFace); + else if (QFile::exists(systemFace)) +- user->icon = systemFace; ++ user->icon = QStringLiteral("file://%1").arg(systemFace); + } + } + } diff --git a/x11-misc/sddm/sddm-0.14.0-r2.ebuild b/x11-misc/sddm/sddm-0.14.0-r2.ebuild new file mode 100644 index 000000000000..8081ae6d2c90 --- /dev/null +++ b/x11-misc/sddm/sddm-0.14.0-r2.ebuild @@ -0,0 +1,85 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +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 ~x86" + +LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain" +SLOT="0" +IUSE="consolekit +pam 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 ) + 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" +) + +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') + -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 +} |