nmk said:
And please, OS X doesn't count here. Number one, its runs on a different chipset so the binaries for most Linux apps wouldn't be compatible with PPC. Apart from that, the applications have to be ported to run with the X11 libraries to run on OS X.
I'm talking about a proper Linux distro here. One which would run all Linux software natively, but with an Apple GUI based on standard Linux technologies.
What 'standard Linux technologies' are we talking about here? What would be easier -- transferring the entire Mac platform to an IBM PC-AT Compatible environment, or simply porting the existing Open Source software for OS X?
Both OS X and Linux are POSIX-compliant. They share the same gcc compiler, and have an incredibly similar build environment. The speed with which many large OSS projects have been ported to OS X is testament to this. OpenOffice, Firefox, X11 (Quartz-accelerated, no less), KDE, Qt, Apache, Samba, Tomcat, and hundreds of other fantastic tools, environments and applications.
What you're asking is to take OS X's 'Macness' -- the Cocoa and Carbon libraries and port them to Linux/x86 (even though we've already got a POSIX-ly correct Mach/Darwin UNIX). How will this help? You'd still have to get OSS developers to support these libraries even though they're on Linux/x86... Why should Apple go through all that pain to actually achieve very little? The same thing you're suggesting could've been said by Solaris users when Linux or Minix first arrived: "Why don't they just make Linux run on SPARCs and just extend what we've already got in Solaris?"
OS X is already a fantastic complement to Linux -- yet another example of how the UNIX paradigm is a great environment within which developers to work. At the moment, developers can code for their favourite Linux based toolkits, and those with the knowlegde are already able to bring those apps over to the Mac. The nebulous nature of Unix means that developers (should) be in the habit of keeping their code clean. Open Source collaboration tends also to keep the code maintainable. So, with many core toolkits/libs already present on OS X (kdelibs, xf86 libs, gcc, glibc, etc) porting software to the Mac is do-able in a manner that it never was before OS X.
Just to reiterate -- OS X's foundations are as compatible with Linux as it's ever going to be. Cocoa and Carbon aren't going anywhere. They're what makes the Mac a Mac. An Apple GUI coded with Linux technologies wouldn't work how the Mac works. The reason a Mac works how it does is
because it's not based on Linux. The capabilites of a GUI depend almost entirely on the capabilities of the underlying system. Excellent though Qt/GTK+/etc are, they couldn't be substituted in place of Cocoa/Carbon without the Mac losing much of how it operates.
Besides, Cocoa and Objective C are absolutely beautiful environments to code in. Truly. It was years ahead of its time in the late 80s and through the 90s (when it was the foundation of the NEXTSTEP OS and, ncidentally, what Tim Berners-Lee wrote the first web server and browser on). In many respects, it still is now.
IMHO, Apple are making positive moves. They've got the confidence (and the excellent technology) to present a really mature and capable environment to the computing world. Plus, they're striving for compatibility with other environments. They're also not scared to draw from the Open Source community (Samba, Apache, KHTML in WebCore, etc...), and are freely giving their contributions back to the Open Source world.
I couldn't care less what Apple's 'market share' is. As long as there's the money for them to keep going, it'll still be my platform of choice. Their applications are capable, compatible and open. Their technologies are clean, elegant and -- to quite a suprising degree, considering the 'proprietary' tag -- open. I get the best of Mac software, and I can run the best of Open Source software right alongside. I get Objective C and Cocoa, Qt, Python, Perl, mySQL, Tcl/Tk. I've got file compatibility, standards-based networking, Windows interoperability, and more than my fair share of best-in-class commercial software. And I can keep my finger on the pulse of the fruits of Open Source developers...
And to think I only switched a couple of years ago, having been a lifelong PC user, and indeed, I still am a Windows programmer and networking guy...
[edit: changed 1980's to '80's to 90's regarding NeXTSTEP]