Domain: gnustep.org
Stories and comments across the archive that link to gnustep.org.
Comments · 601
-
GNUstep
...zzzZZZ
Wake me up when he switches to GNUstep.
-
Re:MacOS could be based on RiscOS
Actually MkLinux + OpenStep = GNUStep on your favorite Linux distro. It is fun to try out and develop for.
-
Re:Why Not?
MacOS itself is NOT based on FreeBSD, hell in 10.2.x ages, BSD layer was even optional. Utility vendors were saying "Install BSD layer" in system requirements.
MacOS X is based on NeXT, it is naturally multiplatform, Apple could release "OS X and/or iLife for Windows" right tomorrow if they wanted to and if they have another "secret project in closet".
NeXT lives as OpenStep/GNUStep and already available for Windows
http://www.gnustep.org/images/full-screenshot1.pngOS X is not just that simple, it is almost a schizoid mix of BSD Lite, FreeBSD, Mach, Cocoa and Carbon. The OS and Developer tools itself forces developer to code "OS X friendly" code. The closest thing to OS X is WindowMaker/GNUStep (which I have no clue why doesn't get support) or in sense of integration and application discipline, KDE.
Also how will Ubuntu boss force developers to do things in the recommended ways? OS X really, really bugs developers to "move on", it is usual to get messages like "The functionality this application uses is depreciated, in current versions it will generate this warning once, in the future, it will segfault" on OS X. Try saying a similar thing on Linux, see amount of forks overnight
:)What makes me sad is the lack of funding/support GNUSTep gets. They already have a full function framework which only suggests you to start your project on their stuff first (without Cocoa) and its child's toy to port it to OS X. You would say "Yes, everyone claims that". No, it is not an empty promise. GNUMail.app is already living proof that it can be easily done with single developer.
http://www.collaboration-world.com/gnumail -
Re:yes, let's be honest
I'm not much of a fanboi, but Apple contributed a few interesting things to OSS, used today in most Linux distributions :
- the Objective-C front-end to GCC, essential to GNUStep
- Bonjour (aka Rendez-Vous), although most distributions have switched to Avahi.
- Lots of patches to konqueror's back end (the same as Safari)
- Darwin, by itself quite significant and in particular allowed the development of the hfs+ driver in Linux.There are other examples.
-
Re:I've been wondering..
Actually there is a directly equivalent project. We have an implementation of the OpenStep API on Unix/X11 (ok, it does not run unmodified binaries and OSX is not 100% OpenStep). It's called GNUStep.
-
Re:I've been wondering..
It's called GnuStep. It's not exactly full featured.
-
GNUstep
That would be GNUstep http://gnustep.org/
It's got a long way to go, but eventually, they intend to make
.apps from OSX run natively. Remember mac OSX is really NeXTstep 5 (or something). -
Just a spoon full of sugar...
I've found my own Linux experience has gotten better after not worrying so much about which components are open or not.
Oh, wait, I left Linux for OS X.
Let's see:
Open Source kernel? Check.
Open Source command line utils? Check.
Open Source X11 implementation? Check.I just had to add the closed source Cocoa (hey, FOSSers have their own one of those too, sort of) and I now can add lots more closed source apps.
Hmm... There seems to be a correlation between productivity and my uptake of commercial software.
-
Re:Where is the competition?
A language that only runs on one platform, even Microsoft Windows isn't going to gain my interest unless I have no choice.
Um, ObjC/Cocoa isn't limited to one platform. Sure, it's the preferred language-of-choice for the Mac, but it's available on Windows, Linux (various), BSD, Solaris,... If you have a problem with GNU, there are other ports of Cocoa (there's a couple, but from memory, the cocotron was the best).
ObjC itself has been one of the supported compilers within gcc for as long as I can remember. Basically, the ports above are providing the class-library - they all use the gcc compiler to do the actual compiling. In no way is ObjC a "proprietary" language; it may not have portability as a goal (like Java), but it will compile on far more machine-types than a JVM exists for, because it's just a front-end to gcc.
Simon. -
Re:Technically true though
I will have to aggree with the this point in the fact that Mac OS X isn't entirely new. it melds some pretty old ideas. NeXt, Mach, and BSD
. but this doens't mean that you shouldn't start forsaking compatibilities (emphasis on the plural) for increased security (and potentials there of ) and functionality as well (EG: the below QT/KDE example). Note how most of these examples started working ont the new stuff long before they released it (like PY3k) -
Re:my rebuttal
Oh yeah that's beautiful.
-
Re:my rebuttal
-
Re:Something to ponderDevelopers could write software natively for OSX using Objective C, Cocoa, and (otherwise) Apple's native toolkit, and be able to still target Microsoft's audience, rather than writing only for the lone larger-audience proprietary platform and leaving Apple's userbase unable to run their software. Back to the future! NeXT did exactly that in a previous life, after their hardware business dried up, as OPENSTEP.
Any software Apple produces for Windows will probably be using this win-cocoa layer, particularly as carbon and any legacy carbon support they might have had in Windows is defunct. For everyone else there's GNUstep
-
Re:Whatever
What I've seen happen in the open source world of GUI software is that they start off imitating Microsoft software. The redesigns are superficial (usually eye candy) and they see improvement as adding features instead of simplifying the design. Unfortunately, if a project does not imitate Microsoft, it doesn't get much support because it's so foreign to Linux people who, as I've mentioned, are comfortable with the Microsoft software they grew up with. An example of something that should be promising for its IDE is the GNUStep development environment based on the published NeXT/OpenStep standards. However, that's not getting much support because it's something that the open source world isn't comfortable with so it's not going to have the full functionality of the other IDEs.
The fact that GNUStep uses Objective-C to interface with the GUI isn't a big deal because you can still do most of the programming in C or C++, it's just that it uses Objective-C for calling the GUIs. Of course, it wouldn't be a bad idea to get familiar with Objective-C. It's simpler than C++ and just as powerful. In any case, for as desperate as you've said you are, it sounds like you didn't even think to look at GNUStep which illustrates how foreign non-Microsoft flavored software is to the open source world nowadays. That's pretty sad. If you want some idea of how the GNU development environment would work if it got support, try sitting down with XCode on a Mac. By the way, Apple doesn't charge anything extra for their IDE---it comes with the machine on the install disk and it's also what Apple uses for development so it's complete. It uses gcc but you can buy a compiler for it from Intel for faster running binaries. By making XCode and all the documentation available for no extra charge, to me this makes Apple far friendlier to the developer than Microsoft.
-
Re:"growing trend"?
GNUStep
http://gnustep.org/
But IMHO they are more focused on recreating the old NeXTStep than creating a welcoming modern desktop environment for desktop users and developers, and I see that as a losing strategy. From what I've remembered from trying it out, I got the feeling that I really had to work to make my Cocoa stuff gnustep compliant and as a Cocoa developer I really don't have the patience for that. -
Re:Please educate & inform me...
A question for you: What is it about OS X that makes it good for audio/video/graphic work? That's your assertion, so I assume you have at least of some reason to believe it.
If you're confused as to why some choose OS X then I would suggest doing some research into the features that made NEXTSTEP a compelling Unix Desktop and workstation in the 90s. For instance:
- Why Tim Berners-Lee chose NEXTSTEP as the platform on which to develop the world's first Web Browser and Web Server.
- Why id Software chose NEXTSTEP to develop their landmark Doom and Quake games for the PC.
- What's compelling about NEXTSTEP/Cocoa APIs, Interface Builder, and what influence did Objective-C have on Java?
- Why were Linux users so enthusiastic about NEXTSTEP-derived window managers, such as WindowMaker and AfterStep? What lead to the development of GNUStep?
That's NEXTSTEP.
Now, say you chose NEXTSTEP as the basis for your perfect operating system and desktop environment. You get to keep all of the good design decisions, throw away or refactor all of the bad design decisions, and do it without any backward compatibility restrictions. What you end up with is OS X.
But why an Apple laptop? Here's why: I can open up a bunch of SSH and X11 sessions to a remote server over wi-fi, close the lid and throw it in my back-pack, go eat lunch, come back and open the lid, and all of my remote X11 apps and sessions are still alive. OS X just works damn well on Apple's laptop hardware.
-
Re:Linux, BSD and Unix certificationYet carbon and cocoa are not portable at all. carbon is in the process of being depreciated, and cocoa is quite portable. this makes your statement null.
-
Re:Cocoa and CarbonWine doesn't really emulate Windows libraries, it runs them directly. Wine implements the Windows API. Wine does not use any software from Microsoft. Windows programs are just run with the Wine implementation instead of the Microsoft implementation.
The Cocoa API is based on the OpenStep API, which has a full open specification. We've had a FOSS implementation of the OpenStep API for years: GNUstep. GNUstep has even implemented some of the Cocoa additions. Producing a Cocoa compatibility layer should be much easier than producing a Windows compatibility layer. -
Thoughts
Some of my thoughts, in no particular order:
- The Officially Sanctioned API (TM) for OS X apps is Cocoa. This is basically an extension of OpenStep. So is GNUStep. GNUStep even aims to implement Cocoa's extensions so as to allow Cocoa apps to be linked with GNUStep. However, for the time being, compatibility is incomplete and only at the source level. You might have some luck compiling GNUStep apps on Cocoa/OSX, but not running compiled Cocoa apps on GNUStep/Linux.
- Some people tried to get Darwin binary compatibiltiy into NetBSD. However, the project is now dead, purportedly due to lack of user interest. This is the only Darwin binary compatibility project I am aware of. What this means is that, at the moment, you can only run Darwin (AKA OS X) executables on Darwin.
- QEMU is a fast and open source emulator that can be used to emulate, among others, x86 PCs, AMD64 PCs, and Power Macs. This should allow you to run OS X as a guest OS. If you use QEMU to emulate an x86 on an x86, or an x86 or AMD64 on AMD64, it should run close to native speed. That is, as far as the CPU is concerned. Other hardware, graphics hardware in particular, will not have native performance.
- I've been a GNU/Linux user for over ten years. I also used Mac OS X for a couple of years. Eventually, I got frustrated with it and installed Linux on my iBook. I've never looked back. Of course, I am primarily a GNU/Linux and BSD user, which causes the little (sometimes significant) oddities of OS X to frustrate me. If you're primarily an OS X user, this will likely work the other way around.
- GNU/Linux does have some definite advantages over OS X. Just throwing down a few: more customizability, easier maintenance (given a decent package manager, such as apt-get), better compatibility with open-source software, and several possible advantages that depend on your choices: lower memory usage, lower latency, lower disk usage.
- Given that you have a Mac, OS X also has some advantages over GNU/Linux. Among others: it supports your hardware (what you get from Apple, anyway; Linux has the edge when it comes to third-party hardware), companies are more likely to support it (think software, hardware, and manuals), and ... well, can't think of anything more right now.
- As for why there is no compatibility layer yet: probably just because it's a monumental task. Think about how old Wine is and how well it works. Then think about Apple's yearly OS upgrades. Then consider that Apple has also moved architectures (PPC -> x86) since the introduction of OS X, and probably will again (x86 -> AMD64 - they ship that hardware, but the OS is still at least mostly x86). Then look at GNUStep and the instructions for building it (you're allowed to shiver at this point). A Mac OS X compatibility layer won't happen anytime soon. -
It's all about GNUStep
A window manager is not a desktop environment; it is but one part of a desktop environment. GNUStep is an implementation of OpenStep, an open API that is based closely on the old NeXTStep environment from the old NeXT computers.
GNUStep is a decent implementation, though it's slow in development. It is based on Objective-C, which is (in MNSHO) a much better OO language than C++, Java, or C#. The foundation libraries are a little primitive by modern standards, but pretty clean and powerful nonetheless.
The window manager is the least of the operating environment. -
Re:Trying to get this up and running
No, it's not a window manager. It's more analogous to something like GNOME or KDE with their associated libraries.
Here's a rough step-by-step:
1. Install the dependencies listed here: http://gnustep.blogspot.com/2006/10/gnustep-on-ubu ntuppc-610.html
2. Use the GNUStep "Startup" package (you need a newer version of GNUStep than what is bundled with Ubuntu): http://www.gnustep.org/experience/Startup.html
3. Compile Etoile per the instructions in the tarball.
It's a bit different procedure than your average configure, make, make install. My hope is that someone will start packaging current versions for Ubuntu. Maybe I'll get off my duff and start doing that.
Cheers,
Peter -
Re:Another hackable part of Safari/Windows
Close. OpenStep for Windows NT made available FoundationKit and AppKit, which are the two major Objective-C frameworks of OS X and the core of Cocoa. They continued to be available on Windows through early versions of WebObjects 4, but are no longer available in any way from Apple. These are two of the frameworks that the GNUstep project aims to clone, with varying degrees of success.
CoreFoundation and CoreGraphics are APIs that were new in OS X. CoreFoundation is an object-oriented C-based API designed that parallels FoundationKit class-for-class. Although it's been (partially) available on Windows in the form of CF-Lite (http://developer.apple.com/opensource/cflite.html ), it never shipped with any version of WebObjects. CoreGraphics is the technical name for what Apple marketing calls Quartz, and is Mac OS X's low-level C-based drawing API. This is the first time, as far as I know, that it's been available on Windows, though iTunes 7 probably uses it statically linked. -
Gaah When do we get to 'edit' ...
For 'Openstep', I meant Gnustep of course...
Simon. -
Re:Be afraid, bitches....
I don't think the CLR is crap. These days all my new Windows code is developed in C#. But code that needs to run elsewhere I won't entrust to any Microsoft technology --- the probability they'll try to lock users in to other Microsoft technologies is too high. But if all you're programming for is Windows,
.NET is a fine platform. Hell, anything is better than that fustercluck called MFC.
Does the CLR need to be cross platform? Not really. Cocoa isn't really cross-platform, either, yet it's a wonderful framework for Mac development. (Yes, I'm aware of GNUStep; I don't mean to put down the fine work that's been done there, but wake me when any one of their application screen shots look better than something that crawled out of Windows 3.0. No matter how good or elegant the back-end code may be, mainstream users will no longer accept applications that look like crap. If you have graphic skills, GNUStep needs your help!)
Cross platform? Java's still one of the best bets around, and may well outlive C#.
All tools have their appropriate uses. Learn them and use them where they make sense. -
Re:I can see microsoft doing what apple did
the thing that Apple provides that's really different and proprietary is the system libraries: Cocoa, Carbon, etc. These are the APIs that application writers code to for the Mac platform. Because of this, you can't just compile Darwin for your Intel machine and run Mac apps; the APIs are closed-source.
Cocoa is based on an Open Standard: OpenStep.
Trying to clone that would be an effort on the order of the WINE project;
There is a Free implementation that runs on Linux, BSD, other Unixes and even Windows.
-
Re:Function
I'm aware of a project called myStep, which is supposed to shoehorn the GNUstep application framework set into mobile devices. It's basically an Open Source effort to create a Mac-like interface for mobile devices. I don't know what they're doing with the 800, but I know the Nokia 770 was a target they were shooting for.
Developers seem to speak well of OpenStep APIs (Mac OS X/GNUstep), so if myStep is refined enough, maybe it could be a good avenue for introducing apps for mobile devices as you were suggesting. -
GNUstep !
For those unaware, GNUstep got accepted this year
... So if you want to discover a neat little OO language (Objective-C), and work on a really great framework, don't hesitate !GNUstep is a free implementation of the OpenStep API, cross-platform (windows, linux, etc), close to Apple's Cocoa (ie, Cocoa is itself an extension of the OpenStep API, so in fact you can port Cocoa app to GNUstep and vice-versa -- GNUstep can now even read/write apple nibs natively). In addition to the frameworks, there's nice development tools, in particular Gorm, the GNUstep's pendant to InterfaceBuilder.
Check the GNUstep wiki to see a list of potential projects !
-
GNUstep !
For those unaware, GNUstep got accepted this year
... So if you want to discover a neat little OO language (Objective-C), and work on a really great framework, don't hesitate !GNUstep is a free implementation of the OpenStep API, cross-platform (windows, linux, etc), close to Apple's Cocoa (ie, Cocoa is itself an extension of the OpenStep API, so in fact you can port Cocoa app to GNUstep and vice-versa -- GNUstep can now even read/write apple nibs natively). In addition to the frameworks, there's nice development tools, in particular Gorm, the GNUstep's pendant to InterfaceBuilder.
Check the GNUstep wiki to see a list of potential projects !
-
Re:Windows clone? Why not go for OS X?
Why clone a bad interface when you can clone a good one that many people would like to use?
GNUStep, KDE-look (where you can find a tonne of different OS X look-alike themes, replicating the OS X interface).
Oh, and, I don't fit into your 'many people' assumption. I don't want to use OS X's dumbed down interface style. -
Re:More desktop - yay?
And I run blackbox on my windows machine. Though, I can do have other options, too, such as Xoblite (a blackbox fork), LiteStep, or Aston, which I find consumes even less memory (abouy 3-4 mb worth), while giving me fancy plugins, transparency, and all that fun stuff. Hell, even GNUstep/Etoile does windows. And I'm pretty sure I've seen WindowMaker ports, as well.
Oh, yes, and you can also strip down windows by either hacking up the registry, or using fancy third-party Frontends. I recall sliming 9x to a 45mb install, and XP to about 1-200mb, by stripping out unecessary components and services (e.g. Outlook, Mediaplayer, explorer, etc). I haven't tried Vista as of yet, nor do I intend to in the near future, but I know that many of the alternate WMs havebeen ported.
Really, I'm trying hard, but I can't quite seem to get your point. Windows has had the option to swap outthe default explorer shell in favour of another, since NT4, and the process is painless. So, with that in mind, if your criticism is a fair one, would it not be just as fair to argue that Ubuntu is bloated because it installs Gnome by default?
Of course it isn't, you can't, however, have it both ways.
FWI: I'm not fanboying, but I do use a Windows desktop alongside my Unix boxen boxen, and I realise that each has their strengths and weaknesses, each their uses, and not one is unilaterally "better" than the other in all respects. -
GNUstep got accepted and has a lot to offer
GNUstep has a lot of different projects to offer - from entry level improvements for the beginner (like compiling the missing classes in GNUstep compared to current Cocoa and creating the header files) to advanced tasks like porting Apple's WebKit over to GNUstep (here you would need proper ObjC++ and C++ skills) or improving GNUsteps integration into the MS Windows Platform (tighter integration into the Windows look and feel, Windows programming skills are welcome). So there is something for everybody.
newspieces:
http://digg.com/programming/GNUstep_participates_i n_Google_Summer_of_Code_2007
http://gnustep.blogspot.com/2007/03/summer-of-code -2007.html
ideas:
http://wiki.gnustep.org/index.php/Summer_Of_Code_2 007 (the wiki requires a registration here: webmasters@gnustep.org since we got a lot of wikispam before)
regards, Lars -
Cocoa
GNUstep might let you compile and run it on Linux (or other Unix-like platforms). Someone has done a Cocoa/GNUstep port of emacs, for example, that compiles from the same source tree on both platforms.
-
Re:Would it be marketable?
If a few more developers had experience in the "Next" way of doing things and committed themselves to the Mac platform I'd be a happy camper.
They wouldn't even have to commit themselves to the Mac platform to take advantage of the NeXTStep way of thinking, that is to say, they wouldn't have to go into the proprietary world of software, they could develop with GNUstep and port to the Mac. I wish GNUstep would become more popular. It just makes so much more sense than Gnome/Gtk or KDE/Qt. -
Re:Because it's about freedom!
They are enamored by the GPL license.
I don't think that's remotely true.
GNOME is LGPL, not GPL. In fact, they consider it an advantage to not use the GPL.
KDE libraries are LGPL, KDE applications are GPL.
XFCE uses a mixture of the GPL, LGPL and BSD licenses.
Enlightenment uses the BSD license.
As you can see, none of the major free operating environments use the GPL exclusively, in fact half of them don't use it at all. Hell, GNOME is part of the GNU project, the FSF recommends the GPL instead of the LGPL, and GNOME ignores them and use the LGPL anyway.
-
Re:Aqua port for Linux
They have that already; it's called GNUStep.
-
Re:Ok I read TFA
...I'm not certain whether that's a Gnome thing or an Ubuntu thing. Thank God for the online community...
it's certainly less hassle to put up with Gnome than to install an alternative. Of course, it's more of a hassle to have GNUstep on Ubuntu than GNOME. That's because Ubuntu is basically a snap-shot of Debian unstable with the latest GNOME desktop installed by default. The equivalent is the live GNUstep CD, http://livecd.gnustep.org/ to have GNUstep by default. Or use Debian, on which both are equally hard: "aptitude install gnustep" or "aptitude install gnome-desktop". -
OSX and GNUstep are clones of NextStep
Gnustep is already available for Linux. We essentially already have OSX for Linux.
http://www.gnustep.org/ -
OpenStep sucks
Look at this painfully ugly mess:
http://www.gnustep.org/images/full-screenshot1.png
http://en.wikipedia.org/wiki/Image:Gnustep.png
I'm tempted to say that GNU makes **everything** ugly,
but actually GNOME isn't bad if you play with the
settings for a bit. (hint: you can ditch the second
toolbar and thicken up the other one) -
Do what Microsoft does
Do what Microsoft does to constantly improve their GUI---i.e., track the Mac's progress. The Linux world can even better track the Mac's progress than Microsoft by getting over their religious opposition to Objective-C and just use GNUStep for the desktop. I'm not kidding either, this just seems so intuitively obvious to me; as opposed to the Linux desktop directly tracking Microsoft, which is what Gnome seems to be all about. You don't need pass or keep up with Apple, you just need to pass or keep up with Microsoft.
-
Re:What's wrong with X?!
Not really complaining. Just telling you that not having a native GUI version on a platform that prides itself on the GUI is a non-starter. It really is that simple. You see, the end user won't know about these "standards" for UNIX-derived systems, they will just see an interface that looks and act different which requires an additional piece of software to run. Trying to convince end-users they are wrong or stupid for their choice of platforms doesn't really work very well. In fact, it works about as well to tell a Linux user that they made a poor choice when they should be using the industry standard operating system - Windows.
You'd have to be very silly indeed to write a major F/OSS office suite, and not make it support X11.
Depends on you goal, really. Maybe you want an open source suite that runs on the majority platform very well or uses unique features of a non-open source platform (Core Image / Video / Animation etc. on OS X). Maybe your problem with Microsoft Office is not monetary or ethical, but you have a different paradigm that you think would work better and you actually like Windows / OS X.
It makes no sense to start out a multiplatform F/OSS project on Cocoa, because _nothing_ is compatible with it.
The GNUstep team might have reason to disagree. It is very possible to write software for GNUstep that compiles and runs fine on OS X.
-
GNUstepGNUstep
- majority of Cocoa classes implemented
- can use OS X NIB files (user interface)
- uses Objective C - OS X "native" language
- can be used on MS Windows, Linux or other systems with UNIX taste as well
See also: GNUstep and Cocoa
-
GNUstepGNUstep
- majority of Cocoa classes implemented
- can use OS X NIB files (user interface)
- uses Objective C - OS X "native" language
- can be used on MS Windows, Linux or other systems with UNIX taste as well
See also: GNUstep and Cocoa
-
Re:Isn't that what YellowBox is for?
Well,there is GNUstep. http://www.gnustep.org/
At least one commercial app for Mac OS X is using it to get a Windows version, Nova Mind:
http://www.nova-mind.com/
William
(who is still pretty miffed that Apple had to cave in to Adobe and Microsoft et. al., so that instead of Rhapsody w/ Yellow Box, we got Mac OS X w/ Carbon --- I'd give my interest in Hell to get back all the time I've wasted at work using foetid Carbon apps) -
Re:A framework of our own?
"Why haven't we designed and implemented our own framework?"
We have. Many of them. One for Python, one for C++, one for Objective-C, one for Smalltalk...
-
Re:OSX API
It's called GNUstep. It's pretty good, but is incomplete, incompatible, and looks hideously ugly.
-
Ugh, why do people do that?
Here are the instructions for that.
An installer that installs the GNUstep core package binaries for Windows is available at the GNUstep ftp site in the windows subdirectory. The current release is base-1.11.1/gui-0.10.1. Note this package only includes the libraries necessary to start running applications. No applications (like file managers, etc) are included. You will need to compile those yourself.
Why do that when you could have a nice stable GNU/Linux installed in twenty minutes? Does anyone really go through all of that torture just to customize a Windoze box? Why does Slashdot have these mindless "I want to do something that's easy with free software but freaking impossible in Windoze XP" stories?
-
Re:Oh dear, where to start ?
-
GNUStep
Um, GNUStep has been around for ages now.
-
Re:Everyone is a critic
Top of my list of pet peeves is criticisms just like this.
Todays alternatives:
http://www.gnustep.org/ different desktop
http://www.enlightenment.org/Enlightenment/DR17/ (another different desktop)
http://cm.bell-labs.com/plan9/
How about putting some time and effort into ONE new and different thing, then let's talk about new and different okay? -
Re:Open up Cocoa (not going to happen)
Sounds like you're a good candidate for this: http://www.gnustep.org/information/mission.html --as they say, due to Apple changing the Cocoa API all the time, it's not a 100% match, but any development work you do in GNUStep should be trivial to build in Cocoa.