Dumping Aqua On Mac OS X For X11?
Sagefire asks: "Aqua is a beautiful interface but it can be incredibly resource intensive (especially for older/low-end machines). And, though the open source community has made great strides in reverse engineering proprietary drivers from Mac OS X, I would love to be able to simply keep using the drivers that came with it, for now. Since there is a fully functional BSD variant under the hood, is it possible (using X11.app, darwinports, and/or Fink) to boot to a command line and simply startx? Would it use less RAM to bypass Aqua?"
Yes, there are already comments along the lines of "why use OS X if you're not going to use Aqua?"; that's basically what it amounts to. You get few, if any, benefits from ditching Aqua if you're still running OS X - the only thing that you get from it is the drivers that came with the system in the first place, and if that's all you want, you can always run Darwin instead and copy in the necessary kexts for the hardware that doesn't already have drivers with it, especially since, under the hood, Darwin and OS X are the same, except that Darwin comes configured to run primarily as a *nix-type command-line based system instead of as a desktop with a nice GUI.
Could it be done? Yes, but it would probably take a larger investment of time to figure out how to remove or disable the stuff you don't want than it would be to start from a system that comes ready to run the way you want it anyway.
Dogma: Dead (mostly because your Karma ran it over)
Nope, In my considered opinion, if a machine is too old to run OS X (so we're clearly talking Macs here, remember?) then linux is probably the best option, as it will have the best software support. BSDs are also an option, but again, the software support for PPC BSD isn't going to be as good as PPC linux.
What for you would like to do it? Just for the sake of it? None of Apple/OSX strenghts would really show up in such setup:
1. Drivers - If you need, a decent BSD with X11 go use FreeBSD and craft yourself hardware that works with FreeBSD. It should not be hard to specify a set of fully working hardware with great drivers for FreeBSD. I think you have much more options with PC hardware and FreeBSD (working decently) than with OSX. Or maybe go Linux, not much different from BSD really.
2. Software - None of OSX software (such like Photoshop, Office etc.) will work under X11. And in fact it is less decently packaged X11 software than for FreeBSD or Linux.
3. Support, quality etc. - you won't get any of this from Apple in such setup. With FreeBSD or Linux you will get decent quality and community support because running kernel and userspace/X11 on top of it is what we do with Linux/FreeBSD.
So I don't really see benefits of such setup. Go get yourself decent PC or laptop with supported hardware. Install FreeBSD or Linux on it and you will have that what you are seeking in quite polished form.
Mach is a resource hog. But that's not the fault of Aqua. However, Aqua is also a huge resource hog, without much benefit if you only have 2d video acceleration. Might as well just run X11 in that case. And, if you're going to do that - might as well just run Linux or NetBSD as monolithic kernels tend to run much faster.
What you're talking about doing practically speaking wouldn't allow you to run any of the GUI apps that come with OS X or those that are sold for it. If you take that away it's not really OS X. As some have already said, one wonders what the point of that is.
There's no way of knowing what part of the system is the cause of your performance issues without profiling it. ( You could do a 'System Trace' with the latest version of Shark. )
Aqua is part of the Apple HIG. It defines what UI elements look like and how they behave but the name does not refer to an implementation. Apple ships at least two implementations of many UI elements in their Carbon and Cocoa frameworks.
'Older' machines generally performed adequately with the software that shipped with them. Meanwhile every new Apple OS requires more cycles from the machines it's installed on. This is to be expected. I'm betting that the source of your problems is that you're running a 10.4 with all kinds of add-ons on a Mac that first shipped with 10.1 Even with more RAM I'd expect this to be slow.
-Harv
Incorrect, recompiling a text editor (suppose it was a static build) may glue it closer to the hardware if the libraries used were rewritten to take advantage of features such as Core Image, Quartz Extreme etc.
2 57&cid=6734612 (a post by one of the Quartz developers) which talks about why Quartz was chosen over X11.
Remember that OS X does the majority of the rendering leg work with the GPU using OpenGL, not in a software rendering layer. X11 is way behind on this, maybe XGL will level the playing field.
The original poster was confusing Aqua with Quartz which is the system that does the rendering, Aqua is just a Look & Feel.
Also have a look at http://www.misplaced.net/fom/X11/8.html which is the Quartz enhanced WM designed for X11 on OS X. So yes, someone did offer an optimized system, or at least part of it and look at http://developers.slashdot.org/comments.pl?sid=75
So really to the point, X11 is NOT optimized for mac hardware, doesn't render like Quartz, and doesn't use the GPU like Quartz Extreme.
Why would you want to do this? Seriously. Why? You bought a mac, but you want to remove all the mac specific stuff from it. Why didn't you save you're money and just by a PC and install linux on it. If you're not using the mac apps, (and let's be honest, Darwin doesn't count. It's just another BSD clone, which is essentially just another unix.) then you bought the hardware to look cool. If you absolutely have to look cool, but not run any of the macosx apps, then just dual boot.
The whole point of a unix guy owning a mac is that it's unix in all the way he wants (command line, symlinks, standard unix tools) and none of the ways he doesn't (insmod, recompiliing kernels, fucking with wpasupplicant and buggy ass drivers). It Just Works(tm). You seem bent on ignoring THE advantage of the mac, and turning it into just another piece of commodity hardware, only at luxury prices. It's absolutely pointless.
It is possible to run an X server on Mac OS X that will display all of your X applications straight to your Aqua desktop. This way you can run Aqua and X11 applications side by side, and it is very easy to get it running. For more information:
http://www.apple.com/macosx/features/x11/
What you said is somewhat true. the heavy threading made it feel very fast and responsive. it also would handle media (audio, MIDI, video) very quickly. Certain benchmarks, i'm sure, would show it to be slower. but not all types of opearations, as a rule, would be slower, just because of the microkernel or the multithreading.
my pet machine
If you change the bit about /System...loginwindow to /usr/libexec/getty , it will start a regular getty(1) like any other unix. You may also want to change 'vt100' to 'next' since, as far as I can tell, OS X still uses the next terminal format.
However, I don't think Darwin yet supports virtual terminals, which means that you're stuck with just one unless you start up an X session.