[arch-commits] Commit in kdebase-workspace/trunk (PKGBUILD logind-support.patch)
Andrea Scarpino
andrea at archlinux.org
Fri Oct 5 10:52:13 UTC 2012
Date: Friday, October 5, 2012 @ 06:52:12
Author: andrea
Revision: 168019
upgpkg: kdebase-workspace 4.9.2-2
Fix logind support
Added:
kdebase-workspace/trunk/logind-support.patch
Modified:
kdebase-workspace/trunk/PKGBUILD
----------------------+
PKGBUILD | 18 ++++++++-----
logind-support.patch | 66 +++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 78 insertions(+), 6 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2012-10-05 10:15:54 UTC (rev 168018)
+++ PKGBUILD 2012-10-05 10:52:12 UTC (rev 168019)
@@ -5,7 +5,7 @@
pkgname=kdebase-workspace
_pkgname=kde-workspace
pkgver=4.9.2
-pkgrel=1
+pkgrel=2
pkgdesc="Provides the interface and basic tools for the KDE workspace"
arch=('i686' 'x86_64')
url='https://projects.kde.org/projects/kde/kde-workspace'
@@ -29,7 +29,8 @@
options=('emptydirs')
source=("http://download.kde.org/stable/${pkgver}/src/${_pkgname}-${pkgver}.tar.xz"
'kdm' 'kde.pam' 'kde-np.pam' 'kscreensaver.pam' 'kdm.service'
- 'fixpath.patch' 'terminate-server.patch' 'kdm-xinitrd.patch')
+ 'fixpath.patch' 'terminate-server.patch' 'kdm-xinitrd.patch'
+ 'logind-support.patch')
sha1sums=('091bec159d85db2a9a6d6b1b43a53183c23de488'
'5db3a245201bd4a50e65aa2ef583cf5490e4f646'
'712a90999bd429883dcef5dcaf288aace332ced8'
@@ -38,15 +39,20 @@
'b6f8e8692737b11eec1f8022ce74b5b23e247b1b'
'd7b5883f7e65c6839b1f65f94d58026673dd0226'
'ac7bc292c865bc1ab8c02e6341aa7aeaf1a3eeee'
- 'd509dac592bd8b310df27991b208c95b6d907514')
+ 'd509dac592bd8b310df27991b208c95b6d907514'
+ 'ccde71c42e19feaf40d3bd76e7396a0cb6df012f')
build() {
- cd "${srcdir}"/${_pkgname}-${pkgver}
+ cd ${_pkgname}-${pkgver}
patch -p1 -i "${srcdir}"/kdm-xinitrd.patch
patch -p0 -i "${srcdir}"/fixpath.patch
patch -p0 -i "${srcdir}"/terminate-server.patch
- cd "${srcdir}"
+ # KDEBUG 307412
+ patch -p1 -i "${srcdir}"/logind-support.patch
+
+ cd ../
+
mkdir build
cd build
cmake ../${_pkgname}-${pkgver} \
@@ -61,7 +67,7 @@
}
package() {
- cd "${srcdir}"/build
+ cd build
make DESTDIR="${pkgdir}" install
install -D -m644 "${srcdir}"/kde.pam "${pkgdir}"/etc/pam.d/kde
Added: logind-support.patch
===================================================================
--- logind-support.patch (rev 0)
+++ logind-support.patch 2012-10-05 10:52:12 UTC (rev 168019)
@@ -0,0 +1,66 @@
+From: Lukas Tinkl <lukas at kde.org>
+Date: Fri, 05 Oct 2012 09:57:13 +0000
+Subject: store the filedescriptor in a member variable
+X-Git-Url: http://quickgit.kde.org/?p=kde-workspace.git&a=commitdiff&h=a18b78d7da8cb8d627ad2e85f666bfcf1a2721e1
+---
+store the filedescriptor in a member variable
+
+make systemd-inhibit work as intended, PowerDevil now handles
+power/sleep/lid buttons as intended
+
+BUG: 307412
+---
+
+
+--- a/powerdevil/daemon/powerdevilpolicyagent.cpp
++++ b/powerdevil/daemon/powerdevilpolicyagent.cpp
+@@ -29,7 +29,6 @@
+ #include <QtDBus/QDBusPendingReply>
+ #include <QtDBus/QDBusConnectionInterface>
+ #include <QtDBus/QDBusServiceWatcher>
+-#include <QtDBus/QDBusUnixFileDescriptor>
+
+ #include <KGlobal>
+ #include <KDebug>
+@@ -225,6 +224,9 @@
+ onActiveSessionChanged(m_activeSessionPath);
+
+ // inhibit systemd handling of power/sleep/lid buttons
++ // http://www.freedesktop.org/wiki/Software/systemd/inhibit
++ kDebug() << "fd passing available:" << bool(managerIface.connection().connectionCapabilities() & QDBusConnection::UnixFileDescriptorPassing);
++
+ QVariantList args;
+ args << "handle-power-key:handle-suspend-key:handle-hibernate-key:handle-lid-switch"; // what
+ args << "PowerDevil"; // who
+@@ -232,8 +234,9 @@
+ args << "block"; // mode
+ QDBusPendingReply<QDBusUnixFileDescriptor> desc = managerIface.asyncCallWithArgumentList("Inhibit", args);
+ desc.waitForFinished();
+- if (desc.isValid() && desc.value().isValid()) {
+- kDebug() << "systemd powersave events handling inhibited";
++ if (desc.isValid()) {
++ m_systemdInhibitFd = desc.value();
++ kDebug() << "systemd powersave events handling inhibited, descriptor:" << m_systemdInhibitFd.fileDescriptor();
+ }
+ else
+ kWarning() << "failed to inhibit systemd powersave handling";
+
+--- a/powerdevil/daemon/powerdevilpolicyagent.h
++++ b/powerdevil/daemon/powerdevilpolicyagent.h
+@@ -27,6 +27,7 @@
+ #include <QtCore/QWeakPointer>
+
+ #include <QtDBus/QDBusContext>
++#include <QtDBus/QDBusUnixFileDescriptor>
+
+ #include <kdemacros.h>
+
+@@ -108,6 +109,7 @@
+ QString m_activeSessionPath;
+ QWeakPointer< QDBusInterface > m_sdSessionInterface;
+ QWeakPointer< QDBusInterface > m_sdSeatInterface;
++ QDBusUnixFileDescriptor m_systemdInhibitFd;
+
+ // ConsoleKit support
+ bool m_ckAvailable;
+
More information about the arch-commits
mailing list