Slashdot Mirror


Changing the Software License?

plaa asks: "I was wondering what it would take to change the license of some software. Is it enough if all the authors accept the change or do the licenses have to be 'compatible'? Does this affect the older versions of the program in any way? What if somebody has already used some code from the program in a program of his own? How easy would it be to migrate software to it (so that the older version was not an option to the user)?" What, in particular, do users and developers have to worry about when something that once was free, becomes commercial?

2 of 100 comments (clear)

  1. Yes, it is possible by Rayban · · Score: 5

    I asked the FSF about this one a little while back and it applies to all licenses.

    Unless you sign away your copyright for a license, the work is, and always will be, yours. The license only tells *other* people what rights they have.

    If you aren't the full copyright owner, you MUST get the other author's permission. Once you have that, you can change the license without worrying about legal stuff. I'd recommend you get it in writing if you have physical contact with the other authors.

    This is how people can release source code under multiple licenses. There's nothing stopping you from releasing something under the artistic license, the GPL and having a closed source version at the same time!

    In short: if everyone agrees, everything is A-OK.

    --
    æeee!
  2. Licensing by rcw-work · · Score: 5
    IANAL.

    By default, everything copyrightable is Copyright The Author, All Rights Reserved. Licenses are just contracts to grant you, the user, certain copy rights (like the right to install it onto your computer or put it on an ftp site).

    You can hand out as many of these contracts as you like, they can all be different, and you can change new ones that you hand out, but once you give someone a license to do something with that code, you cannot retract that license unless there was a termination clause in the license.

    Free software licenses are kind of unique because they license everyone automatically.

    So, say ssh was created and licensed to everyone under the BSD license. SSH Communications Security , the owners of this code, decide they can make money off of ssh, so they release it under a license that suits them. Anyone that had a previously-licensed copy of ssh is still free to do anything they like under the BSD license, including fork it into OpenSSH.

    In order to prevent people from using the old code under the old license, you either have to terminate their license (using a termination clause already in the license agreement) or you have to make the old code worthless to them. Usually any progress in this direction is at the expense of your users and is considered evil. :)

    If you are the author of foobarbaz, a shareware app for Linux, and you include code from other people's software (other libraries, etc) then you have to respect those licenses (i.e. releasing under GPL would be a bad idea) or reimplement those functions so that you don't need the other libraries. If it's under 10 lines of code, it's fair use to do anything with it (less than 10 lines of code are not copy protected, thus no licenses are needed). If your buddy helped write code for foobarbaz, and there's more than 10 lines, he/she has copyright over his portions and you need to ask permission from him/her first.

    This is why the Netscape -> Mozilla transition had to rip out a lot of things like Java and RSA support.