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

Re: Clear definition of default-java and its scope

On 08.12.2010 14:00, Niels Thykier wrote:
Hash: SHA256


In light of LP: #687263 and LP: #564699 I think it might be time for us
to clearly define the purpose of default-java; not only for our own sake
but also for the sake of Java users on Debian(-based distros).

Note that by "default-java" I here refer to the symlink
/usr/lib/jvm/default-java and also the default-jre{,-headless},
default-jdk packages.

The current definition of default-java seems to be:
  - The default Java used for building Debian packages (based on how we
    use it)
  - The best free/open Java available on the platform (based on how we
    "choose" the default-java on a given architecture).

Users, who do not work on Debian packages, will most likely not come to
the same conclusions, since they are not involved in Debian Java
   Particularly in the LP: #687263 case, a user expected "default-java"
to be controlled by alternatives. I assume he/she read "default" as
"system-default" and personally I found that a very valid assumption
(from a user perspective).

I propose we solve this by explicitly defining default-java to hold the
two definitions I mentioned above (it is the only sane choice for
backwards compatibility as far as I can tell) and post-Squeeze introduce
a "system-default-java", which is an alternative-controlled Java. For
Squeeze I would settle with updating the Java FAQ[1].
   This solution will not directly solve LP: #687263[2], but it will
solve LP: #564699 and also a part of LP: #45348 by allowing users to set
JAVA_HOME to the system-default-java and now update-alternatives will
automatically update their JAVA_HOME as well.

No. This should not be done. Relying on an alternative for a build makes problems much harder to debug, if you first have to find out which alternative is actually used, and which alternative is used for the build.

I am fine with improving user experience, but the change in the proposed form will obfuscate the build process.


Reply to: