[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Sun Java available from non-free

Hash: SHA1

Thanks to Fernando Lozano for bringing this to our attention over at the
JPackage list. Some issues came up that I would like to discuss with the
people here. You'll have to excuse me as I didn't even make it to (2f)
before finding some problems with the license. I would like to discuss
sections (2b) and (2c) in particular.

(2b) the Software is distributed with your Operating System, and such
distribution is solely for the purposes of running Programs under the
control of your Operating System and designing, developing and testing
Programs to be run under the control of your Operating System

It is not clear how this would apply to JPackage, as JPackage does not
distribute an operating system. Moreover, the language ``*solely* for
the purposes...'' seems to rule out one of the most natural things one
does with a JDK and that is developing software that may be run on other
operating systems such as Windows or Mac OS X, and even other Linux

(2c) you do not combine, configure or distribute the Software to run in
conjunction with any additional software that implements the same or
similar functionality or APIs as the Software

The first thing to note about this clause is that (ironically) it is
actually a step back from Sun Microsystems, Inc. Binary Code License
Agreement <http://java.sun.com/j2se/1.5.0/jdk-1_5_0_06-license.txt>
which states

(iii) you do not distribute additional software intended to
replace any component(s) of the Software

Comparing (2c) from the ``new'' license with (iii) from the Binary Code
License, you will see that it is far more restrictive. Instead of ruling
out one thing (replacing) it now rules out three things (combining,
configuring, and distributing). JPackage (and moreover, most Linux
distributions including Debian and Ubuntu) would actually seem to
violate all three.

(1) Distribution: Linux distributions distribute other software
alongside the Sun JDK which may be used to replace the Sun JDK. This can
be done in at least three ways: (a) other proprietary JDK's such as
Blackdown, IBM, and BEA, (b) certain libraries from GNU and Apache and
others (xml-commons is a good example) (c) free environments such as
CACAO, Classpath, Eclipse, GCJ, JamVM.

(2) Combination: The alternatives system allows combination of various
JRE's and JDK's as well as libraries. It is possible to use, say, the
Sun JDK with the Eclipse compiler (ecj), and the Apache XML libraries
(xml-commons) instead of the ones included in the Sun JDK.

(3) Configuration: It is possible to configure a replacement in at least
three ways: (a) the alternatives system (b) a global configuration file
such as /etc/java/java.conf (c) a local configuration file such as
$HOME/.java/java.conf or any other various config files inside $HOME.
Additionally, there are ways one might want to modify the JDK
configuration itself which the license does not touch on: (a) the
default font list (b) the security provider lists (e.g., to add
bouncycastle) (c) desktop and mailcap files (e.g., for javaws).

Roughly, the way that I read the new license, you must distribute the
Sun JDK ``alone'' (as per section (2c)). Moreover, you must not develop
any applications with this JDK---you may only use it to build packages
that will be shipped with your Operating System (as per section (2b)).

- --

David Walluck
Version: GnuPG v1.4.2.2 (GNU/Linux)
Comment: Using GnuPG with Mandriva - http://enigmail.mozdev.org


Reply to: