Down with the distros!
There are many misconceptions and myths about the Ion license. It is not targeted against users and developers, it is targeted against distributions – the middle-men, the equivalents of the big record companies in FOSSphere – that have become far too powerful, wielding de facto central control over easily installable software. The following articles may help to clear up some of those misconceptions:
A more recent posting and a thread on the Ion mailing list.
The text of the license is of course the authoritative source, and is attached below.
As you can see, the extra terms are not targeted against individual users or developers. You may perfectly well use Ion code in your own projects and forks: you just have to rename them, as any courteous person would do. Yes, the terms are viral, but so is the GPL itself – nothing special there. You may also distribute old versions, as long as it is clear to the user downloading the program that it is an obsolete one and I will not have anything to do with it – as any courteous distributors would indicate. But the distros are not courteous persons. In fact, the additional terms would not even be needed against small-scale distributors violating them; they are only needed against powerful distributors that can (and do) supplant the author as the primary source of the software. The Linux/FOSS distributions are such powerful entities that will abuse authors (and users!) as long as they remain in power.
Down with the distros!
Copyright (c) Tuomo Valkonen 1999-2008.
Unless otherwise indicated in components taken from elsewhere, this software
is licensed under the GNU Lesser General Public License, version 2.1 ("LGPL",
reproduced below), extended and modified with the following terms:
If the name Ion(tm) or other names that can be associated with the Ion
project are used to distribute this software, then:
- A version that does not significantly differ from one of the
copyright holder's releases, must be provided by default.
- Versions not based on the copyright holder's latest release (on
the corresponding "branch", such as Ion3(tm)), must within 28 days
of this release, be prominently marked as (potentially) obsolete
and unsupported.
- Significantly altered versions may be provided only if the user
explicitly requests for those modifications to be applied, and
is prominently notified that the software is no longer considered
the standard version, and is not supported by the copyright holder.
The version string displayed by the program must describe these
modifications and the "support void" status.
Versions for which the above conditions are not satisfied, must be
renamed so that they can not be associated with the Ion project, their
executables must be given names that do not conflict with the copyright
holder's version, and neither the copyright holder nor the Ion project
may be referred to for support.
In the text of sections 0-2, 4-12, and 14-16 of the LGPL, "this License"
is to be understood to refer to the LGPL extended with these terms and,
where applicable, possible similar terms related to the names of other
works forming a whole. Sections 3 and 13 of the LGPL are void. Where
contradictory, these additional terms take precedence over the LGPL.
End of terms.
Explanations
Trademarks: With the terms above primarily appealing to copyright law,
should any of the indicated trademarks be found invalid, does not excuse
you from the conditions imposed by those terms. The use of these names
in contexts other than redistribution of this software and modifications,
is outside the scope of the terms above, and governed by applicable
trademark or other laws.
With regard to modules and other extensions to Ion(tm), the permission
is hereby granted to use "Ion" as part of the name, provided that it
occurs in a form suggesting that the work is supported by neither the
copyright holder nor the Ion project: "Foo for Ion" instead of "Ion Foo",
etc.
Significant change: Bug fixes are insignificant as additions. Basic changes
that are needed to install or run the software on a target platform, are
insignificant. Additionally, basic/small configuration changes to better
integrate the software with the target platform, without obstructing the
standard behaviour, are insignificant. Everything else is significant,
unless expressly declared otherwise by the copyright holder.
Distributions: For example, suppose an aggregate distribution of software
provides an `installpkg` command for installing packages. Then the action
`installpkg ion3` (resp. `installpkg ion`) should provide the latest release
of Ion3 (resp. the latest stable release) 28 days from release date at the
latest, or prominently notify the user that the provided version is (likely
to be) obsolete and unsupported. The latest release being provided by
default, or prominently appearing in a listing, constitutes prominent
marking of earlier releases as obsolete. Specific versions (including
modified versions) may be provided if the user explicitly requests for
those, within the constraints set above.
The intent of these terms is to curb the power that "distributions", as
the primary sources of software for many users, have in defining what
is perceived as Ion. By providing significantly modified versions and
out-dated development snapshots without prominently mentioning this fact,
they do not present the work in a light that the author can agree with,
and create a burden of dealing with (new) users seeking for support for
such versions.