Fun with App Bundles

So it turns out a lot of the launch problems we were having were not, in fact, caused by fork (although the fork can still cause issues). To set up KDEDIRS and PATH and such, we had been making the app bundle contain a shell script that calls the binaries, but behind the scenes, the shell script was still calling, say, /opt/kde/bin/kcmshell. Qt, however, can only figure out where it's at if it's called from inside an app bundle.

The fix was to make a hidden directory containing app bundles of everything, even things that aren't necessarily GUI apps, and putting that first in the path. This lets Qt find itself, and it has the happy side-effect that I can put a property file inside the bundle that makes those apps not show up in the dock (yay!).

So I'm in the process of uploading new binaries right now. I'll probably end up not having everything ready for download until tomorrow, since I'm getting about 40k/s and it's nearly a gig and a half of data. =) From here on out, I suspect the only thing we'll have to work on for a while is kdelibs, most everything is pretty stable except for problems that can be fixed in everything by fixing up kdelibs (key accelerators, etc.).

[Update:] All of the binaries have been uploaded and the WebDAV installer may work again on panther, since all of the pre/postflight scripts are gone. Give it a shot, and let me know if things are any better. (Hmm, like the eye doctor. Better? Or worse? Better? Or worse?)

There's also a torrent available containing all of the dmg files, although I can't say how long it will stay up (since the files change so often, it'll be pointless pretty soon... =)

Share on Facebook

20 comments to Fun with App Bundles

  • aqsalter

    w00t!! 😉
    In a couple of months we’ve gone from nothing to having nearly the entire KDE app list available. A testament to Qt – and the work of a few dedicated volunteers.
    A small (??) step for Mackind, a million plus hits for Benjamin Reed!!

  • Sebastiaan van Stijn

    I’m very impressed with your work. I’ve had a look at various Linux distributions in the past, and ever since hoped to be able to use various kde-apps on my Mac OS X machine.
    I’m wondering: startup time of the kde-apps is very slow at the moment. Is this caused by qt? Will it be possible (in future.. no hurry! :)) to make them startup more quickly?
    If so… what will be nescessary to make them start quicker.. and.. can I be of any help? (I don’t think I have enough experience myself to be of any help, but, hey.. I can post some ‘help wanted’ adds here and there 🙂
    You can always contact me.. by email
    Keep up the good work!

  • Well, the first startup of any kde app will take longer than the subsequent startups of the rest, because of the need to launch some background stuff that applies to all KDE apps. Perhaps eventually when kdeinit stops freaking out (heh) we can have a process that starts them all upon login, so things run smoother.
    The new binaries do seem to start a lot faster though.
    They’re just finishing up uploading right now, I hope to have them live shortly.

  • Platy

    beautiful work! … many many praises, this is incredible.
    One quick question for those of us who installed previous versions, do we just install on top of that?
    Thanks again,

  • It should be perfectly safe to install over the old ones.

  • Brian Warren

    Alas for being on dialup. Pretty big commitment to download all the binaries again. Argh! On a lighter note – I applaud the development speed you guys are moving at – it’s amazing!

  • Olaf Föllinger

    Excellent work. Could you make the packages availabe via bittorrent ?
    Greetings Olaf

  • I’m working on it… hopefully I’ll have bittorrent bits up tonight.

  • Olaf Föllinger

    very fast reaction :))). If only other people would use it too…
    Greetings Olaf

  • WebDAV installer is well past the point it froze for me in the past, running 10.3.2, so it looks like it’s working now. Thanks!

  • Craig Sutherland

    WebDAV worked OK after some fiddling. I ended up installing the basic packages and then optional ones. Install kept failing during kOffice optimization.
    Interaction with keyboard and mouse much better than the Jan 14 binaries.
    Great stuff. Will start sending in bug reports

  • bug reports?

  • mark

    WebDAV install worked for me (didn’t last week)…I’m now working hard on convincing my wife that the blue square with the pen icon (kword) really does do everything ms word does. You porting gurus are great, keep it up.

  • Extraordinary achievement!!!!
    I was following your progress, and waited till now to install your port. 25/01/04 Wow! The webdav install worked flawlessly for the default stuff and koffice. I’m playing with Kword and Kivio, and I can’t find anything broken!!!!
    Thanks a lot.
    P.S. Any idea if and when this will run on 10.2 as well? I’m asking because I’m in charge of 4 computer labs in a High School. And we are using 10.2.8 at the moment on our eMacs and iMacs.

  • The binary install packages have been built on Jaguar for a few weeks now, they should run on 10.2, although I’ve not actually tried powering them up on my 10.2 machine.

  • all i can say is wow.
    this works great for something in such early development.
    i look forward to future builds 🙂

  • John

    OK, I have it (via bittorrent). Is there a particular order in which I install the files? Or can I simply install it all and plan for everything to work when I launch KDE?

  • Matt Marnell

    Where do we send in the bug reports? I’ve only hit a couple, but they’re pretty big.
    Other than that, I want to reiterate, great job. It is so nice having something that works and fulfills such a gaping hole.

  • Nowhere, we’re not prepared for bug reports yet, there’s too much that’s *known* to not work, and too many base things that need to be fixed before it’s reasonable to start working on fixing reported bugs.
    The binaries are provided no-strings-attached for the curious, we’re not ready to “support” them in any manner resembling official yet. 🙂
    Watch for an “alpha” announce of some kind, at that point perhaps it will be feasible.

  • Matt Marnell

    That’s cool. Better ‘an what I had before, which was nothing. Keep up the good work, and thanks again.