[KDE/Mac] kde4 on Tiger using macports

Jonas Bähr jonas.baehr at web.de
Thu Jan 8 00:07:33 CET 2009

Am 07.01.2009 um 22:37 schrieb Orville Bennett:
> On Jan 7, 2009, at 4:18 PM, Jonas Bähr wrote:
>> Am 07.01.2009 um 21:13 schrieb Jonas Bähr:
>>> Hi,
>>> Am 27.12.2008 um 06:05 schrieb O:
>>>> On Fri, Dec 26, 2008 at 11:33 PM, Jonathan Stickel
>>>> <jjstickel at vcn.com> wrote:
>>>>> On 12/26/08 kde-mac-request at kde.org wrote:
>>>>>> From: Jonas B?hr <jonas.baehr at web.de>
>>>>>> Subject: Re: [KDE/Mac] kde4 on Tiger using macports
>>>>>> Hi,
>>>>>> Am 23.12.2008 um 17:58 schrieb Jonathan Stickel:
>>>>>>>> I have (finally) built and installed kdebase4 using mapcorts on
>>>>>>>> Tiger
>>>>>>>> (10.4.11).  However, nothing runs correctly (if at all).
>>>>>>>> kwrite is
>>>>>>>> very
>>>>>>>> slow and ugly.  More importantly to me, dolphin will not start
>>>>>>>> at all.
>>>>>>>> I try to start it two ways, and I get
>>>>>>>> $ open -a dolphin
>>>>>>>> 2008-12-23 09:39:58.684 open[24306] Couldn't launch  
>>>>>>>> application:
>>>>>>>> (null)
>>>>>>>> $ /Applications/KDE4/dolphin.app/Contents/MacOS/dolphin
>>>>>>>> (...prompt returns with no message, and then...)
>>>>>>>> <unknown program name>(14342)/: KUniqueApplication: Cannot find
>>>>>>>> the
>>>>>>>> D-Bus session server
>>>>>>>> Not much for me to go with here.  I do have dbus-daemon  
>>>>>>>> running.
>>>>>>>> Any ideas?
>>>>>> I'm also fighting with dbus problems... I did not have simipar
>>>>>> problems with kdelibs-4.0.0
>>>>>> First, try to build dbus with the "no_x11" variant. (does anyone
>>>>>> know
>>>>>> *why* x11 is the default?) to prevent X11 from launching each
>>>>>> time you
>>>>>> start a KDE app.
>>>>>> Then, the mac_initialize_dbus function looks in the environment
>>>>>> for
>>>>>> DBUS_SESSION_BUS_ADDRESS. If this does not exists, it looks for
>>>>>> DBUS_LAUNCHD_SESSION_BUS_SOCKET in the current environment and if
>>>>>> this
>>>>>> fails too it looks in the environment of launchd (via launchctl's
>>>>>> gentenv). I don't know where the dbus-daemon should actually be
>>>>>> started (perhaps Benjamin could help here, he has written this
>>>>>> code).
>>>>>> However, you can start it manually and let it set the needed env-
>>>>>> vars
>>>>>> for you.
>>>>>> Try in the terminal:
>>>>>> $ eval `dbus-launch --auto-syntax`
>>>>>> $ /Applications/KDE4/dolphin.app/Contents/MacOS/dolphin
>>> I've got an update on this. I've written a little shell script which
>>> tests if DBUS_LAUNCHD_SESSION_BUS_SOCKET is set in launchd. If it's
>>> not the case, the session bus is started via dbus-launch. Then the
>>> socket path is extracted and stored in launchd. This way, every
>>> KDE-4 app will find the bus. To use it simply execute this script
>>> from your ~/.profile or launch it once per session manually before
>>> starting a KDE-4 app.
>>> In my eyes this is however a hack. I think it would be best to
>>> change kdelibs to store DBUS_SESSION_BUS_ADDRESS directly in launchd
>>> after starting dbus. I see if I can come up with a patch.
>>> The next step would be to extend dbus itself to store the bus
>>> address in launchd on Mac OS X instead of using X11 for that. This
>>> way non-kde-apps could also benefit from it, no special treatment in
>>> kdelibs would be required and autolaunch could work on a Mac too
>>> without X11...
>>> Anyone volunteers? ;-)
>> I just found this feature-request [1] in freedesktop's bugtracker. It
>> is a patch fot dbus adding support for launchd and it seems benjamin
>> wrote kde's dbus init code for mac around this patch.
>> So, to move things forward we don't need fixes for kdelibs, nor an
>> other extension to dbus but we need this patch incorporated in
>> macport's dbus...
>> [1] https://bugs.freedesktop.org/show_bug.cgi?id=14259
>> bye,
>> Jonas
> I'm proud to annouce that I am 10 steps ahead of you! ;-)

Well, in fact I'd prefer to cooperate rather then compete with you...

> see dbus-legacy port. it conflicts with normal dbus so deactivate that
> first.

The problem with this approach is that you can either install kde4,  
*or* any other app needing dbus. (appart from the fact that  
debus-1.2.4, suffers from the security issue CVE-2008-4311. I don't  
consider it sensitive for most setups though).

> I do need to port the kde portfiles over to it, but i'm waiting till
> the weekend to do all that (just moved, yada, yada).
> BUT if someone wants to volunteer...

Due to the conflict with the default dbus package I'll stick with my  
shell-script (for now). I'll try to put the patch in shape for the  
official dbus HEAD. If done right we can have a launchd enabled dbus  
per default in macports.

In the mean time dbus-legacy as dependency for kdelibs could be a  
workable solution. It also works around the x11 issue from https://trac.macports.org/ticket/16755 
Only the installation procedure becomes a bit tricky.... installing  
qt4-mac (which pulls dbus), then deactivate dbus, then install kdelibs  
(which pulls dbus-legacy)

perhaps you could rename it to dbus-launchd, to make the purpose a bit  
clearer... KDE does not depend on a legacy version of dbus but to a  
version which can deal with launchd (which is unfortunately not the  
latest, for now)


> :-D
> _______________________________________________
> kde-mac at kde.org
> List Information: https://mail.kde.org/mailman/listinfo/kde-mac
> KDE/Mac Information: http://techbase.kde.org/index.php?title=Projects/KDE_on_Mac_OS_X

More information about the kde-mac mailing list