On Monday, July 25, 2011 17:34:05 Matthias Fuchs wrote:
> plasmapkg -t comic -u %f && kbuildsycoca4

that could well be a reasonable short term solution.

another would be to patch Package::installPackage to call recreate() via dbus 
when a package is installed.

does the attached patch to libplasma fix it for you?

-- 
Aaron J. Seigo
humru othro a kohnu se
GPG Fingerprint: 8B8B 2209 0C6F 7C47 B1EA  EE75 D6B7 2EB1 A7F1 DB43

KDE core developer sponsored by Qt Development Frameworks
diff --git a/plasma/package.cpp b/plasma/package.cpp
index 4c00d36..be6afd0 100644
--- a/plasma/package.cpp
+++ b/plasma/package.cpp
@@ -21,6 +21,8 @@
 #include "package.h"
 #include "config-plasma.h"
 
+#include <QDBusInterface>
+#include <QDBusPendingCall>
 #include <QDir>
 #include <QFile>
 #include <QRegExp>
@@ -642,6 +644,8 @@ bool Package::installPackage(const QString &package,
         }
     }
 
+    QDBusInterface sycoca("org.kde.kded", "/kbuildsycoca");
+    sycoca.asyncCall("recreate");
     return true;
 }
 
@@ -681,6 +685,8 @@ bool Package::uninstallPackage(const QString &pluginName,
         return false;
     }
 
+    QDBusInterface sycoca("org.kde.kded", "/kbuildsycoca");
+    sycoca.asyncCall("recreate");
     return true;
 }
 
@@ -718,6 +724,8 @@ bool Package::registerPackage(const PackageMetadata &data, const QString &iconPa
 #endif
     }
 
+    QDBusInterface sycoca("org.kde.kded", "/kbuildsycoca");
+    sycoca.asyncCall("recreate");
     return true;
 }
 

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel

Reply via email to