From 4eb56e1b3a80c84f2dddf2692310369dc9cbd31a Mon Sep 17 00:00:00 2001 From: root Date: Sun, 14 Oct 2012 00:46:01 -0700 Subject: Sun Oct 14 00:45:38 PDT 2012 --- staging/kdebase-workspace/PKGBUILD | 59 ++++++++++++++--------- staging/kdebase-workspace/kde-np.pam | 19 ++++---- staging/kdebase-workspace/kde.pam | 15 +++--- staging/kdebase-workspace/kdm.logrotate | 6 +++ staging/kdebase-workspace/kdm.service | 2 +- staging/kdebase-workspace/logind-support.patch | 66 ++++++++++++++++++++++++++ 6 files changed, 127 insertions(+), 40 deletions(-) create mode 100644 staging/kdebase-workspace/kdm.logrotate create mode 100644 staging/kdebase-workspace/logind-support.patch (limited to 'staging/kdebase-workspace') diff --git a/staging/kdebase-workspace/PKGBUILD b/staging/kdebase-workspace/PKGBUILD index bab0e357a..6fde6ac6b 100644 --- a/staging/kdebase-workspace/PKGBUILD +++ b/staging/kdebase-workspace/PKGBUILD @@ -1,24 +1,24 @@ -# $Id: PKGBUILD 161959 2012-06-17 08:29:22Z andrea $ +# $Id: PKGBUILD 168620 2012-10-13 14:47:43Z andrea $ # Maintainer: Andrea Scarpino # Contributor: Pierre Schmitz pkgname=kdebase-workspace _pkgname=kde-workspace -pkgver=4.8.4 -pkgrel=2 -pkgdesc="KDE Base Workspace" +pkgver=4.9.2 +pkgrel=5 +pkgdesc="Provides the interface and basic tools for the KDE workspace" arch=('i686' 'x86_64') -url='http://www.kde.org' +url='https://projects.kde.org/projects/kde/kde-workspace' license=('GPL' 'LGPL' 'FDL') groups=('kde') # note on libxdamage: # not detected by namcap because libgl depends on it # but nvidia providing libgl does not depend on libxdamage depends=('kdepim-runtime' 'lm_sensors' 'libraw1394' 'libqalculate' - 'qimageblitz' 'polkit-kde' 'consolekit' 'xorg-xprop' 'libxdamage' + 'qimageblitz' 'polkit-kde' 'xorg-xprop' 'libxdamage' 'libxklavier' 'xorg-xsetroot' 'libxcomposite' 'libxinerama' - 'xorg-xrdb' 'libgles' 'libegl' 'kactivities' 'libxres' 'libxtst' - 'xorg-xrandr' 'xorg-xmessage' 'libusb-compat') + 'xorg-xrdb' 'libgles' 'libegl' 'libxres' 'xorg-xrandr' + 'xorg-xmessage' 'libusb-compat' 'kde-base-artwork') makedepends=('cmake' 'automoc4' 'boost' 'kdebindings-python2' 'networkmanager') optdepends=('kde-wallpapers: wallpapers for KDE Plasma Workspaces') install="${pkgname}.install" @@ -29,24 +29,37 @@ backup=('usr/share/config/kdm/kdmrc' 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') -sha1sums=('a732ceacf34dfb79c8ab243f17cd5a70b9183212' + 'fixpath.patch' 'terminate-server.patch' 'kdm-xinitrd.patch' + 'kdm.logrotate' + 'logind-support.patch') +sha1sums=('091bec159d85db2a9a6d6b1b43a53183c23de488' '5db3a245201bd4a50e65aa2ef583cf5490e4f646' - '712a90999bd429883dcef5dcaf288aace332ced8' - 'b321b5e613b60231330e606fdf1e124646148388' + '660eae40a707d2711d8d7f32a93214865506b795' + 'b7980f2e199963caf8e92b499042d244ece2fca0' '106635aa1aae51d6f0668b1853f6c49a4fe9d3d8' - '758203a76b58d62786a1013f6f8682e48844138a' + 'b6f8e8692737b11eec1f8022ce74b5b23e247b1b' 'd7b5883f7e65c6839b1f65f94d58026673dd0226' 'ac7bc292c865bc1ab8c02e6341aa7aeaf1a3eeee' - 'd509dac592bd8b310df27991b208c95b6d907514') + 'd509dac592bd8b310df27991b208c95b6d907514' + 'bbe55f2000217474ce7246f12ee437ceaaf7e9ae' + 'ccde71c42e19feaf40d3bd76e7396a0cb6df012f') build() { - cd "${srcdir}"/${_pkgname}-${pkgver} + cd ${_pkgname}-${pkgver} + + # FS#26120 patch -p1 -i "${srcdir}"/kdm-xinitrd.patch + patch -p0 -i "${srcdir}"/fixpath.patch + + # KDEBUG#202629 patch -p0 -i "${srcdir}"/terminate-server.patch - - cd "${srcdir}" + + # KDEBUG#307412 (fixed upstream) + patch -p1 -i "${srcdir}"/logind-support.patch + + cd ../ + mkdir build cd build cmake ../${_pkgname}-${pkgver} \ @@ -56,14 +69,13 @@ build() { -DWITH_Xmms=OFF \ -DWITH_Googlegadgets=OFF \ -DWITH_libgps=OFF \ - -DWITH_OpenGLES=ON \ - -DKWIN_BUILD_WITH_OPENGLES=ON \ - -DPYTHON_EXECUTABLE=/usr/bin/python2 + -DPYTHON_EXECUTABLE=/usr/bin/python2 \ + -DWITH_CkConnector=OFF make } package() { - cd "${srcdir}"/build + cd build make DESTDIR="${pkgdir}" install install -D -m644 "${srcdir}"/kde.pam "${pkgdir}"/etc/pam.d/kde @@ -76,7 +88,8 @@ package() { install -d -m755 "${pkgdir}"/etc/kde/{env,shutdown} install -d -g 135 -o 135 "${pkgdir}"/var/lib/kdm - install -D -m755 "${srcdir}"/kdm "${pkgdir}"/etc/rc.d/kdm - install -Dm644 "${srcdir}"/kdm.service \ + install -D -m755 "${srcdir}"/kdm "${pkgdir}"/etc/rc.d/kdm + install -D -m644 "${srcdir}"/kdm.service \ "${pkgdir}"/usr/lib/systemd/system/kdm.service + install -Dm644 "${srcdir}"/kdm.logrotate "${pkgdir}"/etc/logrotate.d/kdm } diff --git a/staging/kdebase-workspace/kde-np.pam b/staging/kdebase-workspace/kde-np.pam index 7d60cc35c..eccaa08f4 100644 --- a/staging/kdebase-workspace/kde-np.pam +++ b/staging/kdebase-workspace/kde-np.pam @@ -1,9 +1,12 @@ #%PAM-1.0 -auth required pam_nologin.so -auth required pam_permit.so -auth required pam_env.so -account required pam_unix.so -password required pam_unix.so -session required pam_unix.so -session required pam_limits.so --session optional pam_systemd.so +auth required pam_tally.so onerr=succeed file=/var/log/faillog +auth required pam_shells.so +auth requisite pam_nologin.so +auth required pam_env.so +auth optional pam_permit.s + +account include system-login + +password include system-login + +session include system-login diff --git a/staging/kdebase-workspace/kde.pam b/staging/kdebase-workspace/kde.pam index ec1d8277f..a0a29483d 100644 --- a/staging/kdebase-workspace/kde.pam +++ b/staging/kdebase-workspace/kde.pam @@ -1,9 +1,8 @@ #%PAM-1.0 -auth required pam_unix.so -auth required pam_nologin.so -auth required pam_env.so -account required pam_unix.so -password required pam_unix.so -session required pam_unix.so -session required pam_limits.so --session optional pam_systemd.so +auth include system-login + +account include system-login + +password include system-login + +session include system-login diff --git a/staging/kdebase-workspace/kdm.logrotate b/staging/kdebase-workspace/kdm.logrotate new file mode 100644 index 000000000..34331feae --- /dev/null +++ b/staging/kdebase-workspace/kdm.logrotate @@ -0,0 +1,6 @@ +/var/log/kdm.log { + maxage 365 + size=+1024k + notifempty + missingok +} diff --git a/staging/kdebase-workspace/kdm.service b/staging/kdebase-workspace/kdm.service index 15ff75ff2..c57aba920 100644 --- a/staging/kdebase-workspace/kdm.service +++ b/staging/kdebase-workspace/kdm.service @@ -6,4 +6,4 @@ After=systemd-user-sessions.service ExecStart=/usr/bin/kdm -nodaemon [Install] -WantedBy=graphical.target +Alias=display-manager.service diff --git a/staging/kdebase-workspace/logind-support.patch b/staging/kdebase-workspace/logind-support.patch new file mode 100644 index 000000000..9de205400 --- /dev/null +++ b/staging/kdebase-workspace/logind-support.patch @@ -0,0 +1,66 @@ +From: Lukas Tinkl +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 + #include + #include +-#include + + #include + #include +@@ -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 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 + + #include ++#include + + #include + +@@ -108,6 +109,7 @@ + QString m_activeSessionPath; + QWeakPointer< QDBusInterface > m_sdSessionInterface; + QWeakPointer< QDBusInterface > m_sdSeatInterface; ++ QDBusUnixFileDescriptor m_systemdInhibitFd; + + // ConsoleKit support + bool m_ckAvailable; + -- cgit v1.2.3-54-g00ecf