Advertisement

License to use?

Started by May 31, 2006 09:54 AM
31 comments, last by Sander 18 years, 4 months ago
How about BSD?
Not as limiting as GPL in some respects.
Quote: Original post by Sander
Quote: Original post by Xanas
"your" option referenced in the file is yours, not that of the person downloading the source code. Whatever license you distribute with the application source code will be the license it falls under.


Yes it is. When GPL v3 comes out then I can download a GPL v2 or later application, make some changes, and redistribute the result as GPL v3 or later.


You sure about that? If someone can change it to GLP3 then what keeps them to changing to another license, say BSD?
Advertisement
The text that accompanies your license :-) It says so at the top of your file:

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

If you do NOT add the "or (at your option) any later version" part, then a user can only use your code under GPL v2. But if you write it as above, then he can use GPL v2, GPL v3 or later maybe even GPL v4 when that comes out in 20 years.

For example, the Linux kernel does not have the "at your option...." text. The GNU applications do have it. This means that everyone can make a copy of, for example, GNU libc, make some changes and release it under GPL v3 or higher. You cannot do that with Linux, because the Linux kernel is only GPL v2.

It is possible that some day Linux will have a GPL v3 kernel, but in order to do that, all copyright holders have to agree to do so. There are hunderds of copyright holders in the Linux kernel. Even just finding all of them is nearly impossible. Some are dead and cannot give permission. Some are alive and have said that hey will never give permission for a GPL v3 kernel.

I hope this illustrates the use of the "or at your option..." part.

<hr />
Sander Marechal<small>[Lone Wolves][Hearts for GNOME][E-mail][Forum FAQ]</small>

I recently saw an interview with Linus Torvalds where he said that that particular clause is for the person who originally developed the program NOT so that anyone who downloads it can use a later version of the GPL. On the other hand I think it's a fairly questionable and confusing choice of words if that is the intended meaning so take it out if you don't want the more obvious meaning to apply.
Quote: Original post by ZQJ
I recently saw an interview with Linus Torvalds where he said that that particular clause is for the person who originally developed the program NOT so that anyone who downloads it can use a later version of the GPL.


That's silly. It must be a mistranslation, a misquote or a misinterpretation because it's not true. But then again. Linus does say silly thing in the heat of the moment on occasion :-) Anyway, let's get technical here. Here's a pseudo program licensed under GPL v2 or later (I'll omit the GPL blurb):

#include <stdio>int main(){  cout << "hello world!";  return 0;}


Then I download the code and make some changes. The program now reads:

#include <stdio>int main(){  cout << "goodbye cruel world!";  return 0;}


Then I license my changes under GPL v3. The original code is still GPL v2+, but the only way you can distribute the full, new program now is under GPL v3 because my change is GPL v3 and you cannot distribute my change under GPL v2.

It's really not that hard to understand once you wrap your mind around the GPL. If it still doesn't make sense the I suggest you ask on groklaw, where some really smart people who are really good at explaning legal stuff are, or contact the Free Software Foundation. Sadly there is no entry in the GPL FAQ on GPL transistions (yet).

<hr />
Sander Marechal<small>[Lone Wolves][Hearts for GNOME][E-mail][Forum FAQ]</small>

On a sidenote, if you're afraid of changes in the GPL, why don't you go with a more easy going license? Such as the BSD or ZLib license?

Toolmaker

Advertisement
Because he might like the GPL, but not the upcoming anti-DRM clauses in GPL v3? BSD is only nice if you don't mind other people having the ability to make your code proprietry again.

<hr />
Sander Marechal<small>[Lone Wolves][Hearts for GNOME][E-mail][Forum FAQ]</small>

Quote: Original post by Sander
Because he might like the GPL, but not the upcoming anti-DRM clauses in GPL v3? BSD is only nice if you don't mind other people having the ability to make your code proprietry again.


Precisly. Or actually; I am against DRM, but thats another story. The problem is that by saying "...or any other version" anything can happen. Heck, in the worst case scenario "Evil corporation X" might buy GNU and do god knows what. Okay this is not very likely but you never know.

Also, I'm not really against closed-source and if someone asked if they could include my code in their close-sourced-software I would probably let them but for some cases I wouldn't and therefore BSD doesn't fit the bill.

Anyways, I'm almost done with my Window Manager and tutorial on how to make your own. The website is actually up; I just have to upload the code to the Subversion repos. and finish the last pieces in the tutorial but I'm having problems in finding the motivation [sad]. Are you guys interested in making your own Window Manager?
Quote: Original post by BBB
Precisly. Or actually; I am against DRM, but thats another story. The problem is that by saying "...or any other version" anything can happen. Heck, in the worst case scenario "Evil corporation X" might buy GNU and do god knows what. Okay this is not very likely but you never know.


Nah, the biggest danger is that GPL v4 or later accidentally has a loophole which would allow someone to make your code proprietry.

Anyway:

[1] License your program under GPL v2 only and remove the "at your option" bit from the GPL blurb at the top of your files.
[2] Remove any code from your program that you did not write. The object is that all the copyrights on your program are yours.
[3] Put a statement on your website and in your HACKING file that anyone who submits a patch must assign the copyright on it to you.
[4] When someone submits a patch, verify they assign the copyright to you. Keep the e-mails that say they do (and make backups!)

This way, all the copyrights will be yours. This means that you can easily switch licenses when you want to. So, when GPL v3 comes out and you like it, then you can switch to GPL v3 without having to track down all the contributers. If you don't like it then don't switch (and wait for GPL v4 :-). You will scare off potential contributors a bit this way, but that's the cost of having all the copyrights.

<hr />
Sander Marechal<small>[Lone Wolves][Hearts for GNOME][E-mail][Forum FAQ]</small>

Quote: Original post by BBB
I just have to upload the code to the Subversion repos. and finish the last pieces in the tutorial but I'm having problems in finding the motivation [sad]. Are you guys interested in making your own Window Manager?


I'll probably never actually try to write one but a tutorial on the subject would be interesting to read anyway.

This topic is closed to new replies.

Advertisement