Following my article about my
Impressions from the Sun Developer Day in Vancouver
we had a longer discussion about the day on the VanJUG
I found that quite a few other developer also find Java integration on Linux to be appalling. We need to get this fixed!
Here is what I think people want:
Java has to become a first class citizen on all major Linux distros including all Java related Sun products.
This means that all Java applications from Sun including all Java.net projects like Glassfish or Looking Glass
should be available via the package managemenet system of the different distro and preferably even come as part
of the default installs.
apt-get install glassfish
and automatically get the dependencies like Tiger and whatever else.
So far this is not happening and I have only heard lame excuses why this is the case so far. Nevertheless a lot of Linux users go through the pain of manually installing the Sun JDK.
Those are the geeks though.
Consider Azureus … a sourceforge app with one of the highest download
numbers. It is a Java app! Do you want to bet that most people use it on Windows? You can not find it in many Linux
distros (you used to in Ubuntu for a while) because it requires Tiger. Now consider how appaling the whole situation
is if you compare this to .Net integration. Mono, the open source
implementation of .Net, was not sponsored by MS at all yet for example
Beagle a desktop search engine
is now deelpy integrated into OpenSuse 10. And Beagle is just a GUI on top of a
port of the Java based Apache Lucene!
And is in a way part of Gnome!
So .. what now? Whatever the licence problem is – get it done!
There are at least two approaches to get this happening as far as I can tell (which means that there are more ;-)).
- Get everything into the main distribution repositories
- To get this to happen you have to play nicely and get some committers for the major distros to work with you. Help them
with packaging it all up in .deb, .rpm and whatever else. Play by their rules! This is what you want to achieve in the
- Start your own repositories for the major distros
- In the short run you should easily be able to pull this off. Create a repository of all your Java apps for each major
Linux distro and host it on java.net. You can find instructions on how to package the JDK for most distros out on the web.
Use them and put the resulting files in the repository. If you do it right the instructions e.g for a Ubuntu user could be
to add something like
deb http://linux.java.net/ubuntu breezy main deb-src http://linux.java.net/ubuntu breezy main
to their sources.list file and they are ready to go.
So there you go. I have said it. And don’t tell me that some licensing issue keep you from doing it. Even the
propriertary Nvidia drivers are available from the repositories for all major distros. To end with a bold statement I would say:
If you want Java is to survive and be a prominent platform it has to become a first class citizen on Linux
and not just mobile phones and BD players! All you have to do is find some Linux/Java developers that package
it up for you. Employ them! Full time! And push Java hard!