Installing Xubuntu 7.10 on a G3 iBook

Just a small post, pointing to the one and only solution to a known bug, that (incredibly) shipped with the public release of the PowerPC version of the latest Ubuntu distribution: 7.10 or “Gutsy Gibbon”. When installing that OS on a PowerPC G3 iBook (like mine), during the boot sequence the computer “freezes” (that is, the scrollbar stops running and the whole boot stops) and then you get a “BusyBox” screen, which is, needless to say, kind of a bummer.

The problem is that /dev/hda3 is not available (that is, your IDE internal hard disk) and of course, Xubuntu does not know what to do in that case. Kind of incredible, huh?

Well, the solution for that problem was in this answer of the Ubuntu Forums. Just follow the instructions there and you’ll succeed. Now I have a nice Xubuntu install in my good old and faithful G3 iBook (in double boot with Mac OS X “Jaguar”).

Building JUCE on Kubuntu 7.10

JUCE is a gorgeous thing:

JUCE (Jules’ Utility Class Extensions) is an all-encompassing C++ class library for developing cross-platform applications. It’s particularly good for creating highly-specialised user interfaces and for handling graphics and sound.

For Mac OS X (with the Developer Tools installed) and Windows (using Visual Studio 6, 2003 or 2005), the library builds out-of the box (well, almost: on Windows you need to have QuickTime and the ASIO SDK installed). However, for Linux there are a couple of external dependencies.

This is a small tutorial (and a reminder for myself, as usual) for those interested in building JUCE on Kubuntu 7.10 “Gutsy Gibbon” (these instructions should also be useful for other Linux distributions, but I cannot tell for sure). Continue reading

Feeling like a grown-up kid

Jedi Knights, when they achieve a certain level of maturity in their craft, are told to build their own lightsaber, as one of the final steps of their training. Software developers have similar feats to accomplish at least once in their coding life, like building their own Linux kernel, writing a rant about Microsoft Windows in their blog, submitting a patch for some open-source system, or even starting and managing their own company or open-source project.

Today I’ve compiled my own kernel from scratch, thanks to the instructions given in the Ubuntu forums. And I feel like I’ve done another nice, big, useful step in my career. I can only thank all of those who write how-tos and instructions in forums, which is one of the factors that make Linux so great; you can find information about how to do pretty much anything, with incredible levels of detail. I hope that my small contributions might be useful to others! This, for me, is a way to give back to the community as well.

BirthdayCard Project

I have just created a project page for the BirthdayCard Project. This was an experimental project for me, to test the combination of several open-source and proprietary technologies such as

  • wxWidgets
  • SQLite
  • CppUnit
  • Doxygen
  • Eclipse
  • Visual Studio
  • Xcode
  • ISO C++

The final result is a small utility that you can use to store birthdays for people you know and care about. You can add as many people as you wish, and for each person, as many dates as needed. It has a layered architecture, in such a way that the underlying “business” classes (namely Person and Date) are reusable in another application (my idea was to add a command line app to show this, but I will do it in a later step). The code is portable, and was tested with 3 different compilers (3 GCC versions, and Microsoft’s Visual Studio .NET 2004 one).

Here’s a screenshot of BirthdayCard, running on Mac OS X Tiger:

There are more screenshots in the corresponding page.

I have provided binaries for Mac and Ubuntu (only PowerPC binaries, sorry) and Windows. There is a bundled SQLite database file that contains 950 people, and 2 dates for each person. All in all, it took me 2 weeks to develop the thing, mostly on evenings and weekends.

I have placed the code in the public domain, so that everyone can use it and do what they want with it. The project can be opened with several IDEs, and the code is completely documented for your reading pleasure. Feel free to use this as a template for your own wxWidgets applications, and as always, I am not responsible of anything that could happen while using this software! Use it under your own responsibility, learn & teach, and be kind to each other.

In a future article I will post more comments about what I’ve learnt while creating BirthdayCard.

Java on Ubuntu for PowerPC

Ubuntu bundles a great application, Synaptic Package Manager, which makes an excellent job to manage the dependencies, installation and desinstallation of applications of any kind in the Ubuntu platform. This usually works for all the platforms supported by Ubuntu, including the PowerPC architecture, which is the one that concerns my good old G3 iBook.

As I said, it usually works. Particularly for Java, the installation via Synaptic Package Manager does not work, since Sun does not provide Java, in any version, for the Linux/PowerPC platform (there is a Java version for Linux, but it targets the x86 architecture). And since Java is not an open source project (yet), it becomes harder to know what to do.

So this is where this page comes in: it provides all the information needed to install Java in a PowerPC-based Mac, from the 603 to the G5. It even provides the instructions to configure Firefox, Mozilla and Opera to use your newly installed Java installation properly!

Update Xfce in Ubuntu Dapper

Just found this article about how to update the Xfce desktop with the latest version, 4.4rc1, released earlier last September.

The problems I had with following those instructions in my PowerPC G3 iBook were:

  1. I could not have the Trash icon working in the panels
  2. The “Thunar” version that kept appearing was version 0.3, not the latest 0.4.

As such, I rebuilt Thunar following these instructions, and then I applied this quick fix found here:

  • cd /usr/bin
  • sudo mv Thunar Thunar.backup
  • sudo mv thunar thunar.backup
  • sudo ln -s /usr/local/bin/Thunar Thunar
  • sudo ln -s Thunar thunar

This did it! I now have the latest version of Xfce and Thunar running in my computer.

Xubuntu

Since I discovered Ubuntu I’ve been trying to install it in different hardware, in different computers, even in virtual machines, and I just love it. It installs without problems, I can add and remove the coolest productivity and development tools fast and easy, everything is ready to use, and it just feels great.

My latest discovery is Xubuntu. It is basically the same as Ubuntu and Kubuntu, but with the Xfce desktop instead or GNOME or KDE. The nice thing is that I have not had to uninstall Ubuntu: I just typed “sudo apt-get install xubuntu-desktop” at the command prompt, and 10 minutes later I logged into Xubuntu.

The net result is a sooooooo much faster user experience.

The main machine where I have Xubuntu installed is a rather old G3 iBook that I bought in 2002, with only 256 MB of RAM and 30 GB of hard disk. The machine runs like a charm, but of course with GNOME and KDE there’s a lot of swapping. As soon as I installed the Xfce desktop, things went really faster. I can only recommend using Xubuntu in old machines: the base system only takes 90 MB of RAM, and applications load faster than in GNOME or KDE.

I just love (X)(K)(Ed)Ubuntu :)