Help - Search - Members - Calendar
Full Version: ReactOS X?
InsanelyMac Forum > Discuss and Learn > Apple Opinions and Discussion
CSMatt
I quite honestly am a bit surprised that no one has decided that it might be a good idea to create a free clone of Mac OS X that could run Mac OS X programs and legally run on normal PCs. Unlike ReactOS, which had to build a Windows clone from scratch (with assistance from the WINE project of course), a Mac OS X clone can start by implementing the Darwin foundation directly, considering Darwin is already free. Of course, it would be difficult to build Aqua and the proprietary parts of Mac OS X, and there's always the chance that Apple will see the project as a threat and relicense Darwin as proprietary software, but I image that by that point the project could continue by building upon the last free version of Darwin.

I'm not actually trying to start something like this, nor am I suggesting that it be started (although I would very much like to see it done regardless). I'm just wondering why it hasn't been tried yet.
iMaurice
itd be harder than creating wine
and wine's existed sinse '93...
mac fly
By the time it is finished, apple would already have released OS XI
MacRetail
@Mac Fly
That's true, ReactOS has that problem too. We'll have an open-source Windows 2000 clone in -/+ 2010...

I don't think this should happen. It's an interesting idea, just like ReactOS, but i think we should just concentrate on making Linux easy to use. That's it.
Don't make something 'just as good.' Make something better!
CSMatt
I'm guessing that the problem with ReactOS seems to be more of a lack of developers and a lack of funds. BSD and GNU had at least an adequate amount of both in their development days, even if it took years for the projects to end.

It seems that there is always something that plagues all community-based distributions. Just look at Debian. The Debian project has both developers and money, but they have trouble releasing their distribution due to all of the regulations and stuff. It would be great if ReactOS developers were hires of a FOSS coorporation or foundation, although that seems unlikely due to the danger of Microsoft emulating SCO and starting a flood of frivolous lawsuits.
RideTheCliche
The short answer is it's already been done.

I'll spare you the gory details as there's a very good read at http://www.macobserver.com/columns/devilsa.../20030606.shtml that explains the history, but the short story is that both Mac OS X (Well, Cocoa more accurately) and GNUstep are implementations of NeXT's OpenStep standard. There's already software out there that can run on either Mac OS or GNUstep such as GNUmail -- Check out http://www.collaboration-world.com/cgi-bin...nshot.cgi?pid=2 for screenshots of GNUmail.app on OS X and GNUstep.

Right now Darwin + WindowMaker + GNUstep is the closest you'll get to a 'legal' Mac OS on generic hardware. The history of NeXT leading up to OS X is a fascinating topic to read up on!

~RTC
CSMatt
OPENSTEP and Mac OS X are different operating systems in the context of what programs will run on each. They aren't binary-compatible with each other. Mac OS X may be based on OPENSTEP, but the remaining concepts are incroprated over from Mac OS 9.
DaemonES
CSMatt Darwin is a smallest part of all, that should be emulated. CoreFoundation, Quartz Extreme... Well yes, this is possible to do, e.g. emulate Quartz through X11 and so on, but we have Linux...
CSMatt
Perhaps, but Linux/BSD isn't as simplistic as Mac OS X. There are some aspects of the Mac OS that are even simpler (and more logical) than Windows, such as the location of all the program files in the Applications folder instead of scattered amongst the hard drive and the registry.

You also have to remember that building free replacement operating systems doesn't happen quickly. GNU (not counting Hurd) took 7 years to make, and FreeDOS took 12 years. The biggest difficulty would be to keep up with the latest versions of the proprietary OS during the free OS's development, and sometimes that turns out to not be as difficult as it would seem, or so I would think.
bofors
QUOTE (RideTheCliche @ Dec 11 2006, 01:32 AM) *
GNUstep is the closest you'll get to a 'legal' Mac OS on generic hardware.


I do not think GNUstep is actually "legal" either. They have no license to distribute any implemention the OpenStep "standard", which is in fact copyrighted material. This is a little different than typical cases of "reverse engineering", the interface which is being copied is not some abstract, meaningless design, but something that is clearly based in text. It is easy to see that the class names and method names of the Cocoa framworks are themselves protected under copyright: http://developer.apple.com/documentation/C...ssic/index.html Other critical parts of perhaps Cocoa and certainly OS X are protected under patent. So, in short, I do not think it would be possible to legally "clone" OS X.

The other thing worth noting is that GNUstep has not exactly been a raging success either. I have never tried using it and I am certainly glad it exists, but guys have been working on it for like a decade and I do not think it is really "done" yet either: http://en.wikipedia.org/wiki/GNUstep Most Cocoa programmers really do not consider it to viable way to port there software to Windows, they do not use it as Aaron Hillegass has pointed out: http://www.gnustep.org/resources/BookClarifications.html Furthermore, GNUstep seems to have almost no support in the Linux world.
np_
QUOTE (bofors @ Jan 6 2007, 02:05 AM) *
This is a little different than typical cases of "reverse engineering", the interface which is being copied is not some abstract, meaningless design, but something that is clearly based in text. It is easy to see that the class names and method names of the Cocoa framworks are themselves protected under copyright: http://developer.apple.com/documentation/C...ssic/index.html Other critical parts of perhaps Cocoa and certainly OS X are protected under patent. So, in short, I do not think it would be possible to legally "clone" OS X.


actually is possible to reverse whole OSX and clone it, is called "clean room" witch is legal anywhere

ie for example cocoa framework is reproduced by using "human readable text" not any code himself like "books' apple publications , specs, documents " etc

mean no direct code involved.

few of "ReactOS" devs are my friends and they do explain a lot of legal tricks witch mean anything can be reversed and legal ....

also under "OSX" clone did not mean to close all but only part of it like frameworks not any driver (kext ), it's will use apple org drivers ( at less these open sourced and public )

there is no problem on real to some one do OSX %100 same functionality and sure %100 free clone , legal .etc

only problems is time and bunch of devs need
bofors
QUOTE (np_ @ Jan 6 2007, 09:51 AM) *
actually is possible to reverse whole OSX and clone it, is called "clean room" witch is legal anywhere
...
there is no problem on real to some one do OSX %100 same functionality and sure %100 free clone , legal .etc


This certainly is not true if any patents are actually required to make the OS X function. As it stands, even Linux which is merely some kind of Unix implementation, not really a "clone" of anything, may face considerable patent challenges from Microsoft.

QUOTE
ie for example cocoa framework is reproduced by using "human readable text" not any code himself like "books' apple publications , specs, documents " etc

mean no direct code involved.


You seem to have missed my point about Cocoa and GNUstep. I will try make it more clear. Cocoa is the Objective-C language and a set of programming "frameworks" which are programming kits filled with modular pieces of software.

For example, if one wishs to create a window on the screen, one can use a "NSWindow" object found in the "Application Kit" framework: http://developer.apple.com/documentation/C...ssic/index.html

One the methods that "NSWindow" implements is called "preservesContentDuringLiveResize": http://developer.apple.com/documentation/C.../uid/TP40004151

My point here is that like thousands of other terms in Cocoa both "NSWindow" and "preservesContentDuringLiveResize" are actually copyrighted. While GNUstep may have a "clean room" implementation of the code which these terms represent, the interface itself is not exactly legal. Merely changing "NSWindow" to "GNUWindow" and such would not make it legal either.
iLux
GNUstep is plainly legal, just as Wine is.

There have been lawsuit, back in te 90s (Sun, SCO, etc…) which have determined that an API is always free, wether its implementation is open-source or not.
bofors
QUOTE (iLux @ Jan 7 2007, 09:05 AM) *
GNUstep is plainly legal, just as Wine is.


I do not know about Wine, but GNUstep is hardly in the clear.

At the heart of the two companies' dispute is a simple question: Are APIs protected by copyright, or are they essentially open source? The answer, however, is anything but simple.

"If it turns out we're wrong and that you can, in fact, copy an API without infringing on a copyholder's copyright, then that opens the door to a lot of other things," says John Carbone, vice president of marketing at Express Logic, San Diego, Calif . "For example, what other portions of the source code can you copy? Data structures? The comments? The functions? The user manual? That's dangerous—it's a slippery slope. Basically, [such a ruling] would make everybody's API open source. The API would no longer be a distinguishing factor."
...
Adds Schultz of the EFF: "Merely emulating an API, in terms of writing code that is identically functional, is not something you can protect by copyright. But if Green Hills copied the API flat-out—that is, line by line—then they run the risk of being found in violation of copyright law."

http://www.dso.com/indepth/showArticle.jht...;printable=true

QUOTE
There have been lawsuit, back in te 90s (Sun, SCO, etc…) which have determined that an API is always free, wether its implementation is open-source or not.


You are right to some extent here, it seems that most of the case law has ruled that API's are not covered under copyright.

Schultz of the EFF agrees: "The courts have recognized, that to the extent you need to copy functionality, or access functionality, in order to make your program compatible with someone else's program, that's what called 'fair use' under copyright law."

http://www.dso.com/indepth/showArticle.jht...;printable=true

But the context is important here. In short, "fair use" for interoperability is one thing, stealing someone's API is something else. Essentially what you are saying is that "header" files cannot be copyrighted. I think this is plainly absurd, any original work can be copyrighted, whether it is "fair use" for someone to infringe on that is a seperate issue.

In terms of Cocoa and GNUstep, the framework API's are essentially the "blueprints" of the entire system. The actual implementations change regularly and obviously not how the system is defined. The development and refinement of such sophisticated API's is where most of real intellectual work is done, writting the source code is merely plumbing.

Does everyone have the right under "fair use" to sell software that connects to Cocoa (like a Java bridge) but needs to tread on the API's copyright to function? Sure.

Does everyone have the right to distribute a Cocoa API clone (like "YellowBox") that allows all Cocoa software to run on Windows? No.
Panda200x
I'd be all for this idea, Im a big fan of ReactOS for some reason (perhaps windows apps without the fees biggrin.gif) so i'd like to see the idea. Also I want to see apple in a mood ohmy.gif
np_
QUOTE (bofors @ Jan 6 2007, 09:49 PM) *
My point here is that like thousands of other terms in Cocoa both "NSWindow" and "preservesContentDuringLiveResize" are actually copyrighted. While GNUstep may have a "clean room" implementation of the code which these terms represent, the interface itself is not exactly legal. Merely changing "NSWindow" to "GNUWindow" and such would not make it legal either.


you want to tell me that if i made class called "NSWindow" is iligal just because exist in Cocoa framework !?

they can hold any license for code or interface or whatever but no any "name" of it nor function names /functionality

or did name "Apple" is copyrighted ? coz if so mean "Apple Computer Inc." should sue anyone doing "apple pie" (http://www.dltk-teach.com/alphabuddies/recipe/apple_pie_recipe.htm) for example tongue.gif
(MoC)
Its a good idea. But they will never get through Apple's Lawsuits of the Century ™.
*Needs a damn starwarz intro...*
joe75
Mmm... Apple pie and Cocoa, anybody got some ice cream tongue.gif
bofors
QUOTE (np_ @ Jan 8 2007, 07:35 PM) *
you want to tell me that if i made class called "NSWindow" is iligal just because exist in Cocoa framework !?


Yes, that is exactly what I am telling you. Apple Computer holds a copyright on "NSWindow" and the exact method names declared here (and header file, the API): http://developer.apple.com/documentation/C.../uid/TP40004151

If you try to clone Cocoa (or OS X), you would have to copy the names "NSWindow" and all its methods exactly (the API). This would infringe on Apple's copyright.

QUOTE
or did name "Apple" is copyrighted ? coz if so mean "Apple Computer Inc." should sue anyone doing "apple pie" (http://www.dltk-teach.com/alphabuddies/recipe/apple_pie_recipe.htm) for example tongue.gif


You seem to have missed the Apple vs. Apple lawsuits: http://en.wikipedia.org/wiki/Apple_Corps_v._Apple_Computer

"Apple" is principally protected by trademark law by the way, not copyright, but the idea is similiar. "Cocoa" and "Java" also have legal protection: http://www.theserverside.com/news/thread.tss?thread_id=37483
CSMatt
GNUStep actually predates Cocca (so says Wikipedia, anyway), so it wouldn't have infringed on Cocca's copyrights because they didn't exist at the time. It is possible that they might have existed during the development process, but I'm not sure if that would suddenly require the project to have to come to a halt in order to avoid infringement. I seriously doubt that the GNU project would pursue any task that could cause legal problems. In fact, the FSF refused to allow GIFs on their pages due to "patent issues" (not the case anymore since October).

And in any case, I'm pretty sure that single words are ineligible for copyright. Words can only be protected by trademarks.

If the other finished FOSS projects (GNU/Linux, BSD, and FreeDOS to some extent) designed as replacements for proprietary operating systems are actually illegal, they would have been shut down by the courts by now. This isn't to say that they won't be taken to court by the companies that their respective systems replace, but they clearly have enough confidence in the law to not simply shut down out of fear.
bofors
QUOTE (CSMatt @ Jan 9 2007, 04:11 AM) *
GNUStep actually predates Cocca (so says Wikipedia, anyway)...


This is true, GNUstep started well before OS X. It is based on the OpenStep Specification created by NeXT in 1994: http://foldr.org/~michaelw/objective-c/OpenStepSpec/

Note the legal text though:

Copyright

Copyright 1994 NeXT Computer, Inc. All rights reserved

This document sets forth the OpenStep application programming interface (API).

You may down-load one copy of this specification as long as it is for purposes of study only. We look forward to licensing third parties to create original implementations of this API. No such license is granted or implied by the publication of this specification. If you would like information on obtaining such a license, please contact NeXT at OpenStep@NeXT.COM.

OpenStep, NeXT, the NeXT logo, NEXTSTEP, the NEXTSTEP logo, Application Kit, Foundation Kit, Interface Builder, and Workspace Manager are trademarks of NeXT Computer, Inc. PostScript and Display PostScript are registered trademarks of Adobe Systems, Incorporated. UNIX is a registered trademark in the United States and other countries, licensed exclusively through X/Open Company Limited. PANTONE is a registered trademark of Pantone, Inc. Unicode is a trademark of Unicode, Inc. All other trademarks mentioned belong to their respective owners.



GNUstep has no such license to implement the OpenStep Specification.

QUOTE
...so it wouldn't have infringed on Cocca's copyrights because they didn't exist at the time.
Apple bought NeXT and the rights to the OpenStep Specification which they renamed "Cocoa". By the way, the "NS" prefix of Cocoa classes stands for "NextStep".

QUOTE
And in any case, I'm pretty sure that single words are ineligible for copyright. Words can only be protected by trademarks.


Again, I am talking about the API or "specification" as a whole, not individual names of classes and methods.


QUOTE
If the other finished FOSS projects (GNU/Linux, BSD, and FreeDOS to some extent) designed as replacements for proprietary operating systems are actually illegal, they would have been shut down by the courts by now.
American courts do not spontaneously act to enforce the law, someone has to bring a complaint and that can cost a lot of money. Apple has thus far ignored GNUstep.

QUOTE
It is possible that they might have existed during the development process, but I'm not sure if that would suddenly require the project to have to come to a halt in order to avoid infringement.


At best you could argue that by not acting for so long, Apple has waived its right to do so. Legally this sort of a defense in known as "laches", but that is really a seperate issue and might not hold up in court: http://dictionary.law.com/default2.asp?sel...=1097&bold=
CSMatt
Not to sound rude, but are you sure that the GNU project doesn't have a license? Did you ask them?

QUOTE (bofors @ Jan 9 2007, 05:36 AM) *
American courts do not spontaneously act to enforce the law, someone has to bring a complaint and that can cost a lot of money. Apple has thus far ignored GNUstep.

I know, but many big companies don't just sit by the sidelines while outside projects try to replicate or replace their work, no matter how legal those projects may be. SCO, for example, is exhausting all of their reputation and money trying to shut down BSD and Linux because they have severely damaged UNIX's once dominant market share in the server market. Microsoft will surely likewise go after ReactOS upon its completion because it's a threat to their dominance in the desktop market. Apple is no exception. It started legal battles with Microsoft when Windows 95 came out just because the GUI was "too similar" to the Mac OS, and even attempted to go after anyone who designed an Aqua skin, as they may hold a patent on theming itself.
bofors
QUOTE (CSMatt @ Jan 9 2007, 04:26 PM) *
Not to sound rude, but are you sure that the GNU project doesn't have a license? Did you ask them?


I am a Cocoa programmer and I have considered switching to Linux / GNUstep a few times. I raised this "license" issue very specifically with the GNUstep people a few years ago. So yes, I actually did ask the GNUstep project if they a had license. They don't. One of the older GNUstep developers, who recognizes the potential legal problem, contacted Apple asking for a "license" many years ago. He told me that Apple ignored his letter.
Synaesthesia
Ok but what about all the technology like Quartz that is propietary to OS X. Either you would lack that or you would have to make a facsmile.
DaemonES
QUOTE
Ok but what about all the technology like Quartz that is propietary to OS X. Either you would lack that or you would have to make a facsmile.
Header files are more, than enough for reversing. Main problem - luck of developers, but we can try of course, for example write layers on linux kernel.

PS I don't know about US, but in Europe you can't get a patent for software application, you interests defends by laws about intellectual property. So...
CSMatt
QUOTE (bofors @ Jan 10 2007, 12:10 PM) *
I am a Cocoa programmer and I have considered switching to Linux / GNUstep a few times. I raised this "license" issue very specifically with the GNUstep people a few years ago. So yes, I actually did ask the GNUstep project if they a had license. They don't. One of the older GNUstep developers, who recognizes the potential legal problem, contacted Apple asking for a "license" many years ago. He told me that Apple ignored his letter.

Oh.

Well, judging by the obscurity of GNUStep, I don't see why anyone would use it anyway.

But I still think that the ReactOS X idea has merit, even if there may be patent concerns to worry about. Maybe the folks in government will wise up and stop recognizing software patents by the time it could be seen as a threat.
DaemonES
I have a better idea, and actually made a few steps, port of Alsa to OSX.
Zealot
Alsa sounds very nice especially this features:
1-User space library (alsa-lib) to simplify application programming and provide higher level functionality.
2-Support for the older OSS API, providing binary compatibility for most OSS programs.

you mean this ALSA right?

greetings.
DaemonES
Exactly, but a lot of code must be rewritten sad.gif
CSMatt
QUOTE (DaemonES @ Jan 29 2007, 02:43 PM) *
I have a better idea, and actually made a few steps, port of Alsa to OSX.

What's Alsa? Google tells me nothing.
DaemonES
Advanced Linux Sound System
CSMatt
Well then wouldn't that be only for "sound systems"?
DaemonES
Is it not enough at least for now? OSX has a poor sound support now. Core Audio is very simple, but weak API, so we must something to do.
Zealot
i agree with you DaemonEs .
I use a lot of sound software so to me is a must.But in the other hand i dont have the time or the enought knowledge to do it so .

greetings
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.