October 10 2010

The New Ubuntu

Back in 2008 I switched to Linux (Debian Lenny) and abandoning it for Mac OS X again in early 2009, due to the mess that is fglrx.1 Mac OS X is still my main OS on both my work and home machines, but once in a while I’m still tempted to switch. The efforts of the Ubuntu team are one of the main reasons I’m still considering to go back to Linux.

In 2008, I chose Debian as my OS because of its philosophy and I though I still sympathise with Debian’s Ideology of Free, I would choose Ubuntu as my flavour of Linux next time I decide to switch. Earlier, I also stated my preference for KDE in favour of GNOME, but looking at the releases Ubuntu is churning out, I would happily use GNOME over KDE. In part the ethereal transparency fetish that seems to have gotten a hold of the KDE design team is to blame for this. The fact remains that the KDE 4 Plasma theming support is lacking in some areas. Fine-grained control over colours and fonts isn’t possible at the moment.2 Also, the user interfaces of a lot of the core KDE applications don’t appear to be well designed as opposed. It’s nitpicking on the level of widget and button placement, I know, but considered together with the others things I don’t like about KDE (notifications, limited theming, etc.) I would choose GNOME.3

I believe my critique of GNOME versus KDE 4 is still valid. KDE still has a clearer architecture and overall vision of where its heading. Ubuntu makes up for the muddled nature of GNOME though, by having a clear vision and points of focus with each release. I was delighted to read that Mark Shuttleworth wants to focus more on the visual design of Ubuntu, which has drastically approved with the last few releases. The creation of the new Ubuntu font by Dalton Maag in the latest release (“Maverick Meerkat”) is testament to that as well. It’s as nice interface font with proper anti-aliasing and a world apart from the horrible looking default “Sans” of the olden days. Also, it has much better support for light and dark themes than KDE has. Installation was a breeze, as well as configuring drivers (I only had to activate my proprietary wireless driver). The Ars Technica review of Ubuntu 10.10 is a very nice read if you want to know more.

The only thing I didn’t try was fiddling with the display drivers. The testing machine has an ATI graphics card in it, so if I want to use a dual monitor setup or utilise it for my gaming needs I would need to install the beloved fglrx drivers again… Which is a world of pain. Considering the ease with which my wireless was enabled on Ubuntu I have some hope of experiencing the same joy with activating the fglrx drivers. If it’s as painless as the wireless procedure I just might consider switching again.

  1. Maybe things improved in the meantime, but setting up fglrx and fiddling with the compilation of your own kernel mods wasn’t the most fun thing to do on Debian. It broke X a lot of times as well.
  2. One of the bugs filed in relation to this doesn’t seem to have a lot of support or priority.
  3. KDE might have a more concise framework and architecture, but GNOME has those characteristics on a visual level in comparison to KDE at the moment.

December 12 2008

Lenny’s binary firmware blobs

Debian Lenny seems to be nearing general release. That’s why this General Resolution on the Debian website is so puzzling from the perspective of an end user. Planet Debian was buzzing with posts regarding this resolution, which most developers regard as a situation where the bureaucrats are hijacking the release for ideological reasons.

I understand why it’s undesirable to have unsourced firmware code in any release of a distribution which aims to implement the notion of free software to its fullest. But it’s a problem that has plagued all of the Debian releases as of yet, so why delay Lenny now when it’s ready to be published? I’m not sure what the legal ramifications are when shipping a distribution with binary firmware blobs, but as this hasn’t been a problem in the past it will probably not be a problem for the next release.

The Debian philosophy is great and there should be a constant drive to adhere to these policies, but not at the cost of the product to be shipped or letting down the user of said product. Lenny has been postponed indefinitely in September already for more valid reasons (too many bugs). Delaying it again for reasons most users won’t understand or don’t care about (unfortunately) isn’t helping the project at all.

Why not make the elimination of unsourced firmware code and the implementation of a procedure to handle this code a priority for the next release of Debian?

September 9 2008

Switch to KDE 4 and compiling PowerDevil

After running KDE 4 for a while on my work machine I’ve decided to switch to KDE 4 on my MacBook Pro as well. I really like what they did with the newest version of KDE 4 and while I was a little hesitant because of the controversy concerning the 4.0, the latest 4.1 iteration is very promising. Yes, a lot of features are still of beta quality, I experience frequent Plasma crashes on logout for example, but the sum of its parts makes it a really worthwhile experience.

One of the best things is the fact that they integated compositing and desktop effects directly into the window manager, instead of requiring an installation of Compiz Fusion and Emerald do the trick. The introduction of Mac OS X and with it Quartz and Microsoft copying this faithfully by introducing the Desktop Window Manager in Windows Vista show that composited window management is the future.

With KDE 4 you can install all these handy plasmoids, but unfortunately a lot of them are not included in either kdebase-plasma or kdeplasma-addons from the repositories, but are available as source code.

I’ve tried to compile some of them over the past few weeks but never succeeded until yesterday. This post helped me getting started down the right path.

I own two laptops and KDE 4 doesn’t have a suitable power management utility for notebooks (i.e. suspend to RAM on closing of the lid or warn about low battery). PowerDevil, which is currently under review to be included in future versions of KDE, is something which fits the aforementioned job description perfectly.

To install PowerDevil, which consists of a daemon, widget and System Settings module (called “Power Management Services”), just follow the steps below:

1. Get the source from the KDE svn repository, or download the beta from KDELook.org:

svn co svn://anonsvn.kde.org/home/kde/tags/powerdevil/4.1

2. Change to the newly created “powerdevil” directory containing the source code and create a build directory, then move into that build directory:

cd powerdevil
mkdir build
cd build

3. Make sure you have “build-essential” installed from the repositories and install “cmake”:

sudo apt-get install build-essential cmake

4. Install the following development packages from the experimental repository. The Lenny backports might work as well, but for me it doesn’t somehow:

sudo apt-get -t experimental install cmake g++ libkonq5-dev libkonq5 libplasma-dev kdelibs5-dev kdebase-dev

4. Run cmake:

cmake -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix` ..

5. You might get an error regarding X11_Xscreensaver_LIB:

Cmake Error: X11_Xscreensaver_LIB (ADVANCED)

To get rid of this install “libxss-dev”:

sudo apt-get -t experimental install libxss-dev

6. Run make.

7. You might run into an error regarding the PowerDevil daemon. This might indicate that the KDE workspace development package is missing, installing it will likely resolve the error:

sudo apt-get -t experimental install kdebase-workspace-dev

8. Now run sudo make install and the Plasmoid should be installed. It might take a while to get registred by KDE and some users have reported that it doesn’t register at all (it’s beta software after all), but my laptop is now power managed by PowerDevil.

With the same setup I’ve also compiled the QuickAccess plasmoid available here, which I duly recommend installing.

And totally unrelated; I really need to change the visual theme of this weblog to something a bit more personal.

Update:
I’ve updated the SVN part of the guide since PowerDevil moved out of kdereview.

July 7 2008

I choose you, Debian, to be my…

So I decided to switch operating systems a couple of weeks ago. I’ve used closed source operating systems all my life, starting with MS-DOS on a Vendex Headstart XT machine (Microsoft still even lists a bug on its website and do watch the hilarious advertisement on Youtube). After that I had to endure both Windows 95, 98 and XP before buying a second hand Apple G4 desktop which came with Mac OS X Panther. When my work required me to be more mobile I decided to buy a MacBook Pro, which were recently introduced at that time. It’s the machine I continue to work with today.

Mac OS X made life much easier, introducing useful features with each new version of OS X I used (Panther, Tiger and Leopard). Functionality like Exposé and more recently Quick Look might at first appear as useless interface “bling” but in practice really help you navigate your system much more easily. Of course some bling is hopelessly useless, such as implementing something like Cover Flow in a file manager or having a separate desktop layer to store widgets which aren’t particularly handy and don’t follow the standard Apple interface guidelines.

The only closed source, proprietary software I used in the end were my text editor (the excellent skEdit), FTP application (Transmit), invoicing software (iBiz), Mail.app, Safari web browser and the Mac OS X operating system. I already used free and open source software for most of my other daily activities, so why not migrate to a complete free/open source system, I thought?
The announcement of Snow Leopard and the strong rumour that the Power PC platform will be officially abandoned after the new Leopard upgrade by Steve Jobs and Phil Schiller during the WWDC 2008, also made me change my mind about running proprietary software. I’ve come to dislike the radical way with which Apple drops support for its platforms (the last PowerPCs were sold two years ago) and the pace at which software packages start requiring new versions of an operating system. Of course it’s called progress and nobody forces you to upgrade to the latest and greatest. But on the other hand newer versions of applications force you to upgrade your whole system eventually. I’m aware that this is common practice in the world of software — either commercial or free — but the rate at which a platform like Apple is developing this upgrade requirement seems artificial in many ways and driven by the commercial incentive to create a bigger profit. Which is, well, one of the biggest reasons why commercial companies exist.

The drive to progress is also present in the Free/Open Source world, but it doesn’t inherently come at the cost of investing in a new software ecosystem. Take Compiz-Fusion for example, which provides the equivalent of desktop “bling” found in Mac OS X and Windows Vista. While Windows Vista has some to be able to run the Ultimate version of its Aero interface, Compiz can accomplish the same on relatively old hardware. The abundance and freedom of choice is also a big plus. For example, it might not be the best choice to run the latest GNOME or KDE on ancient hardware, but you can choose from a wide variety of desktop environments — like Xfce or Blackbox.

So I decided to switch to use Free/Open Source software. My operating system of choice is Debian. In part because I like the philosophy of the OS composed entirely of free software. Unfortunately I couldn’t live with some closed source stuff (the ATI fglrx drivers), so I enabled the non free repositories in aptitude. Another reason why I chose Debian is the fact that Ubuntu, which seems almost omnipresent on the web these days (most howto resources refer to Ubuntu in some way or another), is based on Debian, so a lot of tutorials on how to set up the system also apply (in part) to Debian.

At first I was a bit hesitant and partitioned my hard drive to accommodate a triple boot install of Mac OS X Leopard, Windows XP (both already there) and Debian. I used these excellent guides regarding the MacBook and MacBook Pro on the Debian wiki. I’m not sure how much of the stuff in those guides is now outdated, but especially the first chapters on how to resize the disk and set up rEFIt was very valuable.
I ended up with Debian on a 8 GB partition working perfectly alongside OS X and Windows on my MacBook Pro. After a few days however, I decided to ditch OS X completely, wiped my hard drive and installed a fresh copy of Debian on my machine which now dual boots Debian and Windows XP, for testing websites in Internet Explorer and because some games don’t yet work in Wine.

I had some problems booting with this setup, because I missed a very important part of the MacBook guide on the Debian wiki. rEFIt took care of my triple boot setup before, but the dual boot situation without OS X requires some other tweaks at the end of the Debian installation. I forgot to synchronize the GPT (GUID Partition Table). From the Debian wiki:

[!] Install the GRUB boot loader on a hard disk:
Do not install the GRUB boot loader. So, leave this menu item and go to the main menu by selecting ‹Go back›.

Synchronize MBR and GPT: Switch to the second virtual console by pressing ctrl-alt-F2, press return to start the shell, and then enter

chroot /target aptitude install refit
/target/sbin/gptsync /dev/sda

and enter ‘y’ at the prompt. This synchronizes the MBR from the GPT, which were made out of sync by parted.

(The directory /target is the directory in which the Debian installer installs the new system and it later becomes the root directory /.)

Then continue with installing your boot loader.

So now Debian unstable/sid is my primary OS and I’ve used it happily for about two weeks now. The reason why I’m running sid is (I started with testing/lenny), despite my comments about forced upgrades above, I really do like to try out new stuff or use more recent applications which are at a very low version number in lenny or etch or do not even exist in those repositories.