summaryrefslogtreecommitdiff
path: root/x11-misc/sddm
diff options
context:
space:
mode:
Diffstat (limited to 'x11-misc/sddm')
-rw-r--r--x11-misc/sddm/Manifest1
-rw-r--r--x11-misc/sddm/files/sddm-0.10.0-consolekit.patch13
-rw-r--r--x11-misc/sddm/files/sddm-0.10.0-upower.patch12
-rw-r--r--x11-misc/sddm/files/sddm-0.11.0-consolekit.patch11
-rw-r--r--x11-misc/sddm/files/sddm-0.11.0-dbus-config.patch46
-rw-r--r--x11-misc/sddm/files/systemd_service.patch20
-rw-r--r--x11-misc/sddm/sddm-0.11.0-r1.ebuild78
7 files changed, 181 insertions, 0 deletions
diff --git a/x11-misc/sddm/Manifest b/x11-misc/sddm/Manifest
new file mode 100644
index 00000000..ffdf15a4
--- /dev/null
+++ b/x11-misc/sddm/Manifest
@@ -0,0 +1 @@
+DIST sddm-0.11.0.tar.gz 4735807 SHA256 80d53f075c275f744bd547523d6d640baccfacb4e463a71ec0facb8231b832ce SHA512 9dd2b80788e3cfdb353e64f709db451e04828991976b8b0f74c0e97dbf467fa2744702c73e5e50137eec10dac92df7dacd83fb458f75dd595556fc95fb1759f7 WHIRLPOOL 079c5093374710c2a3247a3e27dd26f3d10962c7cb8f260b80a4ba17a72e63676012d4b8e50f8f4bffc43124efdf05c7e14aefe86253b391345c7fa98a2d4c2f
diff --git a/x11-misc/sddm/files/sddm-0.10.0-consolekit.patch b/x11-misc/sddm/files/sddm-0.10.0-consolekit.patch
new file mode 100644
index 00000000..acdfdc1a
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.10.0-consolekit.patch
@@ -0,0 +1,13 @@
+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.10.0-upower.patch b/x11-misc/sddm/files/sddm-0.10.0-upower.patch
new file mode 100644
index 00000000..8c0f34c2
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.10.0-upower.patch
@@ -0,0 +1,12 @@
+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-consolekit.patch b/x11-misc/sddm/files/sddm-0.11.0-consolekit.patch
new file mode 100644
index 00000000..4871bee0
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.11.0-consolekit.patch
@@ -0,0 +1,11 @@
+--- data/scripts/Xsession.old 2015-01-08 12:58:24.448241484 +0100
++++ 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/files/sddm-0.11.0-dbus-config.patch b/x11-misc/sddm/files/sddm-0.11.0-dbus-config.patch
new file mode 100644
index 00000000..c13c2bd7
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.11.0-dbus-config.patch
@@ -0,0 +1,46 @@
+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/files/systemd_service.patch b/x11-misc/sddm/files/systemd_service.patch
new file mode 100644
index 00000000..7fc9e3f5
--- /dev/null
+++ b/x11-misc/sddm/files/systemd_service.patch
@@ -0,0 +1,20 @@
+mudler <mudler@sabayonlinux.org>
+--- services/~sddm.service.in 2015-08-31 16:11:52.267460238 +0200
++++ services/sddm.service.in 2015-08-31 16:12:22.497417043 +0200
+@@ -1,13 +1,14 @@
+ [Unit]
+ 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
+
+ [Service]
+ ExecStart=@CMAKE_INSTALL_FULL_BINDIR@/sddm
+ Restart=always
+ #PrivateTmp=yes
++StandardOutput=syslog
++BusName=org.freedesktop.DisplayManager
+
+ [Install]
+ Alias=display-manager.service
diff --git a/x11-misc/sddm/sddm-0.11.0-r1.ebuild b/x11-misc/sddm/sddm-0.11.0-r1.ebuild
new file mode 100644
index 00000000..77bba60b
--- /dev/null
+++ b/x11-misc/sddm/sddm-0.11.0-r1.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-misc/sddm/sddm-0.11.0-r1.ebuild,v 1.1 2015/06/28 13:52:08 jauhien Exp $
+
+EAPI=5
+inherit cmake-utils toolchain-funcs user
+
+DESCRIPTION="Simple Desktop Display Manager"
+HOMEPAGE="https://github.com/sddm/sddm"
+SRC_URI="http://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="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/linguist-tools:5
+ dev-qt/qttest:5
+ systemd? ( sys-apps/systemd:= )
+ upower? ( || ( 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 ]] && \
+ die 'The active compiler needs to be gcc 4.7 (or newer)'
+ fi
+}
+
+src_prepare() {
+ use consolekit && epatch "${FILESDIR}/${P}-consolekit.patch"
+ use upower && epatch "${FILESDIR}/${PN}-0.10.0-upower.patch"
+
+ # Sabayon, fixes autologin due to kogaion-live
+ use systemd && epatch "${FILESDIR}/systemd_service.patch"
+
+ # fix bug 552318
+ epatch "${FILESDIR}/${P}-dbus-config.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_setup() {
+ enewgroup ${PN}
+ enewuser ${PN} -1 -1 /var/lib/sddm ${PN}
+}