This page serves as a list of ideas where to start hacking in Darling.
- Better Mach system call implementation.
- Write more test programs to ensure that the libc and BSD APIs are covered well.
- Core Audio implementation. The most critical areas are the AudioToolbox and AudioUnit frameworks. The initial aim is to just have the sound working. It is not necessary to have a full implementation with all the magic it can do on OS X. mpg123 for OS X can be used for testing.
- Input device support in IOKit for “direct input” support in games.
- CoreVideo and OpenGL framework implementation to get OpenGL apps working.
- Extend the current CoreServices implementation. For example to cover more File Manager functionality etc.
- Anything else from the issue tracker…
Since the most painful area is still the Cocoa implementation (now provided by gnustep-gui), hackers are welcome to explore the following possibility:
- Implement AppKit from scratch on top of an existing Linux GUI framework (prefferably Qt 4/5) with OS X ABI compatibility as the foremost aim. Reuse other frameworks from GNUstep (especially gnustep-base).
- Integrate Qt into NSRunLoop via QAbstractEventDispatcher. QtMotifExtension serves as an example of how this can be achieved.
- Implement NSApplication.
- Analyze Core Animation to see how to fit it into Qt. MUST be done before the following.
- Implement the fundamental classes: NSEvent, NSView, NSWindow, NSCell, NSControl, …
- Implement NS* widget classes in Qt Quick and QML.
- Implement Carbon basics around Qt as well. Why? Because most “big” games for OS X still use Carbon.