Is CocoaTech Violating the GPL?
elliotj asks: "In the latest version of their Finder-replacement product, PathFinder CocoaTech has included a terminal feature based on sourcecode from the GPL'd iTerm. They have made available the classes they developed from the iTerm sources, but not all the sourcecode for their product. Since iTerm is GPL (and not LGPL), shouldn't they have to make the ENTIRE codebase available? This is being debated on their forums. If this is true, what can we do to get CocoaTech to open up the rest of the code?"
They are much more likely to remove the GPL'd code than they are to open up their product.
You can get them to open the source by asking.
It does wonders sometimes.
I live in a giant bucket.
I hope for their sake it does. They've spent a lot of time on their product, and I'm not sure they've even reached the closed source PROFIT step yet...
Of course that does the trick. You aren't allowed to ship someone else's code except under their license. If they are violating the GPL, then they must stop shipping, and pay damages if they get sued. Nothing, however, forces them to open their own code.
There are no trails. There are no trees out here.
Since iTerm is GPL (and not LGPL), shouldn't they have to make the ENTIRE codebase available? This is being debated on their forums. If this is true, what can we do to get CocoaTech to open up the rest of the code?
And you wonder why companies are afraid to consider the use of GPL software. Please, do us all a favor and READ the GPL before you continue making the rest of the community look like a bunch of fools.
Interested in open source engine management for your Subaru?
Pragmatically, it's a better plan to try to work this out with the company first before splashing it all over Slashdot. People do make honest mistakes - they ought to read licenses and understand all of their responsibilities before reusing code, but they don't always do so. Pointing these responsibilities out may result in things being worked out significantly faster. Immediately getting them bad publicity is more likely to lead to them never using GPLed code again, which is a bad thing - companies enhancing GPLed code and releasing derived works benefits everyone.
On the other hand, if a company refuses to release the source or never gets back to you, and you're satisfied that the copyright holder hasn't granted them further permissions above and beyond the GPL, then make their lives miserable. While it's desirable to have GPLed code used widely, it's not desirable to allow companies to believe that they can get away with failing to follow their obligations. But don't do that until you've tried doing it nicely. Everyone is happier then.
This doesn't have anything to do with Apple or Apples legal team.
Except continuing to distribute the binary that depends on the GPL'd code.
fuck you.
Sorry, just a case of reading without reading. That'll teach me to post while at work. Apologies.
What amazes me is that these guys went to the trouble of doing a source release for some of the classes in order to comply with the GPL. This means that all the time spent on incorporating iTerm and doing a source release took place without anybody actually reading the GPL. They understood enough about the GPL to know that you have to release stuff if you use it, but didn't read it in any detail.
Amazing considering they were launching a product that included a signifcant component of GPL'd code.
I think the fact that they did a source release likely means it was an honest mistake. That being said, if they chose to remove iTerm from it rather than opening the rest of the source, I think they should at the very least make some form of monetary concession toward the authors of iTerm, whose stolen code may have accounted for actual sales of Path Finder.
Assume A and B are two sets of source code. B is licensed to the author of A via the GPL.
Is A a derivative work of B? Then A is in violation of copyright law if A is not GPL'ed (section 2).
Are A and B being distributed together as part of a larger work? If A and B are part of a larger work and are being distributed together then when A is distributed as part of the whole, it must be GPL'ed, otherwise the author of A is in violation of copyright law. (Section 2, the paragraph after the bullet points).
Are A and B being distributed together in aggregate, as opposed to being combined into a larger work. (This is in the gnu.org FAQ on the GPL.
Now, I'm not a Mac person, I've never used any of these applications. However, there are several things to remember. First, in this case, the author of iTerm is the only person who can demand the source be released. You cannont enforce someone elses copyrights. So the copyright holders of iTerm are the only people with a leg to stand on in actually getting the source coughed up.
Next, the commonly acknowledged meaning of a derivative work is generally that the two binaries share the same address space while running (that is, they are linked either statically or dynamically together at some point).
The second portion sounds to me, like it is tricky. The working their to my IANAL mind is hard to differentiate from a work in aggregate. When RedHat ships GPL'ed software and non-GPL'ed software together is "RedHat Linux" a larger work, and as the kernel is GPL'ed then all other software must be? No I wouldn't think so. However, I can't see how to draw a line so that it makes sense to me. To my mind, either "RedHat Linux" is the larger whole, thus it all must GPL'ed, or that paragraph doesn't mean anything, and thus shouldn't be there. I'm not sure I understand it precisely. The only thing I can think if of is something like Emacs where if I distribute GNU Emacs with some extra runtime support in lisp, then that extra runtime while it might be an independent work, it must still be GPL'ed. Meanwhile, if I distributed Emacs and pico, I don't have to GPL them both. I've never seen a clear explaintion of the difference between "parts of a whole" versus works in aggregate.
So the trick is to figure out if iTerm code is linked to the larger application, or if iTerm is merely a spawned program which communicate at arms length. In general if it is an external spawned program. If the source code bases are never linked, they are in the clear. If they are linked together, then CocoaTech has some explaining to do. Generally speaking, an strace, ldd, and a ps listing will show you precisely what is going on when they admit they are using the source code.
Kirby
Nonsense.
They CANNOT be forced to open the source of their code: they can only be forced to stop distributing their product so long as it contains GPLed code. The only thing beyond that is them paying damages to the original authors. Period.
They have four legal choices: (1) relicense the GPLed code from the original author[s] under some other license. (2) remove the GPLed code. (3) Stop distributing PathFinder. (4) Make PathFinder GPL and open its source.
Well, one more: wait to get sued, at which time, if they lose, at least one of the following will happen: (1) they will be forced to stop distribution of PathFinder until they have removed the code. (2) They will have to pay damages.
If this is true, what can we do to get CocoaTech to open up the rest of the code?
Why do you want to force them to open up the rest of the code? Even the much maligned RMS doesn't have any desire to force others to release their code if they don't want to.
This isn't a case where some company took an entire open source project, added a few (potentially major) features then refuse to release the source. Common decency dictates they made an honest (hopefully) mistake, and one should give them a chance to correct it. They've released the souce to the portion they used that is open source. I'm not an expert, but this doesn't seem to be enough to satisfy the GPL to me. If that's correct, then to be in compliance they will either have to stop distributing the version with the open source code, or release all of the code. The choice should be up to them unless they press the issue (ala: SCO).
Like it or not, their source code belongs to them, and it's up to them to decide whether to release it or not. To force them to release it on a technicality, using legal means, is the exact same tactic the RIAA is using to legally steal money from people who've downloaded or facilitated the download of songs ("piracy" is, of course, bad, but thuggery is worse).
They can do one of three things:
Give them a break so that they can fix their mistake (from Eblen Moglen's writings on the subject this is the FSF prefered method) at least until it becomes clear that the breach of the GPL is egregious.
Who knows they might even release some source this way!
It was always my understanding that the code they borrowed and modified needed to be released as source. Anything that they make that's not the essentially the same program, could be kept closed if they choose. I definetly could be wrong but that was always my understanding.
Instead, they can cut the GPLed code out of their product.
They could also come to some other agreement with the author(s) of whatever GPLed code they want to use. Nothing in the GPL prevents the authors of GPLed code from offering it under as many different sets of terms as they choose, including (presumably for a fee) inclusion in a closed source product.
-- MarkusQ
P.S. They could (under some circumstances) also clarify the boundary between their main product and the part that uses GPLed code so that they did meet the terms of the GPL.
They CANNOT be forced to open the source of their code: they can only be forced to stop distributing their product so long as it contains GPLed code.
Nope. They can't be forced to do anything. If sued, they might be required to pay a small fine, but that'd be the extent of it.
There's no way in a billion years that a court would seize thousands of dollars (or more!) of intellectual property over a trivial dispute like this.
The GPL does not allow proprietary and GPL code to occupy the same memory space, though it is somewhat vague. For example, if there are a set of GPL C++ classes, and you derive from these classes, then your derivations fall under the GPL. If you link in a static or dynamic library that is GPL, then your code is also GPL. Let's break it down:
The primary issue is: can you actually wrap it and keep the pieces properly separated so free pieces can be free and non-free can be dealt with apart or are the links too pervasive between the two (three)? If the different components are too interwoven to be cleanly separable, it suggests your code design sucks, the code design of the GPL your using sucks, or both.
Right. It's the pay damages thing I'm referring to.
what can we do to get CocoaTech to open up the rest of the code?
What do you want this code so badly for?
Hmmm??
Unless it's determined that the only remedy that would correct the situation is specific performance - i.e., a court order telling CocoaTech that they have to open the source code.
While I think that this is an unlikely remedy, and that a fine would be much more likely, I think one could make a good argument in favor of SP.
fuck you.
You can't possibly know what "effected" means, because effected isn't a word. "Affected" is.
That's what I like about the GPL, if someone wants a leg up on the competition or for whatever reason wants to get to market faster and easier, and wants to use somebody's GPL code, they have to pay in the coin of the realm, which is to release their own code under GPL too.
If they don't want other people to use their precious code, then they shouldn't use anybody else's precious code, they should write it all themselves.
Infuriate left and right
GPL'd code: free as in free to write your own if you don't want to share your code as others have shared theirs.
Infuriate left and right
If you have a project with, say, patches received from fifty or so patch authors, how do you do this? You'd have to come to an agreement with all of them.
;^)
You're absolutely right, and that was a big headache for Mozilla when they were changing their license.
I've thought about GPLing some jive that I've written, but not accept patches from *anyone* in what I maintained. Then I'd be free -- to relicense the code if I ever wanted to -- and the code would be Free to boot.
Haven't gotten that brave yet, however.
Some maintainers of GPL software ask that copyright on patches be assigned to the maintainers so that situations like these can proceed in a sane manner. Credit for contribution is still given but the original author(s) maintain control of the codebase.
Bleh!
Every single person arguing for CocoaTech to release the entire code is posting anonymously.
Apparently no one has the balls to attach their name to their "demands".
I don't even know why this "feature" is that intresting anyway. I can't really think of a reason to have a drawer with a shell in it. Keep my shells in my terminal or my emacs, nowhere else! They will probably drop the feature, as it is more of a novelty than anthing else.
Sig* sig = theOneSig();
VMWare grossly abuses the GPL with their ESXServer product. They use a highly modified linux kernel for their host OS, and the host OS is clearly Linux. however, there is no source for the new kernel they install, and when asked (I did so at a few presentations) they simply chuckle, and mutter something about hell freezing over. None different really from how sw-soft is behaving with their vitruozzo product.
Everywhere I look in the enterprise space there are software companies trampling all over the GPL. We need a good strong courtcase to send some of these fuckers a message.....
People who think they know everything are a great annoyance to those of us who do.
If you're on the Cocoa Dev mailing lists, you'll know that CocoaTech have been very generous with their source code. They have released a number of the libraries they developed for Path Finder for use by other people. So maybe they aren't complying fully with the GPL here, but they're not exactly the evil hoarders of source that everyone seems to be rushing to assume they are.
GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
From the Cocoatech web site:
The GPL and Path Finder
It has come to our attention that there has been controversy about Path Finder's use of some open source code. Path Finder uses a heavily tweaked version of the open sourceiTerm application as the basis for Path Finder's built-in Terminal window and drawer. It always has been Cocoatech's intention to comply fully with the open source licensethat iTerm falls under. We believed that by releasing the complete framework that contains the open source code, this would fulfill the requirements of our usage of GPL'ed code. We are investigating this issue in depth and intend to fully comply with the rules of the GPL. We are also working with the authors of iTerm to make sure this issue is resolved. We wish to reiterate that we support the spirit of the GPL and the open source community, and did not / do not intend to break the rules. We will post another update to this web site to follow up on this issue. We hope to have a clarification and have this issue rectified as soon as possible.
SteveM
Maybe it's just me, but could this be a reason why the GPL has a hard time being accepted outside of the RMS following community? Wouldnt it have made more sense to design the GPL so that any direct changes to the source (of the GPLed code) had to be released, and they had to release the code that hooks the GPLed code into their program (what functions it calls etc) but beyond that they shouldn't be required to release any other code?
I think that would tend to promote the use of GPL much better.
T Money
World Domination with a plastic spoon since 1984
The object of the GPL is not to promote its own use, but to establish a corpus of open and unclosable software. If an developer wants to release code under the terms you describe, he can choose the LGPL or MPL.
Ah hah. Got it.
There are no trails. There are no trees out here.
> This is wrong! If they distribute the binary to me, I can ask for the source code, as stated by the GPL, if they are
> linking the GPL to their code, that is.
You can ask. But you haven't a legal leg to stand on, as you are not an aggrieved party.
Here's what happened: they released a product under a commercial license of their own devising. The product contains some GPL-protected/infected (depending on who you ask) source in it. However, they didn't release their source under the GPL.
Now, what exactly are they doing wrong? They are violating the implicit (shrink-wrap) license in the code they're using, in that they have released their source without the GPL even though they're using GPL source. That is to say, they have gone against the license agreement of the code. The aggrieved party is the person (or persons) who licensed that code to them.
As far as you are concerned, you have a product which is licensed with their software license, which doesn't require them to release any code. The fact that this software includes an illegally-stolen set of code gives you no sort of rights at all, until and unless the company is sued and required to make their software GPLed. The person who is being offended against, according to the law, is not the person buying the software, it is the person whose code has been stolen. Thus, no one else has 'standing' in the courts to sue over this, which, really, is the only 'power' that is useful in this case.
No, I am not a lawyer, I've just read up on copyright law.
-fred
Sign #11 of Slashdot overdose: You see the phrase 'moderate Republican' and you wonder if that would be a +1 or a -1.
> Congratulations: you've just described the LGPL (pretty much). It's up to the author to decide that license to use. If
> the author intended what you descibe, then s/he would have used the LGPL or equivalent license.
But, of course, it isn't that simple. There are lots and lots of people out there using the GPL because it was what was handy, because they don't understand it, because they don't really care about it, or, in two cases that I've actually seen, because they found some 'Hello World' sort of program that was GPLed and used the eight-line program with all the relevant #includes as the basis for their app, and didn't care about what the license was.
> All that aside, at least I couldn't care less about GPL acceptance: don't accept it, don't use my code.
So you wouldn't be amenable to licensing your source code under different terms if someone approached you and offered you a licensing fee?
That is, in my opinion, where a rational belief in free software fades into zealotry. Not wanting other people to take advantage of your code without crediting or paying you for it? Fine. Not wanting anyone to (in effect) hire you to code for their proprietary software, because all proprietary software is evil? Fanaticism.)
BTW, I hate the GPL, myself. But I certainly have no problem with the people who use it. I just don't, and won't. And I will never contribute to a piece of software that is covered by it, though, due to necessities of life, I am often forced to use some.
-fred
Sign #11 of Slashdot overdose: You see the phrase 'moderate Republican' and you wonder if that would be a +1 or a -1.
Are you sure about this? I asked a representative this exact question at a presentation. He stronly asserted that their ESXServer kernel was not based on Linux. I was skeptical, considering how much work would be required just to create all the drivers for the NICs it supports.
So, have you got any evidence of this? Its a serious allegation about a company whose livelihood is seriously invested in Linux.
you truly do show who is retarded...
I agree that the occasional Apple zealot is out of their mind, but those who decry all Mac users as zealots show themselves for the morons that they are. If you enjoy the internet -- namely browsing -- thank your stars for the existence of Apple/NEXT...If you value the existence of ubiquitous desktop publishing, thank Apple...I thank Linux, and more honestly UNIX, all the time for providing a strong and inexpensive platform for servers and networks.
We apologise for the fault in this post. Those responsible have been sacked. -- Signed RICHARD M. NIXON
Why do you waste your time reading at -1?
Is it just to whine about trolls like us and try to make your little fag group look righteous by fighting the trolls?
You sir, bore me to tears.
also, what part of THBT don't you understand?
Just in case you were too lazy to look it up on Acronym Finder it means "You Have Been Trolled" which is basically like saying to the parent "you are a fucking moron for replying to a troll"
Just as you have been.
YHBT, you stupid fuck.
Well, I have the ESX server CD's, and several machines running ESX server. If the kernel isn't Linux, it is a very good imitation. Tell me what info you need as proof, and I'll provide.
People who think they know everything are a great annoyance to those of us who do.
The cost of a license is explicit. The cost of adding extra projects to an existing team of coders is nearly hidden and doesn't have to be justified as much.
In addition, there's the security that comes from "you can't fire me - who will maintain your payroll?"
Clear, Dark Skies
Next, the commonly acknowledged meaning of a derivative work is generally that the two binaries share the same address space while running (that is, they are linked either statically or dynamically together at some point).
The second portion sounds to me, like it is tricky. The working their to my IANAL mind is hard to differentiate from a work in aggregate. When RedHat ships GPL'ed software and non-GPL'ed software together is "RedHat Linux" a larger work, and as the kernel is GPL'ed then all other software must be? No I wouldn't think so. However, I can't see how to draw a line so that it makes sense to me.
I think its pretty clear: if you can produce the "aggregate" or "whole" program using only the binaries of the GPL'ed work, then there is no need to license anything beyond such already GPL'ed code under the GPL.
Scenario:
You create project "A", writing your own source code. At some point you use/include project "B" in binary form. Project "B" is distributed to you under the GPL. If you now wish to distribute project "A" (which includes "B" binaries), then at a minimum you must continue to distribute the "B" part under GPL - this means your distribution of "A" must include source code for "B".
Comments?
This is why I will never use any GPL-license code in any of my products.
1. I've used PathFinder and have never used the iTerm functionality. It was not a deciding factor.
2. iTerm is a side feature at best, and it does seem like an example of why GPL (vs. another Open Source license like BSD, LGPL) will not be adopted by anyone that wants to create a business around software.
3. I would rather see the author pull out the GPL code rather than FORCE to open ALL his code up because of some side feature that he decided to add.
The arguments made here are proof that GPL is viral and a company could easily get caught in a mess.
As much as I hate Microsoft, I'm wondering if they're not right (at least about GPL). The draconian arguments made here are no better than Microsoft's.
Are you sure it isn't *BSD?
Dear CocoaTech, I have recently used your product PathFinder. It is my understanding that this product like any other product that runs on a Mac is ambiguously gay. I have been quite happy with this product as it has helped me "find" my "path" to young boys anal areas. I would like to have the sourcecode to this product that uses GPL(Gay Pleasuring License) code so I can tweak the product to find the paths of these young boys anal areas faster then ever before. Thank you, and I hope to hear from you soon. With much gayness, Father Randy "Pudge" O'Day
Dear Father O'Day,
I am happy to announce we will be releasing our product under the Gay Pleasuring License(GPL). We have worked hard-on this product and feel its ready to be turned over to the gay community of Catholic Priests. If you need more assistance for anything, and I mean anything, please don't hesistate to ask.
With much plesure,
Gaylord Plainfield
CocoaTech
If you are stupid enough to use code with a license you are not willing to adhere to you deserve to lose your precious 'ip'. Period.
The only people adversely affected by the GPL are greedy fucktards who want the advantages of open source (free code mostly from their pov), but do not want to contribute back to the community that initially created that code. Nobody has to my knowledge ever been forced to download GPL code and integrate it into their product, there is nothing viral about the GPL. IT would I think be better said to be somewhat like a drug, you take the first hit thinking 'hey it's free' but later realize that there is a price after all. Too fucking bad, nobody forced you to take the first hit.
Yes, I'm sure it isn't *BSD.......
People who think they know everything are a great annoyance to those of us who do.
This story is all over - it's at MacSlash too, as I am sure most of you know. It's also being discussed feverishly in CocoaTech's own forum.
Thus I find it interesting that the author of Path Finder, Steve Gehrman, has not yet come forward with a statement.
I have a copy of ESX here and it uses a modified
red hat machine to do the actuall install and indeed
boots back into red hat.
The interesting thing is during the bootup one of th items is:
Starting VMWare ESX Kernel [OK]
Not sure how it's srarting this seperate kernel but I do know that if you have hardware that the ESX kernel doesn't support, it will show up in red hat but not in ESX.
Food for thought.... Is the Kernel running in userland? Boy wouldn't that be strange.
http://freshmeat.net/projects/vmwaregpl/
Open thy mouth, slowly insert thy foot.
Twist and turn thy foot until your teeth start bleeding.
Let me preface this with this statement: "I am a code monkey. I get paid for designing and programming software. I do not beleive that the GPL is in MY best interest. My objections to the GPL might be because of this belief and my selfishness, but I try to convince myself otherwise."
My question, "Why would (should) a project release code under the GPL?"
If the sole purpose were to allow others to use the code to be more efficient in creating new programs, then a BSD licence would do. If it were to involve a community in development, BSD would do. If it were to distribute source code along with the binaries of the project, BSD would do. If it was to prevent someone else from using your code and taking credit for it, then BSD would do.
I believe that there are three main resons that someone would choose to use a GPL licence over a BSD licence:
- Religous - Belief in "the cause".
- Status - It's cool to use the GPL.
- Political - wrestle control of software from the big players.
I personally (as stated above) don't believe in "the cause", BUT if you DO, then that is a VERY valid reason to release code under the GPL. The Political reason's for releasing code make sense in some very specific cases (OS's and major apps).
My feeling is, however, that more and more projects are being released under the very restrictive (NOT free as in freedom) GPL because it is cool to be part of GPL community.
I don't know why iTerm choose to release under the GPL, but if it were anything but religous reason, it was a mistake. It is a nice app. CocoaTech integrates the app into its cool product (PathFinder), improves it, rerelease's the improvements, and continues to charge for its product. GPL fanatics bombard CocoaTech to release its source, its source of income. Given the license that iTerm was licenced under, CocoaTech is obliged to do so.
BUT, was this what was intended by the iTerm project when it released the project under the GPL. Only if the GPL was chosen for religous reasons. Politically, CocoaTech is not one of the big players, but instead could be a challenger to them - the GPL hampers the political effort here. As for status, its should be more cool to have more people use your code (is it?). That leaves the only religous reasons for releasing iTerm under the GPL.
Given that, the code was released under the GPL and it should be abided by. The best option I've seen in discussions so far, is the negotiation of a seperate license for CocoaTech from the iTerm team. Hopefully this can happen.
Please, if you are releasing open source code, ask yourself - why? And does it make sense. If you are using the GPL to keep microsoft from using your code to a floppy driver, your probably using the wrong licence. If you are using the GPL because you believe all software should be free (as in no cost), then you've got the right licence.
AND, before you flame a developer in support of the GPL, ask yourself why? Is it Political, Religous, or are you just cheap and want the developer's cool app free of charge?
I am living proof of the Peter Principle
Do you have a source or two for that number in your sig? I'd be very interested in seeing it.
Thanks in advance!
That the first browser was developed on a NEXT station by Tim Berners-Lee. NEXT was the evolution of ideas born of Apple(and Xerox/PARC) and today we have the same high-quality tools and language(ProjecctBuilder/XCode & Objective C) available to us with OS X.
My point is that not recognizing the contributions of many platforms is really disingenuous. Whatever your feelings about Apple today, to not acknowledge the contribution they have had on computing as a whole is intelectually dishonest.
Most computer users cut their teeth on Apple systems back in the day -- as well as Commodore PETs -- and today we have come full circle to a point where Apple is making great Hardware and software...but I don't care to shill for the company, my point was simply that the whole fanboy thing is overdone -- the fact is the Linux sheep -- and that might not include you, but who knows -- are vastly more likely to be wanabee weenies -- with less of a clue but more of an attitude -- than many other Platform users. My linux wiz-to-poseur ratio is 1 to 10,000 -- for every 1 smart and thoughtful Linux user I meet, I have to suffer the mindless-drone-think of 10,000 l337 h4xx0r5 intent on defending a platform that is not under attack.
I knew Linux...I fought next to Linux...you sir are no Linux...
We apologise for the fault in this post. Those responsible have been sacked. -- Signed RICHARD M. NIXON
All open source software modified by VMware and included in their products is located here:
l
http://www.vmware.com/download/open_sources.htm
Dear Anonymous Coward,
Thank you for your kind response regarding my post. As you can imagine, I receive so many positive responses regarding my posts, that I cannot possibly reply to them all. But once again, thank you for your kind remarks regarding my post.
Sincerely,
ErnstKompressor
We apologise for the fault in this post. Those responsible have been sacked. -- Signed RICHARD M. NIXON