I am working on the Apache Tuscany project and somebody had opened a bug report complaining about build issues on Ubuntu so I wanted to test it and see what was going on.
The part of the Tuscany runtime that I'm working on is written in C++, our Linux build uses the usual automake and configure tools and is very portable but I was curious about any portability issues in our code since most of the Linux people on the Tuscany project build on Fedora and Ubuntu is a different Debian based distribution.
After two unsuccessful attempts to use pre-packaged Ubuntu VMWare images I decided to bite the bullet and do a fresh install of the Ubuntu 6.10 Desktop distro CD image (which you can download here) on a spare partition on my laptop.
Well... I must say that I am amazed by the quality of this distribution!
It installed in about 20 minutes, only asked me about my language, keyboard and timezone, detected all the devices on my Thinkpad T42, and came up with a Gnome desktop all loaded with everything you need on a desktop machine... Firefox, Evolution, Open Office, Totem for movies and Rythmbox for music etc.
I have been working on Linux for some time now, and was thinking: Yeah Ok, nice try, but what about getting wireless to work? what about suspend/resume? and don't even think of trying to hibernate... Well... all of this just works! and configuring the wireless access to my home network was even simpler than on my daugther's Mac-OS X, and way more simpler than on my other Windows machine, which keeps losing its wireless settings all the time!
Ubuntu still failed the absolute test for me: Plug an iPod into the USB port and wait to see if it's recognized and a nice music player pops up... I tried and nothing happened, except some cryptic error messages in the system logs... I guess I can live with that :) I've not seen any other Linux distribution pass this test anyway without some serious fiddling with the Linux kernel or udev configuration.
After recovering from my disappointment with the iPod, I finally decided to test our Tuscany build in silence, with no music, and here again I was really impressed... I was able to install all the development tools I needed in a matter of minutes:
- the build_essential Ubuntu package
- the automake tools
- a Subversion client
- Apache Axi2C
- Apache Ant
- the Java 5 JDK
- and the Ruby and Python development libraries...
Conclusion: Ubuntu is not just a Linux for human beings, it's also good for software developers!
Oh, and Tuscany builds and works great on Ubuntu 6.10 by the way, so I eventually closed the bug report :)