diff options
-rwxr-xr-x | kde/kdebase-workspace/Pkgfile | 25 | ||||
-rw-r--r-- | kde/kdebase-workspace/kde-np.pam | 7 | ||||
-rw-r--r-- | kde/kdebase-workspace/kde.pam | 7 | ||||
-rw-r--r-- | kde/kdebase-workspace/kdebase-workspace-4.6.0-fix-MALLOC_CHECK.patch | 23 | ||||
-rw-r--r-- | kde/kdebase-workspace/kdebase-workspace-4.6.0-fix-plasma-crash-on-exit.patch | 127 | ||||
-rw-r--r-- | kde/kdebase-workspace/kscreensaver.pam | 1 |
6 files changed, 185 insertions, 5 deletions
diff --git a/kde/kdebase-workspace/Pkgfile b/kde/kdebase-workspace/Pkgfile index 04ea44eb7..4e07a173f 100755 --- a/kde/kdebase-workspace/Pkgfile +++ b/kde/kdebase-workspace/Pkgfile @@ -2,22 +2,33 @@ # URL: http://www.kde.org # Maintainer: NuTyX packager team # Packager: lesibel at free dot fr -# Depends on: xorg-libxkbfile,kdebase-runtime, xorg-libxscrnsaver, xorg-libxtst, shared-mime-info, kdelibs, kdepimlibs, libvorbis, libogg, audiofile, alsa-utils, qimageblitz, lm_sensors, libxklavier, libcaptury, consolekit, networkmanager, libraw1394, docbook-xsl -# Run on: kdebase-runtime,xorg-libxscrnsaver,shared-mime-info,kdelibs,kdepimlibs,libvorbis,libogg,audiofile,alsa-utils,qimageblitz,lm_sensors,libxklavier,libcaptury,consolekit,networkmanager,libraw1394 +# Depends on: cmake, automoc4, boost, networkmanager, polkit-kde, qimageblitz, libraw1394, lm_sensors, xorg-libxkbfile, xorg-libxdamage, xorg-libxtst, kdepimlibs, gpsd, consolekit + +# Run on: kdepim-runtime, lm_sensors, libraw1394, qimageblitz, polkit-kde, consolekit, xorg-xprop, xorg-libxdamage, xorg-libxkbfile + name=kdebase-workspace version=4.6.0 -release=3 +release=5 source=(ftp://ftp.kde.org/pub/kde/stable/$version/src/$name-$version.tar.bz2 \ lxde.desktop ede.desktop Xsession.kde4 \ http://nutyx.meticul.eu/files/kdm-nutyx-attapu.1.tar.bz2 \ http://nutyx.meticul.eu/files/nutyx-attapu-ksplash.tar.gz \ - http://nutyx.meticul.eu/files/Attapu.tar.bz2 ) + http://nutyx.meticul.eu/files/Attapu.tar.bz2 \ + kdebase-workspace-4.6.0-fix-plasma-crash-on-exit.patch \ + kdebase-workspace-4.6.0-fix-MALLOC_CHECK.patch \ + kde.pam \ + kde-np.pam \ + kscreensaver.pam) build() { mkdir -v -p $PKG/etc/kde - cd $name-* + cd $name-* + + patch -Np0 -i $SRC/kdebase-workspace-4.6.0-fix-MALLOC_CHECK.patch + patch -Np1 -i $SRC/kdebase-workspace-4.6.0-fix-plasma-crash-on-exit.patch + mkdir build cd build cmake ../ -DCMAKE_INSTALL_PREFIX=/usr \ @@ -56,4 +67,8 @@ build() { # rm -r $PKG/usr/etc mkdir -p $PKG/var/lib/kdm chown -R kdm:kdm $PKG/var/lib/kdm + + install -D -m644 $SRC/kde.pam $PKG/etc/pam.d/kde + install -D -m644 $SRC/kde-np.pam $PKG/etc/pam.d/kde-np + install -D -m644 $SRC/kscreensaver.pam $PKG/etc/pam.d/kscreensaver } diff --git a/kde/kdebase-workspace/kde-np.pam b/kde/kdebase-workspace/kde-np.pam new file mode 100644 index 000000000..d59c4a0dc --- /dev/null +++ b/kde/kdebase-workspace/kde-np.pam @@ -0,0 +1,7 @@ +#%PAM-1.0 +auth required pam_nologin.so +auth required pam_permit.so +account required pam_unix.so +password required pam_unix.so +session required pam_unix.so +session required pam_limits.so diff --git a/kde/kdebase-workspace/kde.pam b/kde/kdebase-workspace/kde.pam new file mode 100644 index 000000000..b0f4fbec2 --- /dev/null +++ b/kde/kdebase-workspace/kde.pam @@ -0,0 +1,7 @@ +#%PAM-1.0 +auth required pam_unix.so +auth required pam_nologin.so +account required pam_unix.so +password required pam_unix.so +session required pam_unix.so +session required pam_limits.so diff --git a/kde/kdebase-workspace/kdebase-workspace-4.6.0-fix-MALLOC_CHECK.patch b/kde/kdebase-workspace/kdebase-workspace-4.6.0-fix-MALLOC_CHECK.patch new file mode 100644 index 000000000..a0448a8ba --- /dev/null +++ b/kde/kdebase-workspace/kdebase-workspace-4.6.0-fix-MALLOC_CHECK.patch @@ -0,0 +1,23 @@ +Index: startkde.cmake +=================================================================== +--- startkde.cmake (revision 1217283) ++++ startkde.cmake (revision 1217284) +@@ -36,18 +36,6 @@ + # we have to unset this for Darwin since it will screw up KDE's dynamic-loading + unset DYLD_FORCE_FLAT_NAMESPACE + +-# Enable lightweight memory corruption checker if not already set +-# -- this is for trunk only, we remove it for releases +-if [ "x$MALLOC_CHECK_" = "x" ] && [ -x /lib/libc.so.6 ]; then +- # Extract the first two components of the version from the output. +- glibc_version=$(LC_ALL=C /lib/libc.so.6 | sed -e 's/[^0-9]*\([0-9]\.[0-9]\+\).*/\1/;s/\.\([0-9]\)$/.0\1/;q') +- +- MALLOC_CHECK_=2 # Default to 2 unless glibc 2.9 or higher. +- test $glibc_version \> 2.08 && MALLOC_CHECK_=3 +- +- export MALLOC_CHECK_ +-fi +- + # in case we have been started with full pathname spec without being in PATH + bindir=`echo "$0" | sed -n 's,^\(/.*\)/[^/][^/]*$,\1,p'` + if [ -n "$bindir" ]; then diff --git a/kde/kdebase-workspace/kdebase-workspace-4.6.0-fix-plasma-crash-on-exit.patch b/kde/kdebase-workspace/kdebase-workspace-4.6.0-fix-plasma-crash-on-exit.patch new file mode 100644 index 000000000..41561858d --- /dev/null +++ b/kde/kdebase-workspace/kdebase-workspace-4.6.0-fix-plasma-crash-on-exit.patch @@ -0,0 +1,127 @@ +commit 92f71adb8bb6e46d4a3187ab8824c859312e9136 +Author: Aaron Seigo <aseigo@kde.org> +Date: Tue Feb 1 12:54:44 2011 -0800 + + try to avoid doing any work when we are deleting + +diff --git a/plasma/generic/applets/notifications/ui/notificationgroup.cpp b/plasma/generic/applets/notifications/ui/notificationgroup.cpp +index 1f7c0b8..6bbf43c 100644 +--- a/plasma/generic/applets/notifications/ui/notificationgroup.cpp ++++ b/plasma/generic/applets/notifications/ui/notificationgroup.cpp +@@ -66,6 +66,8 @@ NotificationGroup::NotificationGroup(Extender *parent, uint groupId) + + NotificationGroup::~NotificationGroup() + { ++ m_extenderItemsForNotification.clear(); ++ m_notificationForExtenderItems.clear(); + qDeleteAll(m_notifications); + } + +@@ -137,6 +139,11 @@ void NotificationGroup::addNotification(Notification *notification) + + void NotificationGroup::extenderItemDestroyed(Plasma::ExtenderItem *object) + { ++ if (m_extenderItemsForNotification.isEmpty()) { ++ // either we aren't tracking this notification or else we're being deleted ++ return; ++ } ++ + Notification *n = m_notificationForExtenderItems.value(object); + + if (n) { +@@ -148,10 +155,16 @@ void NotificationGroup::extenderItemDestroyed(Plasma::ExtenderItem *object) + + void NotificationGroup::removeNotification(Notification *notification) + { ++ if (m_extenderItemsForNotification.isEmpty()) { ++ // either we aren't tracking this notification or else we're being deleted ++ return; ++ } ++ + Plasma::ExtenderItem *item = m_extenderItemsForNotification.value(notification); + if (item) { + m_notificationForExtenderItems.remove(item); + } ++ + m_extenderItemsForNotification.remove(notification); + m_notifications.removeAll(notification); + QString applicationName = m_appForNotification.value(notification); +diff --git a/plasma/generic/applets/notifications/ui/notifications.cpp b/plasma/generic/applets/notifications/ui/notifications.cpp +index 9b1a7c0..c7aa6dd 100644 +--- a/plasma/generic/applets/notifications/ui/notifications.cpp ++++ b/plasma/generic/applets/notifications/ui/notifications.cpp +@@ -106,6 +106,9 @@ Notifications::~Notifications() + { + // stop listening to the manager + disconnect(m_manager, 0, this, 0); ++ if (m_notificationStackDialog) { ++ disconnect(m_notificationStackDialog, 0, this, 0); ++ } + + foreach (Notification *notification, m_manager->notifications()) { + // we don't want a destroyed managed after the destruction of manager +@@ -342,10 +345,10 @@ void Notifications::initExtenderItem(Plasma::ExtenderItem *extenderItem) + return; + } + +- if (extenderItem->config().readEntry("type", "") == "job") { ++ if (extenderItem->config().readEntry("type", QString()) == "job") { + extenderItem->setWidget(new JobWidget(0, extenderItem)); +- //unknown type, this should never happen + } else { ++ //unknown type, this should never happen + extenderItem->destroy(); + } + +commit 1fc6c46a49695ec6ad6cd80a8459c5c083de8e06 +Author: Aaron Seigo <aseigo@kde.org> +Date: Tue Feb 1 12:54:25 2011 -0800 + + make them all uniqueconnections + +diff --git a/plasma/generic/applets/notifications/ui/notificationstack.cpp b/plasma/generic/applets/notifications/ui/notificationstack.cpp +index 2f68961..3b53559 100644 +--- a/plasma/generic/applets/notifications/ui/notificationstack.cpp ++++ b/plasma/generic/applets/notifications/ui/notificationstack.cpp +@@ -54,11 +54,9 @@ NotificationStack::~NotificationStack() + void NotificationStack::addNotification(Notification *notification) + { + m_canDismissTimer->start(1000); +- connect(notification, SIGNAL(notificationDestroyed(Notification *)), this, SLOT(removeNotification(Notification *))); +- connect(notification, SIGNAL(expired(Notification *)), this, SLOT(delayedRemoveNotification(Notification *))); +- +- disconnect(notification, SIGNAL(changed(Notification *)), this, SLOT(notificationChanged(Notification *))); +- connect(notification, SIGNAL(changed(Notification *)), this, SLOT(notificationChanged(Notification *))); ++ connect(notification, SIGNAL(notificationDestroyed(Notification *)), this, SLOT(removeNotification(Notification *)), Qt::UniqueConnection); ++ connect(notification, SIGNAL(expired(Notification *)), this, SLOT(delayedRemoveNotification(Notification *)), Qt::UniqueConnection); ++ connect(notification, SIGNAL(changed(Notification *)), this, SLOT(notificationChanged(Notification *)), Qt::UniqueConnection); + + NotificationWidget *notificationWidget = new NotificationWidget(notification, this); + notificationWidget->installEventFilter(this); +commit f0f66f023e6f2896bcc2ea67d7922fc0745ff7b5 +Author: Aaron Seigo <aseigo@kde.org> +Date: Tue Feb 1 12:54:10 2011 -0800 + + simplification + +diff --git a/plasma/generic/applets/notifications/ui/notificationwidget.cpp b/plasma/generic/applets/notifications/ui/notificationwidget.cpp +index 7764ede..3f87cfe 100644 +--- a/plasma/generic/applets/notifications/ui/notificationwidget.cpp ++++ b/plasma/generic/applets/notifications/ui/notificationwidget.cpp +@@ -43,7 +43,6 @@ + + #include <Plasma/Animation> + #include <Plasma/Animator> +-#include <Plasma/Extender> + #include <Plasma/Frame> + #include <Plasma/IconWidget> + #include <Plasma/Label> +@@ -170,7 +169,7 @@ NotificationWidget::NotificationWidget(Notification *notification, QGraphicsWidg + d->notification = notification; + + connect(d->signalMapper, SIGNAL(mapped(const QString &)), +- d->notification.data(), SLOT(triggerAction(const QString &))); ++ notification, SLOT(triggerAction(const QString &))); + connect(notification, SIGNAL(changed()), + this, SLOT(updateNotification())); + connect(notification, SIGNAL(destroyed()), diff --git a/kde/kdebase-workspace/kscreensaver.pam b/kde/kdebase-workspace/kscreensaver.pam new file mode 100644 index 000000000..b4d80c21f --- /dev/null +++ b/kde/kdebase-workspace/kscreensaver.pam @@ -0,0 +1 @@ +auth required pam_unix_auth.so |