JDK on GNU/Linux: Something Wonderful
Something wonderful just happened. If you have ever tried to install the Java platform on GNU/Linux, you'll know it's been really hard work. For reasons that date back to the 90s, and which were never meant to cause GNU/Linux a problem (as at the time it wasn't really on the radar), the Java platform has been licensed in such a way that GNU/Linux distributions couldn't carry it. In addition, the Sun-provided installer for GNU/Linux has, to be charitable, sucked.
All that just ended. An unprecedented collection of Debian developers, Ubuntu developers, Sun engineers and Sun lawyers has spent months devising a new binary license for the Java platform, together with the parts for new installers, so that the Java platform is available on GNU/Linux in a way that "just works". Yes, you can now apt-get install sun-java5-jre and have it install without fuss on Debian and Ubuntu. Gentoo will have it soon too.

This is not just for those distros. Novell has endorsed the new license, NexentaOS, Belenix and Schillix are all using it and all other GNU/Linux and OpenSolaris distros are welcome - e-mail me if you have a distro and need help. If you are at JavaOne, come to our special unBOF on packaging the JDK for GNU/Linux and OpenSolaris, upstairs at the Thirsty Bear at 5:30pm on Tuesday (yes, today).
The mechanism is the new "Distro License for Java", DLJ, and a new jdk-distros community. The DLJ does away with the cascaded liability terms, the greater-weight Java product requirement and the no other implementations requirement for distributing the JDK. The jdk-distros community provides a place for all GNU/Linux and OpenSolaris distributions to get the parts they need to build install packages tuned for their system. The combination ends a nightmare that Java developers on GNU/Linux have faced for years, and ushers in a new wave of Java development on GNU/Linux and on OpenSolaris.
As you can tell, I'm really pumped about this! I got to announce it at DebConf in Mexico on Monday, and it's in the keynote today at JavaOne in San Francisco (I've flown up specially). Consider it a downpayment on the future of the Java platform!
Comments are closed for this entry.





Posted by webmink
There's just one point that seems a bit tricky IMO:
"(c) 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;"
Does that mean a distribution is not allowed to bundle both the Sun JDK and GCJ/SableVM/... or even the IBM JDK ?
Posted by Pascal Bleser on May 16, 2006 at 01:50 AM PDT #
Posted by Marco Fabbri on May 16, 2006 at 01:55 AM PDT #
Marco: Thank-you, typo fixed!
Pascal: No, it's OK to distribute along with GCJ, GNU/Classpath and so on - that was one of the explicit intents of the new license as that was previously the chief obstacle to distribution with GNU/Linux.
That clause of DLJ simply means you can't take the Sun package apart and use elements of it to complete or modify another package - so, for example, it would be a breach of the license to take the Swing classes from the Sun JDK and add them to GNU/Classpath. Just shipping the two systems alongside each other is explicitly OK.
Posted by Simon Phipps on May 16, 2006 at 06:57 AM PDT #
Posted by Mike Norman on May 16, 2006 at 07:38 AM PDT #
Posted by meneame.net on May 16, 2006 at 07:57 AM PDT #
Posted by Tom on May 16, 2006 at 08:53 AM PDT #
Posted by stephen ogrady on May 16, 2006 at 10:01 AM PDT #
The license is, frankly, still pretty bad, and contains various nasty clauses: from the overly broad indemnification(i) part, which has nothing to do with Sun's JDK software, to the subsettig restrictions not being limited to Sun's software. That's from a cursory glance, I think you'll get to see more comments once people take it apart, and the JavaOne buzz is gone.
It's not exactly a huge improvement, though the grossly anti-free software clauses from the BCL are apparently somewhat cleaned up.
Some of the stuff in the license does not match the description in the FAQ at all, though, for example DLJ 1.1 2(c) prohibts distributing the JDK to run with X11 since X11 implements a similar functionality. That sort of restrictions needs to go, if a distributor is not to depend on Sun's eternal benevolence.
In a sentence: Too broad, too asymetrical ... it's still largely more of the same, with slightly less force.
As I said before: try to get Sun's lawyers to write a license that covers Sun's software, and does not attempt to impose restrictions on anything else. That would make everyone's life so much simpler.
Have a nice JavaOne!
cheers, dalibor topic
Posted by Dalibor Topic on May 16, 2006 at 02:44 PM PDT #
We will work to elaborate on the installation instructions and add questions to the technical FAQ.
Please see what we have now for Debian and Ubuntu.
Just to prove that these debs exist (and obviously you don't want to install them this way) please see the Debian Repository and the Ubuntu Repository.
As soon as we can get the technical Forum online it will be the ideal place for asking technical questions like this.
Regards,
--Tom
Posted by Tom Marble on May 16, 2006 at 03:55 PM PDT #
Your interest and persistence has helped to uplevel the discussion of legal issues surrounding the Java platform.
I certainly understand and appreciate that there may be criticisms of the DLJ. In fact our DLJ forum will be an excellent place to discuss it. We are working on making those forums live as soon as possible (obviously this is all happening in real time, so please bear with us and the sometimes bureaucratic nature of our processes during such an intensely busy time as JavaOne).
Rather than enter into specifics about the DLJ here please allow me to make two points:
1. At press briefings today the overwhelming question from journalists was, "What took you so long?". In that the DLJ has solved these very specific problems around distribution it has taken a step towards greater community collaboration.
2. Did you watch the webcast of Jonathan today as you did of Simon and I at Debconf? Did you catch the question that Jonathan asked of Rich Green? The question was, "Are we going to Open Source Java"?..... And the answer was "it is not a question of whether, but a question of how."
I can't remember a more significant day in the history of the Java platform licensing changes, except for our announcement a couple years ago about making Java source code available (under the JRL) as part of the Peabody project.
Now let's begin a dialog towards a vision of what a free (libre) Java platform could and should be -- it will take a village to raise this child.
Regards,
--Tom
Posted by Tom Marble on May 16, 2006 at 04:15 PM PDT #
Posted by Dalibor Topic on May 16, 2006 at 11:14 PM PDT #
Thank you Sun! This is a greatly welcomed move. It will help get Java everywhere.
It has been disturbing watching Mono .Net applications making inroads within the Gnome community (Beagle, F-Spot, and Tomboy). Having Sun's high-quality JVM implemenation included on all Gnome-based distributions could lead to viable market for Java based apps on the desktop.
I understand you needing to keep this quiet leading up to the Java One annoucement, but I hope you will now reach out to the JPackage community. They have been leaders in developing policies for sanely packaging java apps for LSB compliant environments. I'm at least glad that Sun is adopting several JPackage guidelines, as the FAQ indicates.
Allen Halsey
Posted by Allen Halsey on May 17, 2006 at 08:31 PM PDT #
Posted by john van v. on May 18, 2006 at 07:38 AM PDT #
Posted by brady on May 19, 2006 at 05:21 PM PDT #
Posted by Gordon J Milne on May 25, 2006 at 07:34 PM PDT #
Gordon: DLJ is just a license to package and distribute Sun's binaries. As those aren't available for ARM and PPC, DLJ can't help. Hopefully once the Java source is licensed as open source someone who has a business or personal motive to port to those architectures will do so.
Allen: Who should I be talking to? As you say, the only medium pre-announce was a public mailing list, but I am keen to engage with JPackage.
Posted by Simon Phipps on May 31, 2006 at 05:45 AM PDT #