Dedicated to my late brave, beautiful and silly mummy, Debra Ross. I love you mumster.

Skip navigation

Category archive for linux

Because archives are so much easier than having just hundreds of posts on the home page. I learned that the hard way.

My OS pipe dream, and HP developing a Linux distro?

According to a CNET News report, HP is rumoured to be creating an alternative operating system to Windows, based probably on Linux. From the report:

Is the biggest PC vendor in the world looking to give customers an option besides Windows?

An article appearing in BusinessWeek this week cites anonymous sources who say Hewlett-Packard is at least looking into it. “Sources say employees in HP’s PC division are exploring the possibility of building a mass-market operating system,” the article states.

The operating system would reportedly be Linux-based, but would be tweaked to be more accessible to mainstream users.

If this rumour is true, I think it’s a fantastic move on HP’s part. Apple has shown with Mac OS X that a superior user experience can be achieved outside the realm of Windows by leveraging the power of a free and open source operating system under an aesthetic user interface, on hardware created specifically for the OS and vica versa!

What I’ve always said I’d love to see; and this development might be a step in the right direction; is a break from the monoculture of Windows replaced by a mixture of operating systems that can communicate through open standards. This is perhaps a weakness with efforts like Ubuntu, Debain and other GNU/Linux distributions; they are emulating the Windows model with all the problems associated with all the trillions of different combinations of hardware that they could potentially run on. For people like me who revel in tinkering with computers this isn’t a problem, but for people who actually have work to do on their machines and don’t have a degree in computer science it’s just a pain in the arse.

I’m imagining a time in the not too distant future when:

  • there are an interesting assortment of operating systems such as Mac OS X on Apple computers, HP Linux on HP computers, Dell Haiku on Dells, ASUS Minix on EEEs…
  • despite their different architectures they can all exchange documents with each other and read them without trouble
  • they can all run software written for others with little or no modification through compatibility layers and standardised APIs that everyone respects
  • instead of terms being dictated by one software vendor in Redmond, computer hardware companies modify the software for their customers needs
  • computers become nice to use again
  • vanilla versions of operating systems such as Debian GNU/Linux and FreeBSD continue to exist separately (as well as being the foundations of the custom OSs above) for power users and computer enthusiasts, just as sports cars exist for motoring enthusiasts!

I know it’s a pipe dream that will almost certainly never happen. A nerd can dream though right?

And as for the article specifically related to HP exploring other options besides Windows, any chance HP would create an OpenVMS laptop or consumer desktop? That would be a VERY compelling product! Pipe dream number 2!

VMware Fusion 2.0 beta2 with FreeBSD review

UPDATE: An abridged version of this review has been picked up by the fine folks over at BSD News. If you’ve arrived here from there, all my FreeBSD and NetBSD posts can be found in the aptly-named BSD category. Cheers :-)

I’ve loved using virtualisation software ever since I had an early version of Connectix Virtual PC for my iMac DV back in the early 2000s, and later their Windows version before they were bought out by Microsoft. Virtual PC was mostly intended for people to use recent versions of Windows on Mac OS 8, but I preferred using it for resurrecting classic operating systems such as DOS/Windows 3.x which we had on our first home machine, and playing around with Linux distributions without going through tedious partitioning.

My predictably unnecessarily verbose introduction aside, the latest virtualisation software I’m using on a regular basis is VMware Fusion for Mac OS X, and I’ve been very pleased with it. The second beta release for version 2.0 is out now, and I spent my Sunday afternoon trying out build 107508 with a handful of my most used operating systems, plus FreeDOS for fun!

VMware Fusion 2.0 beta 2 Virtual Machine Library
VMware Fusion 2.0 beta 2 Virtual Machine Library

The most noticeable difference initially between this latest beta and version 1 of Fusion is the redesigned Virtual Machine Library. Taking a cue from Virtual PC, the plain text listing of virtual machines has been revised to include screenshots for the suspended machines. While I think this is a extremely useful and welcome addition for quickly recognising machines visually, I think the Mac-like glossy finishes are a bit overdone. Also despite making the interface more Mac-like overall, I can’t help but think the New, Open and Settings would better be served by a regular toolbar at the top of the window.

The New Virtual Machine Assistant has been improved to allow for more boot and drive options. You’re no longer limited to choosing from a physical or virtual optical disc; you can choose to use an existing virtual drive or even none at all: a VERY welcome addition! Before you run the machine the first time you’re asked whether you want to modify settings too, which means you no longer have to start the machine at the end of the assistant and hastily shut it down to fine tune its configuration.

VMware Fusion 2.0 beta 2 New Virtual Machine Assistant
VMware Fusion 2.0 beta 2 New Virtual Machine Assistant

Speaking of configuration, the Virtual Machine Settings window has been drastically redesigned to make it look much more like the Mac System Preferences application, and to make it easier to access all the new options and virtual devices you can configure. Amongst the new goodies are the ability to configure floppy drives, parallel ports, serial ports, and multiple virtual hard drives. When I saw these additions, I literally jumped out of my chair and screamed "HELL YEAH!"

Fusion 2.0 beta 2 also allows you to visually scale and stretch live running virtual machine displays. Even just a little bit of scaling adversely affects the readability of text, but perhaps for other applications such as full screen gaming which needs to be scaled to fit to an unsupported resolution this might be useful.

VMware Fusion 2.0 beta 2 New Virtual Machine Assistant
Demonstration of the live visual scaling in beta 2. Both the NetBSD and Slackware virtual machines are set to 1024×768 but the latter has been scaled down.

Now for the bad news. I’m not sure if this is a temporary setback as a result of it being a beta version (I did disable debugging checks), but graphical performance in BSD operating systems on my original generation MacBook Pro is nothing short of abysmal. VMware provides welcome additions for FreeBSD, but even installing these in FreeBSD 6.3 Release and using them with the compat6x layer in FreeBSD 7.0 Release made no difference to the overall sluggishness. NetBSD 4.0 was just as bad, without any additions.

This slow performance was most pronounced when I started Xorg on FreeBSD or XFree86 on NetBSD. Typically starting an X11 environment in VMware Fusion 1.x takes less than a second followed by several seconds for loading the desktop environment or vanilla window manager. With Fusion 2.0 beta 2, both FreeBSD and NetBSD take over 5 minutes just to start X11, and another few minutes just to load something as lightweight as Fluxbox… if you want to load Xfce or KDE it takes over a whopping 10 minutes.

To check whether this was a problem with BSD, I tried Slackware Linux 12.1 with the same versions of KDE, Xfce and Xorg; and while it still felt a little sluggish it still managed to load all three in a reasonable amount of time.

Given I need to use FreeBSD for my studies I just can’t use this beta release on a production machine, but if you primarily use Windows or Linux you could probably try it out.

Fun with Xfce part 4: Using Openbox

What started as a mini series on the Xfce Desktop Environment on my university intranet has evolved into an open ended exploration on my public blog, and I’m having lots of fun doing it! Scroll down to the end of this post to view links to the previous posts in the series.

Part of the Xfce desktop environment is Xfwm, the Xfce window manager. Xfwm provides sophisticated and pretty composting effects such as drop shadows and alpha transparency on windows and menus, while still using less memory and power than competing desktop window managers. Despite this, for much slower machines even Xfwm can be overkill.

ASIDE: "Window managers" draw the widgets, title bars, resize handles and other elements onto application windows. "Desktop environments" such as KDE, GNOME and Xfce bundle their own window managers along with software developed specifically for their environments, such as Thunar for Xfce.

Enter Openbox, again! Openbox is an extensible, standards compliant, very minimalistic window manager that can be used by itself or in place of a desktop environment’s default window manager to further reduce memory and processor resources. The separate obconf utility provides a nice graphical control panel you can use to switch themes and adjust settings.

The Obconf window and Xfce Settings menu entry
Openbox running in Xfce with the bundled "Mikachu" theme

Most reputable package managers carry both Openbox and obconf, check your distribution’s repositories. To install them on my favourite BSD flavours for example:

FreeBSD ports system or package
# cd /usr/ports/x11-wm/openbox && make install clean
# cd /usr/ports/x11-wm/obconf && make install clean
or:
# pkg_add -rv openbox
# pkg_add -rv obconf

NetBSD pkgsrc
# cd /usr/pkgsrc/wm/openbox && make install clean clean-depends
# cd /usr/pkgsrc/wm/obconf && make install clean clean-depends

Now we want to kill the active Xfwm process in Xfce and open our glorious Openbox replacement. Fire up your Terminal and enter:

% killall xfwm4 ; openbox & exit

It really is smaller in every sense of the word isn’t it? To make sure Openbox is used by default whenever you start Xfce, quit Xfce and check "Save sessions for future login".

The Obconf window and Xfce Settings menu entry
Don’t worry, CC looks pretty confused herself!

You’ll also notice that the "Openbox Configuration Manager" has added itself to the Xfce Settings menu! Click on it and have fun with all the different themes, button positions, font sizes and arrangement settings.

Related posts

Long live the Cobind Desktop

With all my ongoing talk on the Xfce desktop on FreeBSD in the last few weeks, I can’t help but wonder: what happened to the Cobind Desktop?

Cobind Desktop was a GNU/Linux distribution headed by David Watson that focused on almost zen like simplicity. Unlike virtually every other desktop distribution at the time that focused on adding more and more features and applications with each release, Cobind was visibly designed from the ground up to be usable by only bundling a core suite of applications that suited the needs of the vast majority of computer users. As a consequence it was lightweight, fast, and could be distributed on only one CD compared to the 3-6 CDs of some of the larger distributions at the time.

Cobind Desktop
Cobind Desktop, circa 2004

From the moment I lay eyes on the initial press release and screenshots for Cobind Desktop, I was in love. It was so elegantly designed and the 0.2 release ran beautifully even on my creaky 450MHz HP Brio BAx desktop I had at the time. It was obvious when using it that a huge amount of care, time and thought had been put into how it was put together and what was included, rather than just using a shotgun approach.

I never really realised it, but thinking back now it’s clear the Cobind Desktop had a profound effect on my work as a programmer and system designer. I attributed my taste for elegant systems without unnecessary bells and whistles to using Apple software, but in fact Cobind taught me much about what I know when it comes to building systems. Here was a team of people who could have put literally thousands of polished, free and open source applications into a distribution but instead chose to select the cream of the crop and create a truly usable system.

My Armada M300 FreeBSD notebook, circa 2008
My Armada M300 FreeBSD notebook, circa 2008. You think Cobind influenced me in some way?

USELESS ASIDE: That anime character is Sailor Mercury from the infamous Sailor Moon series, as I talked about in a seperate, entirely useless post. Elke and I used to watch it along with DragonBall Z on Agro’s Cartoon Connection before school when we were kids (those were the days!). Ami rocked because she was the "smart one" who used a little laptop to "assess" her enemies before fighting them. Not having blond hair I think also helped. Who needs brawn when you have brains right? And the computer that’s running on is a little laptop. I’m so poetic, in a very un-poetic way!

Technically speaking, Cobind Desktop was based on the first release of Fedora after Red Hat split its primary release into enterprise and consumer desktop distributions. It used the Xfce desktop environment with the then-beta releases of Mozilla Firefox, Mozilla Thunderbird included as standard; I’ve been an avid user of all three ever since.

The Cobind folks also pioneered a fantastic graphical frontend for YUM, surprisingly called YUMGUI, to make it easier for regular folks and power users to add extra packages if the preinstalled applications were insufficient or you preferred alternatives. (a clean default install with the option to add material only when you need it… one of the reasons why I love FreeBSD and the Ports system now!)

Cobind Desktop
David Watson giving a presentation on Cobind in 2004

David Watson did an interview with FlexBeta in March of 2004 about the design philosophy behind Cobind:

Paradox of Choice by Barry Schwartz The entire design concept is based on a book called the Paradox of Choice, by Barry Schwartz, who is a professor at Swarthmore. We believe that this concept can be applied to software design, and produce more usable products as a result. I’m not certain whether anyone has applied the concept in this way, but it flies in the face of typical desktop designs which are more oriented toward comparisons on a huge feature matrix.

Our desktop product design is more like a desktop appliance. This kind of design is more commonly seen on the server, where programs are eliminated on the basis of security threats. We are doing this on the desktop, but we’re doing it because we believe that it produces a more usable product, not because it’s more secure, although that’s clearly a useful side benefit.

Our desktop product is very focused toward doing a few tasks well, not trying to be all things to all people. That said, we do have a lot of advanced users who are trying the desktop, since they like the concept, and adding their favorite software with yum. But we are trying to reach a new audience with this product - crossing the chasm, if you will.

For what it’s worth, Paradox of Choice is also brilliant!

As far as I can tell, Cobind has not existed for a while now. Cobind.com now takes you to domain squatters, and DistroWatch reports their last release was version 0.2 which was made available two days shy of four years ago in 2004. Rest in peace Cobind, and thank you to all the developers for helping me out and sending me down the right design path.

Fun with Xfce, part three

This post is part of a series on Xfce, originally posted on my university blog. I’m republishing them here in the hopes that others might find them useful or interesting. Cheers!

In part one of my Fun with Xfce series I talked about why I like using Xfce to begin with, and in part two I explained how to install the complete desktop environment from scratch using FreeBSD ports and pkgsrc, as well as some free GNU/Linux distros that use it by default. In this post I’ll be showing you how I spruce up Xfce to look much more spiffy, learned from many hours of experimentation!

When you run Xfce for the first time, it does look a bit bare. I revel in this; it’s like getting a blank but very flexible canvas to change as I see fit! Assuming you installed the complete desktop using a "meta" package or port, the first thing you can do is browse the built in themes and options. Right click your desktop or click the Xfce icon in the lower dock to bring up the Desktop Menu, then navigate to Settings and click Settings Manager. The control panels you’d be interested in are Desktop, User Interface and Window Manager. They’re extremely well laid out and very self explanatory.

If every computer system had configuration panels that were as intuitive as Xfce’s, I imagine the world would be in a much less stressed place!

Settings windows in Xfce 4.4.2
Settings windows with the default Xfce 4.4.2 themes & decorations

While Xfce does come with a beautiful collection of polished window manager decorations (aka title bar styles), personally I don’t like the built in themes as much and am not a big fan of the lone icon set. Fortunately because Xfce uses GTK+ you can use many of the same themes and icon sets developed for the much larger GNOME desktop with no problems. Kick arse!

First to the themes: personally I like using the Clearlooks theme engine that is used by Ubuntu. It looks very polished and doesn’t have as much of a chiseled look as some of the default themes. In the FreeBSD ports system there are two different versions available which caught me out the first time! Once you’ve installed them, go back to your User Interface settings screen and choose Clearlooks from the list box.

For the fancy version, as famously used in Ubuntu:
# cd /usr/ports/x11-themes/gtk-murrina-fancy-clearlooks
# make install clean
or: # pkg_add -rv gtk-murrina-fancy-clearlooks

For the older, Bluecurve inspired version:
# cd /usr/ports/x11-themes/clearlooks
# make install clean
or: # pkg_add -rv clearlooks

As for icons, I’m a huge fan of Tango Desktop Project who’s stated aim is to "help create a consistent graphical user interface experience for free and Open Source software". The icons they’ve developed look very swish, scale beautifully and use lots of green and blue which I prefer to the default Xfce brown iconset. On FreeBSD you’ll want to grab two Tango ports, then click the Icons tab in the User Interface settings window.

# cd /usr/ports/x11-themes/icons-tango
# make install clean
or: # pkg_add -rv icons-tango

# cd /usr/ports/x11-themes/icons-tango-extras
# make install clean
or: # pkg_add -rv icons-tango-extras

Just by installing Clearlooks and the Tango iconset, you’ll be rewarded with a much prettier desktop!

Before…
Xfce 4.4.2 with Xfce theme and Rodent iconset

After…
Settings windows in Xfce 4.4.2

Okay I cheated in that second shot, I set a desktop background and changed the window decoration to Katiola which blends the menu and title bar to make it look more OS X-ish.

Stay tuned for the next installment.

Fun with Xfce, part two

This post is part of a series on Xfce, originally posted on my university blog. I’m republishing them here in the hopes that others might find them useful or interesting. Cheers!

In my Fun with Xfce part one post I explained that I find Xfce such a pleasure to use because it’s fast, lightweight and has natural visually consistency with my GTK+ apps without the bloat of GNOME, while still providing a cohesive desktop experience with functional applications. In this post I’ll be explaining how to install it.

ASIDE: If you want to give Xfce a try without going through the process of using a package manager and configuring Xorg, the Zenwalk and Xubuntu GNU/Linux distributions have Xfce as their default desktops, plus they have very slick installers and are very newbie friendly.

What’s so liberating about using Xfce as opposed to GNOME or KDE is how lightweight it is and how few dependencies it has in comparison. This is especially noticeable on computers with less storage space, and slower machines which can literally take an entire day to build a desktop environment from source, if that’s your preferred installation method. Of course this means that Xfce is missing some features, but I don’t find myself missing any of them.

Xfce About dialog box, Terminal window showing FreeBSD uname

My experience with package managers are really limited to the FreeBSD ports system and NetBSD’s pkgsrc (on NetBSD and Slackware Linux), so these will be the systems I’ll talk about here. Most *nix package management systems have Xfce though, and most have an easy to install “meta” package that contains the whole desktop.

To install a complete Xfce desktop on FreeBSD (I’m assuming you already have X installed and configured), update your ports tree (visit the Using the Ports System chapter in the FreeBSD handbook if you need help) then compile and install. Alternatively you can install the pre-compiled package which is generally up to date with Xfce’s releases (currently at 4.4.2).

# cd /usr/ports/x11-wm/xfce4
# make install clean
or …
# pkg_add -rv xfce4

On NetBSD and/or if you’re using pkgsrc, the procedure is just as easy:

# cd /usr/ports/meta-pkgs/xfce4
# make install clean clean-depends

Then it’s simply a matter of adding exec startxfce4 to your .xinitrc file in your home directory; create it from scratch if it doesn’t exist. Make sure to comment out any other lines related to other desktops and/or window managers you might have installed (but obviously keep lines you may have added to have X11 applications start automatically when you launch X).

Typing startx at this point will start X and your new Xfce desktop!

ASIDE: If you haven’t aliased your machine’s hostname to 127.0.0.1 in your /etc/hosts file, Xfce will give you a warning message. You can safely ignore it, but it can get irritating after a while! Edit your host file to fix this.

In the next post I’ll be explaining how I pretty up Xfce by adding new themes and icon sets, and how to make it look like other desktops. Stay tuned.

Fun with Xfce, part one

This post is going to be part of a series on Xfce, originally posted on my university blog. I’m republishing them here in the hopes that others might find them useful or interesting. Cheers!

You may have noticed a few weeks ago I announced that I was moving my primary machine over to GNOME from KDE, mostly because the applications I use most heavily on FreeBSD and GNU/Linux are all GTK+ based and it seemed silly to run them in a Qt system. I’m a sucker for eye candy and visual consistency.

Well here I am now typing this on my newly reinstalled FreeBSD, Xfce desktop and it’s running great.

My FreeBSD Xfce 4.4.2 desktop!

You can be forgiven if you’re new to the world of Linux, BSD and X11 in general if you’ve never heard of Xfce; it certainty has been given far less publicity than the heavyweights GNOME and KDE despite it actually being born around the same time. Unlike GNOME and KDE which strive to be the ultimate desktops with all the bells and whistles, Xfce is designed to be lightweight and fast while still being a usable and complete desktop environment out of the box (as it were). This means unlike vanilla window managers such as Fluxbox it also includes a file manager, desktop background and icon support, graphical configuration, panels and so forth. A full list of included goodies is maintained on the Xfce projects site.

The real kicker for me is that as with GNOME, Xfce uses GTK+, meaning all my most used applications such as Gnumeric, Abiword, Mozilla Firefox, The Gimp, Inkscape, Thunderbird and the X11 version of VIM all look really slick and match the rest of the system. I’m a sucker for eye candy and visual consistency. Wait, I already said that.

In the coming days I’ll be posting many more entries about my experiences with Xfce including how I’ve customised and used it and some other tidbits I’ve picked up along the way. Stay tuned :-).

Debian Etch for 5, then back to Slackware

For my university studies and to keep up to date with what’s happening in the Linux world (given I’m a FreeBSD guy mostly) I decided to dual boot my new desktop machine with Debian GNU/Linux 4.0 Etch. In the past I’d always used Slackware to fill this role, but I figured I’d just try something new.

ASIDE: "Debian GNU/Linux 4.0 Etch" just doesn’t roll off the tongue as well as "Slackware Linux 12" or "FreeBSD 7.0 Release". A ridiculously pointless observation, but one that I believe deserves recognition. And it would look just fab printed on a shirt.

Within a few minutes of starting the initial install, I got the following error:

Debian Etch failure

No common CD-ROM drive was detected? Are they serious?

Using the exact same optical drive I’ve been able to install the latest versions of FreeBSD, NetBSD, OpenBSD and Slackware Linux, not to mention a creaky old version of Windows 2000 and even IBM OS/2 Warp! And yet Debian GNU/Linux cannot even detect the drive after the initial boot phase?

I took it to be a sign to keep using Slackware for my Linux partitions. It’s a shame, I was looking forward to seeing why people seem to love apt-get so much; I guess it’s back to my FreeBSD desktop with the ports collection, and Slackware Linux with pkgsrc. Not that I’m complaining, it’s still my favourite distribution!

RichardDawkins.net