Opened 11 years ago

Closed 11 years ago

#36552 closed enhancement (fixed)

kdelibs4: Automatic refreshment of kde cache

Reported by: NicosPavlov Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 2.1.2
Keywords: haspatch Cc: sharky@…, michaelld (Michael Dickens), mkae (Marko Käning)
Port: kdelibs4

Description

Several KDE apps require the user to run the kbuildsycoca4 command to refresh the kde cache, and enable communication between plugins. As this command has to be run at user level, it is not possible to integrate it directly in Portfiles. An alternative is proposed here through a launchd job, which monitors changes in ${prefix}/bin and ${applications_dir} to run the command when changes have occurred in the executables and binaries provided by Macports.

The files consist in the .plist file describing the agent, and a diff to the kdelibs4 portfile which provides the kbuildsycoca4 command.

Attachments (2)

org.macports.kdecache.plist (674 bytes) - added by NicosPavlov 11 years ago.
Launchd job
patch-Portfile.diff (2.5 KB) - added by NicosPavlov 11 years ago.
Patch to kdelibs4 portfile with no_root variant

Download all attachments as: .zip

Change History (7)

comment:1 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)

Summary: Automatic refreshment of kde cachekdelibs4: Automatic refreshment of kde cache

comment:2 Changed 11 years ago by mkae (Marko Käning)

Cc: mk@… added

Cc Me!

comment:3 Changed 11 years ago by mkae (Marko Käning)

What happens with the post-activate phase on non-root-MacPorts installations?

Changed 11 years ago by NicosPavlov

Attachment: org.macports.kdecache.plist added

Launchd job

Changed 11 years ago by NicosPavlov

Attachment: patch-Portfile.diff added

Patch to kdelibs4 portfile with no_root variant

comment:4 Changed 11 years ago by NicosPavlov

I added a no_root variant for non-root installations, directly inspired from what is done for the agent in the port dbus. I also changed the path to monitor in the agent to be the KDE4 application directory, instead of the macports one.

comment:5 Changed 11 years ago by NicosPavlov

Resolution: fixed
Status: newclosed

Maintainer timeout, committed in r99050.

Note: See TracTickets for help on using tickets.