Preview of GPL V3, Part 2 127
Meltr writes "NewsForge.com
has published Part 2 of their GPL V3 preview.
It clarifies
Part 1,
mentions the possibility of GPL V2.1, and discusses the system library exception
and the issue of patents." We had covered their initial "sneak preview" a month ago.
Is this a good time to change the rules? (Score:4)
Plugging holes (Score:3)
The GNU General Public License explicitly states that you can take the terms from any previous or future version of the license and use it in the place of the current version, as a user of the code and resulting software. Doesn't this clause make it impossible to plug holes in the GPL?
Here is the clause:
Re:Is this a good time to change the rules? (Score:2)
Bruce
Re:Plugging holes (Score:4)
Thanks
Bruce
New standard for distributing GPLd software? (Score:2)
For those who don't read that list, RMS was making a big fuss about how every single
There is no GPL Version 3 yet, so don't panic (Score:5)
Thanks
Bruce
Re:Nope (Score:1)
Re:New standard for distributing GPLd software? (Score:2)
Thanks
Bruce
GPL: Ok to use our code to kill. God bless GPL. (Score:1)
yes, it's me. (Score:2)
Bruce
IP myth (a myth that the GPL adresses) (Score:1)
Many say that there is a big difference between software and physical objects when it comes to selling, that things should be sold for it's direct cost. In the case of software, just the cost for the CD, manuals and distribution costs (like labour).
Lets take automobiles as an example. To make a car costs about 1/10 of what it is sold to the end customer for. This means, if you add labour at the factory, material costs, robots etc you just come up with about 1/10 of the customer price tag. If you buy a car for $30.000 the cost for making it at the factory was about $3.000.
Sounds like making cars is a real moneymaker doesn't it. Despite this most car manufacturers aren't going to great these days. The reason for this is that most of the costs are in intellectual property of different kinds. There are huge costs in developing new cars, engineering, testing etc. These are the big costs, not the product itself.
The same goes for, say oracle or Microsoft. Sure Gates and Ellison are rich but most of the money you buy office for is put back into the production of new versions. The costs are huge, salaries for thousands of people.
So indirect costs (and most of all different kind of IP) are often the biggest part of any business so you cannot just calculate with just the material cost.
GPLv3.ianal ? Anyone? (Score:3)
# more GPLv3.ianal
GPLv3.ianal: A file or directory in the path name does not exist.
# ls
GPLv3.txt
# more GPLv3.txt
Can not output: non-printable characters
#
Re:Plugging holes (Score:1)
That's why, when you write a program, you make sure you specify what version of the license you're talking about. In things I write, I prefer not to include the "any later version" clause, for a variety of reasons.
-RickHunter
Re:GPL: Ok to use our code to kill. God bless GPL. (Score:4)
The Open Source Definition disallows this sort of license clause. Look at the part concerning "fields of endeavor". When I wrote that part in, I was thinking about people who might want to prohibit use of their software by abortion clinics, or by anti-abortion protesters. The Berkeley SPICE software actually prohibited use by the police of South Africa, and that provision remained in the license long after Apartheid had ended. So, I decided that this sort of license provision wasn't really a good idea.
Thanks
Bruce
Re:New standard for distributing GPLd software? (Score:2)
Re:Is this a good time to change the rules? (Score:2)
In practice, there aren't that many people who want to really think about licenses and discuss them for an extended period. Those that will tend to represent larger interest groups. Most of the people who participate in those discussions should probably have gone to law school. Sometimes I wonder if I should have, but I like my life :-) .
RMS doesn't have too much power, because he can't compel anyone to apply a new license to their software. Thus, he must get consensus to be effective, and he has an incentive to engage in dialogue with the community. You could write your own license with all of the legal standing of his, you know, and if you got a greater consensus, people might prefer to use yours over his.
RMS is hardly elitist. If you write to him and you're civil, he'll answer. He used to answer me back in the 80's and early 90's, when he had no reason to know who I was.
Thanks
Bruce
Huh? (Score:5)
I'm sorry to ask it, but who are "we"? Certainly not I. The GPL is a bit too restrictive for my tastes. Upon a second reading of the LGPL, it may be a violation of the LGPL to release non-libraries under that license.
Sure, mod me down as a troll. I really don't care. I have a differing opinion and should be silenced.
Imagine, if you will, working on a paper for a class. You decide to release this paper under the mythical Free Paper License, so that content providers can use it and so that other students can benefit from your work. So you go to the library and start collecting sources. You start referencing sources. You start quoting sources in your article.
But wait! You're in violation of your license! Wha...? You heard me. The mythical Free Paper License requires all referenced content to be available under the conditions of either the FPL or the LFPL.
What to do then? You start writing a supplementary paper that will be available under the Lesser Free Paper License. Unfortunately, at this point your professor balks, stating that your paper should be dependent only on outside sources, and that he/she won't accept a paper that has extra dependencies. So you try to bribe someone else into writing the LFPL paper for you. No luck. So much for making your paper "Free."
The point of all this? The GPL is too restrictive IMHO. While RMS may see real danger to allowing linking to "non-Free" libraries, I fail to see it. It's no more restrictive than quoting a source in an academic paper that falls under a restrictive licensing/copyright notice.
Re:IP myth (a myth that the GPL adresses) (Score:2)
Thanks
Bruce
Re:Bruce, a question (Score:1)
Bruce
GPL value diminishes with new versions (Score:2)
I see the version clause as a necessary evil. If you write a good piece of software, you maximize its utility by specifying "version $foo or later," where $foo is as low as possible. If Linux is GPL 2 and Mozilla is GPL 2.1 or greater, you have an artificial obstacle to sharing.
Compare this to LGPL clause that permits relicensing under the GPL. You may not want someone to make a GPL fork of your LGPL library, but that's a risk you have to take to realize the goal of the LGPL--linking with GPL code.
Re:Huh? (Score:2)
If you can explain better why you think the LGPL doesn't work for libraries, without resorting to metaphor, I'll try to debate you.
Thanks
Bruce
Re:Is this a good time to change the rules? (Score:2)
Sure - fame is a powerful force and one that I take advantage of. But people here on Slashdot and in the broader community haven't been afraid to take issue with me, and prove me wrong when necessary. I doubt RMS would be treated any differently.
Thanks
Bruce
Re:Huh? (Score:1)
To tell the truth, that's part of the reason I picked literary works.
As far as the LGPL is concerned, I could be going on a false assumption. I'm human, and an extremely fallible one at that.
Re:GPL: Ok to use our code to kill. God bless GPL. (Score:2)
The more interesting question is how do you define "Kill people" for example if the US Army used a linux box as a mail server is it being used to kill people? I would say no.
I'm ignoring the moral issues of when is it moraly acceptable to kill someone and when is it not.
The cure of the ills of Democracy is more Democracy.
Re:New standard for distributing GPLd software? (Score:1)
He never said that wasn't right; He said that perhaps the GPL should allow having a link to the GPL rather than including it.
keeping license chocolate out of foo peanut butter (Score:2)
This is one of the clauses I really like about the Debian Free Software Guidelines [debian.org]. (I prefer to refer to the DFSG, as the Open-Patch^H^H^H^H^HSource Definition is weakened by the OSI's role in interpreting it. Yes, I know you wrote them both.) A good free software license should restrict its domain to the software.
I hate that university research continues to produce software for "non-commercial" use. The GNU GPL has nothing to say about using software, although the waters have been muddied by recent discussions about dynamic linking, plugins, and CORBA-like components. (What, after all, is the difference between dlopen() and system()?) The GNU GPL should stay that way. I'd rather leave the "ASP loophole" in place than muddy the waters even further.
Likewise, free software licenses should say as little as possible about patents. Every once in a while, Slashdot posts an outrageous patent story and someone says, "Hey, let's amend the GPL to punish patent aggressors." Bad idea. Copyleft to subvert copyright. Patent pools (e.g., mutual defense [mit.edu]) to subvert patents.
Re:Huh? (Score:2)
However we cannot put things in the way "whites pass here, niggers pass there". Such Apartheid is exactly what many corporations will wait to kick the free software into a ghetto. One of the main points why these guys got their monopolies crashing is exactly the fact that developers started to develope free apps, based in their software. For example, the case of MPEG4. We linuxists now have a chance to see high quality video due to one tool based in a closed source DLL. And these moments are fundamental. It is less probable that someone will ever give you the MPEG4 specs. It is highly improbable that some corps behind this stuff will ever produce even a priced product in Linux. And we cannot close doors and say "good, be happy with your crap, I don't need it!" This is child's play, no more. It will take monthes to produce a free standard. And it will take years to have it accepted. Oggvorbis is an example of this.
So, while I may agree that we should harshly restrict some possible escapades from closed source partisans, we should also not fully close the door. Anyway a developer should always have the right to choose a licensing that fits best his needs and desires. Frankly, here I would prefer that we study the matter with more care and avoid stupid hurry-ups.
Re:Is this a good time to change the rules? (Score:2)
In a sense, can't the GNU project do exactly that? There's a clause I have always wondered about in the standard template people copy into their files to signify that it is GPLed. The interesting phrase is what version you can use:
Most people just copy and paste this into their programs. But what if version 3 of the GPL has some big deficiencies? What if RMS dies, and his evil half-brother tkaes over the FSF and starts adding in exemption clauses that let distributed sources be kept closed?
IANAL, and that's why I worry a bit about that clause. I hate the idea of licensing my software by a license that doesn't even exist and whose terms I don't know.
Any ideas?
Re:Huh? (Score:2)
Those programs were made by me and mostly used only by me. So why I would close the source out of myself? Besides, while this is a cost in performance, it is much more economical in terms of disk space and memory.
Later, in the mass advent of computers, this was also used as a way to close source from the eyes of developers. In the long run this came into a mania. One example of this, I met situations when I fought bugs very well inside DLL's and which didn't have any one reference on the SDKs. Debugging it, you come into stuff that was nearly like what was written on the SDK but SLIGHTLY different (one paramater more, one less, a different call order, etc. etc. etc. etc. etc.). Frankly it seemed something like running over the Labyrint. I drop programming on Windows, somewhere in 97-98 because it was getting too hard to do some bug-fighting. 90% of the problems were coming of different DLL versions or well-hidden bugs inside Windows code.
The fact that now people mainly meet libraries and headers for them is not a rule of the thumb for the creation of such stuff. Back in the 80's there were companies, like Borland, that offered a large bunch of this stuff together with the source code.
Re:Huh? (Score:3)
It's difficult to not cover linking and maintain the quid-pro-quo. The idea is that I am not giving away my code by GPL-ing it, I am inviting others to use it, and I am inviting other programmers to participate in an exchange with me by giving me the same terms on their code that I am giving them on my code. If you don't cover linking, there's no longer anything that provides incentive for an exchange because the other party doesn't have any obligation to me.
Regarding whether a derived work of a GPL product has to be a library, LGPL section 2(a) in combination with the three paragraphs of section 3 would have a derived work that is not a library not be covered by the LGPL and suggests that the GPL be applied. But given the definition of a library at LGPL section 0, second paragraph, you could make the case that any source-code-available work is a library.
Thanks
Bruce
You betcha! (Score:1)
Strengthening the Linking clause weakens the GPL (Score:2)
If the user is doing the linking of a non-Free module to other Free Software, I don't see
People make a great deal of the "derivative works" concept in the GPL. But remember that the GPL gets all of it's strength from Copyright law. It is not an EULA -- it is a true License in the legal sense. One of the things that is not copyrightable is a "method of operation". The canonical example of this is the manual transmission shifter pattern. The person who first designed the H which is now universal could not have copyrighted that design decision becuase it was a method of operation.
I argue that an API *is* a method of operation and is not copyrightable. As such, anyone can utilize that API without creating an infringing derivative work. The GPL, as a license, can't restrict that becaue it can only restrict derivative works.
An this is a *good* result. What if Microsoft attempted to claim a copyright over their API? Wine could not exist. MS could also demand royalties from anyone who used one their libraries in Free Software. This limitation of Copyright Law is a *good* thing and it protects us.
Now I'm all for encouraging Free and Open Software. But I'm not willing to give up my rights to do so. Turning the GPL into an overreaching EULA is not the way to go.
Re:Is this a good time to change the rules? (Score:3)
Thanks
Bruce
Re:Is this a good time to change the rules? (Score:1)
Thanks
Bruce
Re:You betcha! (Score:3)
Thanks
Bruce
Re:IP myth (a myth that the GPL adresses) (Score:2)
The problem is that software is, by itself, abstraction. And today, most of what it produces is also an abstraction, that only we are capable to understand. This whole evergrowing pyramid with a weight of air is the base for what software should be the most opened possible. Closing a critical door of development or claiming fees for a particular algorithm may stop the development of a critical sector per se. And we are still monkeys here. We just came out of the trees and started building the first wheel. If we are going to hamper the paths of development, we may stop in such a creative swamp that things will smell worser than a Middle Age street.
Re:Strengthening the Linking clause weakens the GP (Score:3)
Bruce
Re:Huh? (Score:2)
Re:New standard for distributing GPLd software? (Score:2)
Thanks
Bruce
Re:Plugging holes (Score:3)
I don't think linux will get the 'or v3' clause...
Re:Huh? (Score:1)
Geez, man. Could you fall down and bleed a little louder?
--
Re:Plugging holes (Score:3)
No, and that's why you should leave the "any later version" part in place.
Bruce
Re:Is this a good time to change the rules? (Score:1)
Thanks for the info. I've always had trouble trusting any organization whose only identifiable figures are a monomaniac and a lawyer, but now I feel much better.
[wtf is Tim Ney?]
Re:You betcha! (Score:1)
No, the final straw was when Qt was released under the GPL. Suddenly the Slashbots realized that the GPL is the opposite of 'free'. Fortunately the QPL is still applicable, too.
Here's a MUCH better analogy... (Score:2)
The first piece you make, costs you $15,000. The rest of the peices off the same mold cost $0.001. It was the initial cost, along with R&D time, that makes the item expensive to produce. Making the Nth copy is just pennies.
i.e.
You spend 2 YEARS writing a game, on a 2 million dollar budget. The first [gold] CD produced has the high cost. The 2nd, 3rd, etc, cost almost nothing to reproduce, just the physical media.
In both cases, people expect to sell Y copies at Z price to offset the total cost of production.
Re:Is this a good time to change the rules? (Score:2)
Re:Is this a good time to change the rules? (Score:2)
Thanks
Bruce
Best Java License? (Score:1)
I have been writing a Java library that we originally were going to license as GPL. Someone pointed out that the whole project would be mearly an acedemic exercise because users would no doubt be using non-GPL code for just about everything else that might call our library in which case they would be in violation. So we switched to LGPL for genderal industry compatibilty. Would you suggest this is the wisest license for Java software?
Similarly, with LGPL could someone simply change access to constructors and methods to "public" to circomvent package protection and allow them manipulate/extend the library from their own proprietary packages? This would not be suitable reciprocation IMO. If not, LGPL works perfectly for Java because I can excercise the license through package protection :~)
Re:hmmm... (Score:1)
Bruce
Re:GPL: Ok to use our code to kill. God bless GPL. (Score:1)
Bruce
Re:Huh? (Score:2)
coherent: the whole of the source for all binaries that you distribute
should be freely available. This makes sense: users don't really have
free use of your code if part of the source of the code is
commercially tied with a restrictive license.
I lost sympathy with the GPL over the KDE/Qt fiasco (especially in
its second, QPL, manifestation). Here the whole of the source was
available under a free license, *but* the free license happened to be
incompatible with the GPL. OK, old story, I'll just say that I think
the direction the GPL v3 should be going is to make it tolerant of
other free licenses.
I don't see how the dynamic linking problem can be avoided without
spoiling what makes GPLv2 coherent: namely its focus upon the actual
distributed binary.
Re:Best Java License? (Score:2)
Thanks
Bruce
Re:Is this a good time to change the rules? (Score:1)
Bruce
The GPL's complexity may end up weakening it (Score:1)
I hope that a new GPL version, in its attempt to close loopholes, doesn't become even more difficult to parse, and thus more likely to result in a bad decision.
Version Three Shenanigans (Score:3)
1) Further restrictions upon linkage. Dynamic and runtime linkage is *using* the software in the manner it was meant to be used. And the freedom to use the software in any way is the FIRST freedom listed by the FSF. It's sensible at times to restrict what libaries an application can link to, because that could co-opt the application and make it unfree. But the reverse is impossible. There is no way to make a libary unfree by using it for an unfree application. No derivative work is being made under copyright law. Nothing is being modified or distributed with additional restrictions. The only thing being hurt is the author's sensibilities.
In RMS' zeal to prevent proprietary authors from using his libraries, he ends up hurting Free Software authors who use non-GPL licenses. The GPLv3 should be looking at ways to include non-GPL but Free Software authors in the community, instead of seeking further ways to exclude them. As it now stands, software in the public domain or under a BSD, MIT or other "copycenter" license cannot use GPLd libraries, such as readline or Qt/Embedded. Some proposals for the GPLv3 would further alienate these freedom loving folk.
Looking at the various dynamic (not static) libraries in existance, the only ones that I know of that dictate the terms of the application's licensing are are small subset of "Free" Software libraries. (there may be some proprietary licenses that do this, I am just not aware of any) Microsoft doesn't care how I license my MFC application. RogueWave doesn't care how I license my Tools++ application. Only the FSF demands I use a specific license for my own original and non-derivative works.
2) New restrictions upon use. That RMS is even contemplating this scares me. By *use* I mean the ASP "loophole". Again, this is another case where the only harm is harm to the author's sensibilities. RMS and the GPLv2 allows me to modify GIMP (as an example) for my own private use. They do not restrict my friends from coming over to my residence and using the modified GIMP on my computer. But the GPLv3 will regulate how my friends can use my modified copy of GIMP if they do so over the internet instead of physically walking to my residence. Where is the logic in this?
There are parts in the GPL v 2 that need cleaning up and clarifying. Please do so. But don't add new unprecedented restrictions. If the only thing being hurt is your sensibilities then leave it out.
Re:GPL: Ok to use our code to kill. God bless GPL. (Score:1)
It should be pointed out that the commandment is
"Though shall not Murder" not "Though shall not kill".
The cure of the ills of Democracy is more Democracy.
Re:You betcha! (Score:2)
But the embedded version is not dual licensed under the QPL. This is a serious mistake on Trolltech's part. Konqueror was just ported to work with Qt/Embedded, and it's cool! But it is ILLEGAL to port Kicker or KWin over. Kicker and KWin are under the BSD license. They cannot link to a GPL library. I have written a Qt application that would be perfect on a palmtop, but it cannot use Qt/Embedded since it is under the BSD license.
Re:Is this a good time to change the rules? (Score:2)
I see the spirit of the GPL as being a set of permissions (with conditions) granted to the user over and beyond what copyright allows. But some of these GPLv3 proposals I have seen would have to add a restriction on top of what copyright imposes, particularly with regards to the ASP "loophole". In or other words, the GPLv2 is a copyright based license, but the GPLv3 could end up being a contract based license.
My GPL'd Java program (Score:1)
In the future I'll have to distribute the game I'm working on [sourceforge.net] for Windows, Linux and possible other platforms.
The program depends on a JRE (being written in Java) and several libraries published under the LGPL and zlib/libpng license.
Now, from the GPL I understand that I can not distribute the JRE along with my program. What I think I am allowed to do is let my program's installer (which is custom license, almost a free one. I understand that I can use that) download the JRE and then install it.
For the libraries I understand that I can distribute them along as long as I clearly seperate them from the other code. I plan to do this by packaging the libraries as JAR files.
So my question... am I correct in my assumptions concerning the JRE, Windows installer, LGPL- and zlib/libpng-licenses?
Re:Plugging holes (Score:2)
I wouldn't want to sign up at a bank where I give my money to them and have them say, "it's all your money according to the license, but we reserve the right to make a new license that says whatever we want in the future."
It is a problem that there are multiple copyright holders for Linux, but that's a tradeoff to make for the safety of a major software project.
Linking? I don't get it. (Score:3)
Are the following situations illegal under the GPL?
1) I write a GPL'ed application that links to a closed-source, proprietary library, such as Motif, and distribute just my application's source.
2) In updating the code of a commercial, closed-source package at work, I take advantage of a GPL'ed library. I make no changes to the library, and I include the source of the library in the distribution, but due to not wanting to have my company not sue my ass off, I don't include the source to the entire project. The library is not statically linked into the program -- it is installed seperately.
3a) For this same piece of software, I include several shell scripts to do parts of the functionality with customized versions of a few GPL'ed utilities. I include the source for the GPL'ed utilities, but I do not include to source for the larger package that includes and actually invokes these shell scripts to do certain tasks. The shell scripts are not GPL'ed.
3b) The shell scripts are GPL'ed, but the app that calls them still isn't.
4a) I build the closed application with a hacked up version of bison. I include that bison and it's source code, but not the application's.
4b) I do not include that version of bison or its source.
5) My closed-source package talks to a CORBA object that defines a well-known interface. That object is replaced with a GPL'ed version on some user's machine.
If any of these are illegal, then isn't this extremely unfriendly to every known license other than the GPL, including the BSD licenses and public domain licenses?
It's never OK to kill (Score:1)
To split a few hairs, I would ask, "acceptable to whom?" Killing another human is never acceptable to my ethical code. It may be to yours. We'll never resolve our differences on this.
A more useful consideration may be how people actually respond to killing under necessity. Guilt and severe emotional distress are quite common among soldiers, police officers, and others who kill under necessity (self defense, to save innocent lives, etc.). Not everyone has this response, but many do. We should trust this fundamental human reaction and say that while we would not call these people "bad" for what they did, their sense of guilt is real and should be respected.
The best sense I can make of it is that you can find yourself in a situation in which there is no morally acceptable choice. My philosophy of conscientious objection to military service is that once you are in a war, you may well find yourself facing a situation in which you cannot behave ethically. You must choose between killing someone else and having that other person continue to kill people. Neither killing the other, nor allowing him to continue killing is an acceptable choice. Either leaves you with dirty hands. The ethical thing to do is to plan ahead and avoid the situtation if possible.
Perhaps you can't avoid the situation. Too bad---no one promised that you would be given the opportunity to get through life with a clean conscience. Many major ethical thinkers, including Aristotle and Calvin, understood that chance and luck play an important part in the ethical life and that you may be damned through no fault of your own, but by circumstances beyond your control.
Re:Huh? (Score:2)
Fair Use is kept deliberately vague and loosely defined in law, since listing some specific Fair Use rights would imply that any unlisted rights were forbidden. To my mind, and in every direction that I look at it from, dynamically linking to a library is Fair Use. That's the whole point of creating a libary to begin with. If the GPL doesn't want non-GPL applications dynamically linking to GPL code, then it should stop pretending that it is operating under copyright law, and come right out and admit it's really a EULA. Copyright law gives me the right to freely reference a work, and so should the GPL.
Re:You betcha! (Score:2)
Supreme Lord High Commander of the Interstellar Task Force for the Eradication of Stupidity
Shooting yourself in the foot (Score:2)
Yeah, let me discourage my military from using technology that peopl around the world work to make the best so that they'll be forced to use something like Windows. We've all seen how well that worked out for the Navy.
Re:You seem (Score:1)
One more I forgot (Score:2)
Re:You betcha! (Score:2)
What about euthanasia or suicide? (Score:2)
I don't think so (Score:2)
Bruce
Re:Huh? (Score:2)
Bruce
Re:Is this a good time to change the rules? (Score:2)
But that is moot because the old license with its looser provisions is still available to you.
Thanks
Bruce
Re:Plugging holes (Score:2)
What if there is a legal problem with the GPL and we can't fix it because Linus has restricted the kernel to "version 2 only"? We'll be up the creek. And remember that there have been few court tests of Free Software licenses, so we need to be able to clean up a problem if one comes up. By the time this happens, some of the Linux copyright holders will be dead (if some aren't today) and we'll have to write out and replace some good free code in order to solve the problem.
Thanks
Bruce
You are seriously mistaken! (Score:2)
In automobiles it is worth an entire engineer's yearly salary to figure out how to replace a 10-cent widget with a 5-cent one. This saving of 5 cents on a 15,000 dollar item is important because the margin is very small.
Yes there are huge armies of engineers designing the cars, but their cost is still pretty small compared to the materials, labor, shipping, sales commisions, advertising, etc. You have to take into account the enormous numbers of cars sold.
GPL patent defense (Score:1)
GPL could do a lot more than it does now to protect open-source authors from patent abuses. While there are some patent-only companies, most of the worst software patents are held by software companies, and these companies often also use open-source software.
One thing GPL could do is make companies that use open-source software implicitly license other users to use that software as well. This might seem unenforcable or extreme, but IBM does something like this in its open-source license. The IBM Public License is at http://www10.software.ibm.com/developerworks/opens ource/license10.html [ibm.com]. Here is a relevant
snippet:
Similarly, the GPL could be amended to add something like the following:This is a purely defensive approach, which works for IBM because it is a big company. Open-source authors are not huge companies, which means that it would be a good idea for the language to create a counter-claim in their favor, in addition to protecting them against liability. Defensive language does little to deter intimidation lawsuits, but if the open-source author can also counter-claim for significant damages, then potential plaintiffs will think twice. An example:
Question to Bruce or anybody else about the LGPL (Score:3)
The problem is that the exact words of the LGPL seem to require dynamic linking of my library, so that it can be "replaced by the user". This imho is unacceptable, since my library is not popular and thus must be provided with the appliacation. This requires the application to be "installed", which greatly reduces it's ease of use. Perhaps more important: it means a programmer cannot modify my library (releasing the code modifications) and use it in their closed program, since the shared library would conflict with other users of my library, this completely defeats one of the main advantages of Open Source, which is that you can change it!
I have taken to adding a disclaimer that says "static linking of my library is allowed, no matter what the LGPL says, and is in fact even encouraged". But I would like to know if there is any better way, or if the LGPL allows this.
I would prefer not to make my own license just because of this, since we have way too many licenses as is, but this worries me no end...
Re:Linking? I don't get it. (Score:1)
2) Read Section 2 paragraph b "You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License." If you did not distribute or publish the derived package you would be off the hook, but since you say "commercial" presumably it is to be distributed in return for money. Trouble.
3a,3b,4a) If you have read this far in the post you should have read section 3. "For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable." All modules means ALL modules. Trouble.
4b) Same as the answer to Question 1, if bison is something normally distributed with the major components of the OS you are ok, otherwise trouble.
5) Dynamic linking is hard.. let's go shopping! My best understanding of this case is that you are not in trouble. (You could be in trouble if the original non-GPL object had not existed, but since it does exist I think the fact that a plug-compatible GPL equivalent object exists is irrelevant. I figure I have a 50% chance of being wrong, so someone better correct me.)
I know it's hard to understand licenses and official fine print like that, but it is still important to read them. :-)
Re:I don't think so (Score:2)
As for the wrapper stuff, that was the argument that RMS used. I do not have his exact quote readily available, so I apologize if I erred in its paraphrase. It was in response to a question as to why Free but non-GPL applications should not be able to link with GPL libraries.
I agree - Clarification needed? (Score:2)
1) A call to a URL gives you the exact time based on an atomic clock in Boulder. You call that URL in your code and use the results in some calculation. Does the source to the URL you call have to be under the GPL in order to use the GPL 3.0 for your code, or for someone to make use of your code with the URL in some manner.
2) Now that URL is a corba/RMI service, but again not GPL'ed. Can I still call it and use the GPL?
3) Simple case, that I think draws out the real issue - you have a PCI card that does encryption for you with a closed source API (or possibly comes with a closed orb to call as a CORBA service). Can I not use that in a GPL'ed program?
I think the real issue is twofold - what he really wants is partly to not encourage the use of non-free libraries, but even more importantly he does not want Free (GPL) programs to ever have ties to non-Free programs so that the Free code users can be harmed by alterations/vanishings of the non-Free library. Say the encryption card vendor went out of business and lots of Free programs had been written based on them.
I guess a side aspect of that is that they are trying to stop the case where the card maker would ship some Free tool bundled with the card and a non-Free part to access the card. Still, by examining the Free portion it seems you could figure out how to work with the card.
I still don't really see the point of it though. The Free programs could always be patched to use some other library if troubles ensued. Also, it seems like it would NEVER be bad to have a Free program that had "drivers" to use some non-Free code.
I'm not trying to start a flame war, I like the rest of the GPL but this part seems odd to me, and I'd like to understand the philosophy behind it.
Re:Huh? (Score:2)
If a take a particular binary and translate its machine code into English, I would find something very similar to "this program references routines in libreadline.so", and "jump to this relocatable address." In neither case is code from the library actually included in the application. All that are there are references. Of course, header files could be written so that using them places library code directly into the application (macros or inlines), but the basic concept of dynamic linkage is still referencing.
Most literary works do not strictly require the reader to look up and read all of the references in the bibliography or footnotes, while most software applications do. But I don't think the manner in which a work is used has any bearing upon its derivation.
Re:Huh? (Score:2)
GPL does not permit combination with any license that applies further
restrictions, as QPL did. The authors of some packages in the early
KDE distributions made use of GPLed code and then released their code
(which made use of Qt) under the GPL. Since they were not the only
copyright owners, they were not able to waive enforcement of the
clause (as, I believe, RMS has said that `pure' KDE code was able to).
I happen to believe that it is possible to interpret GPLv2 in a way
that permits compatibility with QPL and other free-but-incompatible
licenses: namely to say that the redistribution of source demanded by
the GPL is to be interpreted as `separate free distributability' (the
plausibility of my view comes from the fact that the GPLv2 does not
directly require that the GPL is applied to the source redistributed,
the relevant parts are sections 2 and 3, but this requirement is
inferred from what I regard as ambiguous language in those sections).
In fact, though, that is not how the FSF or Debian have interpreted
it.
Re:It's never OK to kill (Score:2)
In war it is generaly considered alright to shoot at other soldiers and military targets, but not civilians.
The cure of the ills of Democracy is more Democracy.
Re:Huh? (Score:2)
libraries that are a part of the standard part of the OS (the
convoluted section 3 again). It has been argued that Qt might fall
under this: it isn't really plausible, and again, neither the FSF or
Debian interpret the GPL this way.
Re:Huh? (Score:2)
Re:Huh? (Score:2)
Re:Huh? (Score:2)
Re:Version Three Shenanigans (Score:2)
This is wrong; I've actually asked RMS himself about this. It is possible for any software to link to GPL'd software as long as the software is capable of being placed under the GPL. The combined result, after linking must be under the GPL, but the original program can still be placed under a less restrictive license than the GPL.
For example, if you write a BSD program to link to a GPL library, this is kosher, because one can place BSD-style licensed programs under the GPL. Your code alone still remains under the BSD license, but the combination, with the linking, is under the GPL.
Re:Version Three Shenanigans (Score:2)
You say "after linking must be under the GPL". Does this mean only temporarily while the user is running the program, or that that the author must distribute it under the GPL after linking it at build time? In other words, would Debian (as an example) offer the application under the BSD license, or would they have to offer it under the GPL? In the case of the latter, the GPL is still effectively telling me what license to use.
Re:Version Three Shenanigans (Score:2)
The way I understood it, the use of your modified GIMP across the network counts as a rather wierd kind of "distribution". Thus, there would be no restrictions on how your friends could use your modified GIMP, but you would be required to make its source available to them, the same as if they had downloaded binaries from you and were running them on their machines.
Personally, I think this is a good thing. I don't see any substantial difference between downloading a binary and running it locally, and running that binary remotely on someone's web server, with the input/output of the program going from/to you. I don't see how you can make the I/O channels of your binary available across the web and claim that your modified GIMP binary is only for your own private use.
Adding clauses to the GPL preventing this will make the programs covered more free, because it means that improvements will make it back to the community, rather than being hidden behind a false "private use" ASP screen.
Re:Huh? (Score:3)
The Free Software Foundation [gnu.org], authors of the GPL.
The GPL is a bit too restrictive for my tastes.
Then don't apply it to your software. Or modify it to suit your tastes. Although a modified version may not be free, or may be incompatible with the GPL. This would mean that you couldn't use GPL'd code in your program
Upon a second reading of the LGPL, it may be a violation of the LGPL to release non-libraries under that license.
Nonsense. You can apply any license to any work you like. I could write a book and GPL it if I wanted, even though it doesn't make much sense. The GPL defines "Program" as "any program or other work"; the LGPL defines "Library" as "any such software library or work". The "work" can be anything you have copyright of.
But wait! You're in violation of your license! Wha...? You heard me. The mythical Free Paper License requires all referenced content to be available under the conditions of either the FPL or the LFPL.
You can't be in violation of your own copyright license. You can't sue yourself for copyright infringement. The GPL doesn't require that all copies have certain properties, it requires that all people who have obtained the software under the GPL obey certain restrictions. You have not obtained the software under the GPL. In any case, since you're the copyright holder, you could always grant yourself a specific exception.
Re:Best Java License? (Score:2)
Yep, they could do that. There's no way to prevent this and be OSD-compliant (if you care about that), because the OSD requires the license to allow users to make any change to the code.
Since each Java class is essentially a shared library of its own, I find the LGPL's definition of a library a little vague. That's why I prefer the MPL, since both the MPL and Java are designed around the unit of an individual file.
Re:Version Three Shenanigans (Score:2)
If my friend uses my modified GIMP over the network, he is not receiving GIMP. No portion of the binary is being transmitted to him. What is the legal difference between his using my GIMP locally on my machine or using it remotely on my machine?
I don't see any substantial difference between downloading a binary and running it locally, and running that binary remotely on someone's web server
In the former, I have actually distributed GIMP to you. You now possess a copy of it. In the latter you do not possess a copy of it, since the software has not been transmitted to you.
This is not the freedom of Free Software, but closer to the openness of Open Source. Contributing back to the community is merely a side effect of Free Software, not its goal. Users only have the right to source code for those programs they possess of copy of.
I do not restrict your freedom by putting a lock on my own door. I can only do that by putting a lock on *your* door.
There is a way for the GPL to restrict this modified GIMP of mine and still be operating under copyright law. And that is to start regulating Public Performance. This would be a very radical thing to do, and the implications of opening this pandora's box should be thought out long and hard.
Re:You betcha! (Score:2)
What you CAN do with a BSD program is to wrap it with a GPL license. But any recipient has full legal authority to remove the "wrapper" from all BSD parts. Because of this, wrapping a bare BSD application with the GPL is pointless. It does serve a purpose, however, when you wish to combine a BSD module with a GPLd module.
In reference to a Qt/Embedded version of Kicker, the licenses are in conflict. The BSD license gives the users many permissions that the GPL does not. You can indeed by sued by Trolltech for exercising the rights given you by the Kicker authors.
The BSD license is considered compatible with the GPL because you can include BSD code within GPL code, and distribute the whole under the GPL. But the reverse is not allowed. You cannot include GPL code within BSD code and distribute the whole under the BSD license. You would have to remove the GPL code first. And since Qt/Embedded is GPL, you could not distribute Kicker under the the author's own license without first "removing" Qt/Embedded.
Re:Huh? (Score:2)
However, as the copyright holder, you are totally free to impose whatever restrictions you choose. It is perfectly acceptable to say that these restrictions are the same as the GPL, except with the following alterations/additions/whatever. The license you have applied is then not the GPL, but it may still be GPL compatible, depending on the alterations.
Re:Linking? I don't get it. (Score:2)
Under the current copyright system. It is plausible that a system could exist in which derivatives could be protected without requiring ownership.
Thus the ownership imposed in the GPL is more of a legal hoop that the FSF has to jump through in order to achieve its slated goals of free software. There's nothing wrong or hypocritical with opposing software ownership, and then using it as a means to the end of free software. The GPL only exists as this means as a result of the current copyright system system. It only endorses ownership in as much as it is forced to in order to have legal grounding in the current copyright system. If a solution could be found which did away with software ownership and still preserved the freeness of free software, I'm sure the FSF would jump all over it.
Personally, though, I've never been sure about how I feel about software ownership.
Re:Version Three Shenanigans (Score:2)
Yes, hence the public performance hoop RMS is thinking of jumping through.
If my friend uses my modified GIMP over the network, he is not receiving GIMP. No portion of the binary is being transmitted to him. What is the legal difference between his using my GIMP locally on my machine or using it remotely on my machine?
While he is not receiving your modified GIMP, the use of it is effectively unchanged. When the GPL (both 1 & 2) was written, the only way to use a program was to receive a distribution of the binary (or source) and run it on your computer. This is no longer true. It is possible to use programs over the Internet (ie. ASPs) without ever receiving the binary or source. This situation is just as bad as proprietary non-free software where you get a binary but no source, perhaps worse. Hence RMS wants to fix it.
This is the crucial point - that it is technically possible to allow people to use a program without ever 'distributing' it to those users, in the copyright sense of distribution.
This is similar to public performance, because a public performance of a song is not distributing the song to the listeners, but it is allowing them to hear and appreciate the song.
Contributing back to the community is merely a side effect of Free Software, not its goal.
Nonsense. That a free work can never be made non-free, either in its original form or as a derived work, is an explicitly stated goal of the FSF. They feel that free licenses like the BSD license aren't useful, because they don't guarantee the freedom of all derivative works like the GPL does.
Users only have the right to source code for those programs they possess of copy of.
And users have no right to license derivative works under anything but the GPL. This is a tradeoff between the rights of individuals and the rights of society as a whole, where the rights of society have won. It is more important to ensure that free software stays free than it is to allow derivatives to be licensed freely.
I do not restrict your freedom by putting a lock on my own door. I can only do that by putting a lock on *your* door.
No, but you can infringe upon the previous point if you lock your door, and your house contains a modified version of my free program. If that's for private use, fine, but (following the analogy) allowing people to stick their arms through your window to use your program is arguably not private use. By locking your door you can restrict my free access to the source of a derivative of a GPL program.
And that is to start regulating Public Performance. This would be a very radical thing to do, and the implications of opening this pandora's box should be thought out long and hard.
I have confidance that RMS will do nothing but that. He's in no hurry.
Re:Linking? I don't get it. (Score:2)
The only way to guarantee certain attributes of Free Software is to own the software. If you wish that all distributions of your authored software retain access to the source code, you have to have sufficient ownership rights in it order to assert that control. You cannot control something if you do not own it (unless you employ coercion).
There's nothing wrong or hypocritical with opposing software ownership, and then using it as a means to the end of free software.
If the FSF viewed software ownership like "fire", then fought fire with fire, that's okay. But reading throught the FSF pages, I get the distinct impression that they believe software ownership to be evil and immoral. If so, then owning software with a GPL label on it is still evil and immoral. It would be like fighting murder with murder. As my Mother always told me, two wrongs do not make a right.
As an aside, if the FSF ever got its wish and copyright law suddenly disappeared, nothing much would change. The vast majority of proprietary licenses are not predicated on copyright law, but on contract law. Lack of copyright law would not affect the Microsoft EULA in any way. What would happen is that those people who wished to protect their software ownership rights (whether the be Free or proprietary) would find other ways to do so besides relying on government recognition. Take a look at this Free Nation article [freenation.org] for an anarcho-capitalist look at copyright law. The Free Nation site also has other articles on intellectual property from a libertarian perspective, including the one mentioned at GNU.
Re:Question to Bruce or anybody else about the LGP (Score:2)
In my experience dynamic linking makes the programs much larger. Dynamic linking cannot win unless more than one program is using the library, and I think for many useful LGPL libraries this is not true. Don't forget that each incompatable version can be considered a different library. Also you can easily tell that a dynamically linked executable takes much more disk space than a stripped static linked executable for a library like mine, where the functions are numerous and fairly small, because the symbols are actually larger than the linked objects! (it is true that these symbols do not take memory when loaded in).
I have also found dynamic linking to be a real pain to support. More than half the makefile is to get around problems with making shared libraries. On Windoze we are forced to add horrible kludges and macros to get around stupidity in VC++ design. Conversely, on Unix we have no ability to share symbols between source files without also bloating the library with another public symbol, and I am forced to arrange the code in weird ways to make as many variables static as possible.
Both systems have the annoying fact that if my library calls another shared library, you need to link that other library, even if you don't link to any functions that use it, this forced us to split the library into a part that uses OpenGL and a part that does not, and also forces me to design it to not call libimage or any other possibly useful library. (I would prefer a shared library system where a call to a missing library produces a crash with "Symbol XYZABC not found")
I can assure you that retaining binary compatability is a huge pain and seriously damages our ability to improve this product. Every change that would break binary compatability is being pushed to version 2.0, even though some of them are trivial (replacing some shorts with ints for widget positions) and have been wanted for more than a year.
And dynamic linking does make it a pain to "install" a program. A lot of useful utilites should be able to be downloaded as a single executable, double-clicked by a user with no permission, and they should work! This means all shared libraries must be installed on the machine, and I'm sorry to say my library is not popular enough that anybody can assumme that!
I actually think dynamic libraries are a mistake, almost all the time. Everybody here laughs at Windoze "DLL hell" but seem to refuse to believe that we are creating the same mess, or worse, on Linux. Dynamic libraries should be reserved for common system interfaces (ie libc). A lot of stuff that is dynamic like OpenGL should be written as a "service" with header files full of macros that shove the correct bytes to the service, and static-linked code to open a socket to the service (and don't complain that sockets are slow, FIX THEM! Also try to design interfaces where return values are not needed all the time, like OpenGL, so that synchronization is not needed and batch transfers can be done).
Re:You are seriously mistaken! (Score:2)
Yes the markup over materials for computer parts is huge (and many orders of magnitude huger for software), but I don't think it is for cars.
If it was for cars, you could buy a car that is a "pirated copy from a Chinese company that got the blueprints somehow". The fact is, this does not happen.
Re:Huh? (Score:2)
'You may distribute this software under the terms of the GPL, but I also grant the following extra permissions: blah blah blah.'
The blah could be whatever you like, allowing unmodified copies to be distributed in binary-only form, etc. But people who still want to use straight GPL can do so, and your code can be incorporated in other GPLed software. (Although the result would probably have to be plain-old-GPL without your extra permissions.)
Whatever happens, do not make up your own licence. There are far too many already.