James Duncan Davidson did come by Apple to repeat his talk from ApacheCon, and it was, as before, and excellent talk followed by some lively Q&A. It was great to have someone else with a similar perspective on open source come and share ideas. Them, of course, James had to tell us about what he lives about Mac OS X and what doesn't work for him, which was immediately followed by some of the authors of the offending software showing him that he can, indeed, do what we wants with our tools. So that went well, too. :)
I've spent a bunch of time recently trying to clean up some BSD compatibility issues in Darwin. Specifically, there are a few BSD-ish libraries which we install as frameworks.
For those of you that don't know a framework is a directory bundle which contains a library, it's headers, and any associated resources such as images and documentation. The cool thing about frameworks is that everything associated with it is in one place; it's all in this bundle which can easily be treaed as a single object. This has some nice advantages over installing in a typical BSD layout: you put the library in /usr/lib, the docs in /usr/share/man, the headers in /usr/include; if you have image or text resources, those go in /usr/share, and so on. The BSD system has advantgaes as well, but it's more geared at managing the operating system, rather than at managing components.
Anyway, the upshot is that we've been mangling libraries into frameworks because frameworks are what we prefer in Darwin, but of course then you end up needing to build clients in a slightly different way when building on Darwin, which creates an annoying portability problem. So the new plan for now is that new stuff should be frameworks, but let's not monkey around with BSD/Unix/POSIX style software so that porting code is easier. We can't rule the world all at once, after all.
So that works is all in CVS now. Affected projects include libSystem (!), zlib, tcl, and kerberos. I still need to do OpenSSL, when I return from vacation.
Speaking of which, I'll be taking off for vacation tonight until the start of MacWorld Expo SF. If you go to the expo, don't forget to swing by the Mac OS X booth and see what's up. In the meantime, happy holidays, all.