In reading through this thread, it seems as though some discussants
are conflating some of the basic issues of copyright, while other
discussants are pretty clear. This posting IS NOT legal advice!
FIRST, if you are contemplating any commercial use of software,
you should spend some good money for the advice of an attorney
experienced in copyright and patent law. This is a complex area
in which general rules are only generalities; your specific situation
will likely have some exceptional details.
SECOND, Richard Stallman's material on copyright is very interesting,
but he is not an authority on anything except his own opinion in
the matter of copyright law. I do not mean this disparagingly, but
descriptively: his opinion is of great importance, but it carries
no legal weight. And his page is not a balanced discussion of
copyrights, patents, and licenses (nor should it be). While you
may wish to check http://www.opensource.org for more balanced
information, my sources don't know of any authoritative web site
having a detailed and balanced discussion of these issues.
While the issues can indeed become complex, some principles are:
Publishing source code does not mean you are giving up your
copyright; rather, you choose to copyright it and choose the
terms of use you wish to grant, which you may state in a license.
If you register your copyright, you have some additional protections.
If you do not include a license with your software, then "fair
use" provisions apply, which are very restrictive, especially
regarding commercial use, which is essentially forbidden.
In general, copyright can be enforced only when (a) violations
are discovered (private use is seldom discovered); and (b)
economic damages have occurred.
Unintentional transgressions are treated gently; intentional
violations are treated more harshly, especially if the copyright
is registers.
In any case, the owner of the copyright is responsible for
enforcement; there are no "copyright police." The process of
enforcement is fairly cumbersome, and begins with a "cease and
desist" letter. If the violator ceases, the owner generally
can't proceed with any legal action. If the violator persists,
then the process of enforcement is still fairly arduous.
It's not possible to copyright government documents: you can't GPL
the gov't code or put any other license on it; you copyright your
own additions and modifications, and place whatever licensing
restrictions you wish on your own production. And if you write
a clone of VISTA that does not re-use any of the code, you can
write whatever licensing restrictions your little heart desires.
GPL'd code IS copyrighted, AND includes a restrictive license;
basically, in lieu of royalties, it demands continuation of
community-based sharing of derived code. It is troublesome
in some business environments, hence the Mozilla Public License,
which is not as restrictive regarding commercial use, and is
therefore favored by some people when issuing code that has
potential commercial value.
Regardless, of the copyright status of a work, copyright is
fundamentally aimed at commercial use: private use is in a general
sense undetectable and usually has no commercial significance,
so even if the law is violated, no legal action can ensue
because there are no damages. An instructive example of this
generality is in entertainment, the whole Napster brouhaha. That
occurred, basically, because the copying and sharing of music was
thought to produce economic injury to the owners of the copyrighted material.
The copyright holder can, via a license, place pretty broad restrictions
on reproduction, and some restrictions on commercial use, but really cannot write
complex directives on use, e.g., forbidding the user to run software on
a particular platform, nor does the copyright holder in general
have any way to detect most instances of use; in these cases, the
license is moot.
In particular, the GNU GPL explicitly forbids additional restrictions,
so an author can't say (as some have) "This code is GPL'd except that
it can't be used on Windows machines [or by the military]" as this
means it isn't really GPL and hence the license is ambiguous and moot.
In addition, you do not violate the GPL by running code on any particular
platform, Linux, Unix, Solaris, Windows, or other.
I think it's worth pointing out that the GNU GPL has not been legally
tested (to my knowledge), and Stallman's strong opinions about what
is permissible and impermissible are so far only opinions. I don't think
he's gone around suing people; he clearly favors moral suasion and is
pretty effective in this, an admirable quality.
When someone says, "the Hardhats can't use GPL code," I understand the
reason they say this, but I don't think this restriction is in the
spirit of Stallman's intent, and my impression is that the open-source
community is pretty free about linking GPL's and non-GPL'd code as long
as the spirit of freedom is preserved. In any case, commercial use
is expressly permitted; it is the failure to release code that is
the chief issue among the community -- specific license terms are
debated but not as central issues.
Patents are much more restrictive than copyright because patent law
doesn't, as I understand it, have "fair use" provisions, and ALL use
of patents requires specific licensure.
Complexity occurs because, if one assembles a system from diverse
pieces of code with varying licenses, the use restrictions may
conflict; reading the fine print is the only way to answer the
questions about permitted use. This is why you will need a real
attorney if you want to do business...
This is NOT legal advice, it is logical clarification...
My personal advice is
- go ahead and code
- combine free software faithfully
- always release code as soon as it's "good"
- fork, but make the forks modules off the base code
- find a good attorney before you start selling software....
Danl J