Pretty fonts for Java desktop software under Ubuntu
I’m an eclipse (Java IDE) user for a long time. As maybe any eclipse user I’d heared from the IntelliJ camp that their IDE should be much better. Great refactoring and completion… But any evaluation I did in the past - and I did it every couple of years - ended up with that I returned to eclipse because IntelliJ seemed to me totally visually ‘noisy’. Tons of colourful icons and ugly fonts under Linux. I could just not stand it.
But suddenly Android’s official IDE is now based on IntelliJ and in my current project I could just not make the darn maven build work under eclipse while the IntelliJ using colleagues were just importing the pom.xml and started working. So back home this veryevening I gave it another chance: Colourful icons were gone but the fonts were still ugly. But after some reserach I found a solution and now IntelliJ looks almost like a native application.
The solution ist a combination of installing the alternative font rendering Infinality and a patched openJDK. Both hacks are described at webup8.org Better Font Rendering In Linux With Infinality and Install OpenJDK Patched With Font Fixes.
The recipe
1) Install Infinality
sudo add-apt-repository ppa:no1wantdthisname/ppa
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install fontconfig-infinality
2) Configure Infinality
Answer question with linux:
sudo bash /etc/fonts/infinality/infctl.sh setstyle
Edit this file, search for USE_STYLE and set it to UBUNTU:
sudo -H gedit /etc/profile.d/infinality-settings.sh
3) Log out and back in again to see the changes
4) Install the patched openJDK
sudo add-apt-repository ppa:no1wantdthisname/openjdk-fontfix
sudo apt-get update
sudo apt-get upgrade
5) Install openJDK (if not installed)
sudo apt-get install openjdk-7-jdk
6) Ensure IntelliJ is using the patched openJDK by adding this line to {IntelliJ install dir}/bin/idea.sh as first line after the file comment.
IDEA_JDK="/usr/lib/jvm/java-1.7.0-openjdk-amd64"