Be warned that this command is potentially very risky: it has the potential of removing programs on your system, or render your whole system inoperable, or both.
Recall that I have added the Debian unstable (sid) repository to my /etc/apt/sources.list in Getting Sun Java 6 On Debian 4.0 With APT Pinning 254 days ago. That is still the foundation of what we are doing today.
The difference between today's command and previously used commands is the -t unstable switch. This switch tells feta to install the package requested and resolve any dependencies in the unstable repository. This switch is necessary because the openjdk-6-* packages have dependencies on later versions of other Debian packages (such as libc) that's available only in the unstable repository.
Have I warned you that this command may wreck havoc on your system? When I mentioned this yesterday at lunch time, Dale said "You are a brave man."
A transcript of what happened when I invoked the command is available here.
Some highlights:
20 other packages are upgraded, including libc6 (this is the scary part, because many programs depends on libc6 and could potentially be broken.)
9 NEW packages are installed, including openjdk-6-jdk, openjdk-6-jre, openjdk-6-jre-headless, openjdk-6-jre-lib, and rhino. I was surprised that the openjdk-6-jdk package has a dependency on rhino.
2 packages are REMOVED: linux-kernel-headers and linux32, which means that I can't build any kernel modules afterwards, something that I don't do that often.
The installation went smoothly. During the reboot (not a forced reboot, but one I initiated myself) after the install I noticed the failures of three services: avahi-daemon, postgresql and tomcat55. The cause of the PostgreSQL started up failure was tracked down to be a full filesystem on /var, which is filled up by the apt cache.
To make Tomcat start again, I have to edit /etc/init.d/tomcat55 to add an entry to the JDK_DIRS list.
At this moment, I decided to remove the previously installed Sun JDK 5 and 6 to free up some disk space. I did that in Synaptic. Somehow that also removed NetBeans 6.0.1
(see NetBeans 6.0: A Week Later, And A Much Better Story for how I got NetBeans in the first place).
After I told IntelliJ IDEA where the new JDK is, IDEA started up and worked OK. It's a little bit slower than running under the Sun JDK 6. It took quite a bit longer (my perception only, no measurement was taken) to parse all the new jars in the OpenJDK.
The same story for Eclipse 3.2. I have to edit /etc/eclipse/java_home.
Tomcat 5.5 worked fine. (This is on my workstation, not my wife's workstation, a.k.a. the server for this blog. That box still runs Fedora Core 6.)
All the other applications that I use daily (email client, web browser, flash, etc.) seems to be working OK.
BTW, the Sun JDK 6 packages in unstable has gone through some changes since I first mentioned them. Now, they are available both in unstable (sid) and testing (lenny), the one in unstable is a version ahead of the one in testing. I hope the openjdk packages will progress quickly to testing, and eventually the next release of Debian.
While we are at it, I can't help but to think a little bit about the situation on Windows and the Mac. Will OpenJDK make an appearance on Windows any time soon? Mario told me that he's using Soy Latte on his Core 2 Duo Tiger box now. He had some issues with it related to the X server.