

Ask HN: Once you open source, can you take it back? - ia

My question is whether or not it is legal to un-open-source a project
after others have contributed to it.  Can the 'owner' of an
open-source project (the individual who holds copyright, and set the
license) take the code after years of open source development and
start a company with it?  The company does not follow the previous
license (GPL) of the code that it is clearly building upon and only
sells the project with expensive licenses.<p>At first I thought that it's his project, if he wants to
un-open-source it, I guess he can.  But then I considered the
contributions that others have made to the project.  Can he
un-open-source those?  Don't the contributors have some level of
expectation that the code they contribute will remain under the
license they contribute it with?  I don't want someone else profiting
off my contributions 3 years from now.<p>Thoughts?<p>--asked during a recent open source software class
======
makecheck
I am not a lawyer.

But my understanding is that the copyright holders have the right to change
the license.

Once people contribute to the project, they, too, are copyright holders. If a
contributor does not approve of the change to the license, he or she should
have the ability to remove his contributions from the product (or otherwise
relinquish copyright) before it is forked.

In addition, anyone is free to fork from the last "free" version, which could
cause its own problems for you. The free software community could decide that
they much prefer the free version, significantly enhance that fork, and leave
your commercial product looking dull and not worth the money.

~~~
cperciva
_But my understanding is that the copyright holders have the right to change
the license._

To clarify, the copyright holders have the right to _relicense their work
under a new license_. This does not mean that old versions cease to be
licensed under the old license -- works can be simultaneously available under
several licenses, in which case people can decide which license to take
advantage of.

------
mdasen
Yes and no.

Let's say I put something under the GPL and you download the source. Later, I
regret that and don't allow more people to download the source. You (as
someone who has downloaded it) can still forever use, transmit, etc. it under
the GPL. So, people that want a copy of the source can get it from you even if
they can't get it from me - and there is absolutely nothing that mandates I
continue to give out the source if it's mine. I then add to it and make a cool
Project 2.0 that's closed only and based off that old GPL code. That's
perfectly fine.

However, let's say that I took some GPL code, modified it and distributed it.
Now the codebase isn't all my code - it's also partly one or many other
people's code. I can stop distributing it all together, but I can't distribute
it and not the source code. BUT, what if part of my 2.0 closed source version
development was eliminating all the GPL code from it! Then I can make it
closed.

Basically, if the copyright is _your_ copyright, you have free range. You
can't take away the rights of someone who already has the code under the GPL,
but you can stop the GPL thing from going forward (unless the community builds
a better fork off your old GPL code). However, if you're using other people's
code in your program, you're stuck with the GPL unless you can get the authors
of the other code to exempt you.

So, he can't un-open-source the contributions of the other people, but he
could replace them. One of the flaws in the GPL is that you have to wait for
one of the author's whose copyright is infringed to sue. Courts have sometimes
held that intended third party beneficiaries have standing, but that's a lot
more murky since you're then claiming that the original author created
something for your benefit that an intermediary is stopping you from using.

~~~
fizx
IANAL, but even if you eliminated all of the GPL'd code from your codebase,
there's a possibility that some of your code could be a derivative work of the
eliminated code, setting you up for copyright issues.

<http://en.wikipedia.org/wiki/Clean_room_design> might be useful.

------
cperciva
_At first I thought that it's his project, if he wants to un-open-source it, I
guess he can. But then I considered the contributions that others have made to
the project. Can he un-open-source those?_

No, but many companies (and the FSF) demand that contributors assign copyright
to any open source contributions they make. Sometimes they make excuses about
how owning copyright in all the code makes it easier for them to go after
license infringers, but that's just an excuse; what they really want is the
ability to relicense contributors' work in the future.

------
tstegart
I don't believe un-open source is a concept that can exist under past versions
of the GPL. If you read the GPL, it has no time limit on the license. And the
contract also has no termination conditions except for one (which the people
downloading/modifying the program control).

Therefore, it appears an old version GPL license is a neverending license
without a way for the original person to end it. So no, he cannot open-source
any of it, even his own original work. He can stop distributing it, but since
he gave a license to others to distribute it, they can just distribute the
original. And unless they break the one term of the license, he cannot stop
that.

Clearly, this is where you run into the concept of the GPL. It was meant to
ensure that original works of software would always be available to use and
modify. "Always available" are the key words. He is out of luck.

The new GPL (v.3) appears to grant a license for the term of copyright. Not
sure what that means. But, it also gives a license to someone you distribute
the work to from the orignal copyright holder. To me, this means if you try to
distribute a project with someone else's modifications, the person receiving
the project gets a GPL license on those modifications, not your expensive
license. Since the original work can also be distributed, essentially this
means the whole thing can't be un-open-sourced.

Basically, the only thing I think he can do it make his own modifications, and
release those for a fee. He cannot stop anyone from releasing the original or
the original with others modifications.

------
noodle
you would have to fork it, or build something on top of it the OS version.

there are a lot of companies that have an OS version of something, and then a
premium version, which consists basically of proprietary scripts and upgrades
that hook into the OS version and improve it. they're not touching the actual
OS package itself, but selling something on top of it.

------
bayes
If you own the copyright to the whole project (because all the other
contributors assigned copyright in their contributions to you) you can
presumably distribute it under any licence you want. But you can't prevent
other people continuing to distribute it under the GPL.

If (as seems more likely) the other contributors still hold the copyright to
their own contributions, your only rights to their code are those granted
under the GPL, so you couldn't distribute it under any other terms.

At any rate, those are my thoughts, but IANAL.

------
paulhart
Yes, Jive Software did this. I was working for another company at the time and
a colleague and I provided several enhancements to their codebase. However,
before they would accept them we needed to get our boss to sign a document
assigning all our work on their code back to them.

A few months later, they announced they were taking their code in-house and
leaving the open-source stuff for anyone to fork.

BTW, above colleague also left to work for Jive - I believe he's still with
them several years later.

