Fun with graphics card drivers in Ubuntu 12.04

Summary: If you have performance problems using the JACK Audio-Connection-Kit and the fglrx ATI grpahics card driver, switching to radeon may solve them. Unity 3D and radeon can work, but leftovers of other drivers might get in the way. Also: Proprietary, binary blobs smell bad and Ubuntu’s infrastructure around those drivers is dodgey.

On Ubuntu 11.10, I switched graphics cards and thus drivers from nvidia to fglrx without much of a problem.

I recently upgraded to Ubuntu 12.04 and was quite pleased by how smooth that went and glad for not having to reconfigure and reinstall a bunch of stuff. As with every release so far, some issues might have disappeared, but a very noticable new one arrived: focus-follows mouse combined with auto-raise does no longer work reliably. So far I failed to identify the pattern for the cases where windows are not raised, when they should be.

After a while, I wanted to get back to music production with JACK and Ardour. My system was still configured for JACK to run in realtime mode, but I got many disconnects, often right when Ardour brought up its main window. I found out this only happened with Unity 3D, not with 2D. So it seemed like either one or the combination of Unity 3D and the fglrx driver interfered with realtime mode. A fellow #lad inhabitant knowledgeable about this realtime kernel business suspects that the 3D accleration part of the fglrx driver is not preemptable.

Where does one even report bugs about that proprietary blob? And how would one diagnose what exactly goes wrong?

Now I could use Unity 2D, but I really miss window drop-shadows, dislike the look and different notification animations for the Launcher icons and hate the fact that the Dash doesn’t react to the same shortcut I configured while using the 3D version.

Initially, I thought I would need the fglrx driver for Unity 3D, but still wanted to try switching to radeon. The Additional Drivers dialog claimed that neiter of the 2 ATI options were active, but lsmod told me otherwise. I have some Wacom-related stuff in my xorg.conf, which had to be moved out of the way, to get that thing to work. After a reboot, radeon was in use, but Unity decided to drop back to 2D. The cause: Xlib: extension "GLX" missing on display ":0.0". The solution was purging any trace of fglrx and nividia(!) from my system. Also, for good measure, but I suspect it’s unnecessary: sudo apt-get install —reinstall libgl1-mesa-glx libgl1-mesa-dri xserver-xorg-core; sudo dpkg-reconfigure xserver-xorg.

Now I have a working Unity 3D, using radeon, no disconnects or xruns galore using JACK and Ardour. Only new problem so far: shaky mouse pointer on the login screen.



José Luis Romero L. asked me for a Logo for LinuxMaya, the honduran Linux users group. I said yes, mainly because it was an interesting opportunity, stylistically, and a welcome break from my currently more layout and interaction-design heavy job.

From their self-description, they are a group of professional and enthusiast users of Free Software and GNU/Linux, who want to spread the word about Free Software and offer expertise in Honduras and Central America.

Now it would be cute if one could express such ideas in a logo, but it’s all so damn abstract and shared by many projects. The first responsibility of a logo is to be recognisable. So I focused on the name and found inspriation in mayan symbols and stone carving.

A few small sketches:

The final result:

3D printing to the rescue

I bought a new bicycle, recently. My first with drop-bars. The additional brake-levers ease my mind, but make it more difficult to attach any more stuff. So I went looking for a well-reviewd, certified (German Straßenverkehrszulassung) headlight with a clamp that would fit into the space right next to the stem.

The Busch & Müller Ixon Pure seemed to fit the bill. It comes with a too small clamp, but a larger one can be bought separately. Only after doing so, I realized the the lamp is put on in the opposite direction for this oversize clamp! This means the business end has to be in front of the bar, where I do not have enough space thanks to the cable connection-thingys of the brake levers.

What a great opportunity to see how far the Free Software parametric solid modeling application FreeCAD has come! The 0.12 release didn’t cut it, but with a checkout a while later, I managed to model what I call the sled, with the relevant part put on in reverse. There were a few issues I had to work around, but except for some fillets I had to do without, I suceeded. Not production ready (not that anoyne claimed that), but very promising. Kudos to the developers!

After having a quick look at the mesh in Blender, I went to They claim their strong & flexible material can be used for living hinges and springs, and as far as it is required in my case, it works fine.

The quality of the surface and the corners is not great, but aside of the those ridges on the lever, overall precision seems to be excellent, as far as I can tell with such a small part. It fits very tightly, but so does the original.

The original sled has a metal inlet for the screw thread. I simply modeled a tunnel with the smaller diameter of the screw. Required some force to screw it in but seems to fit well now; only time will tell if this is a durable connection.

It took 10 days from order to shipment, $ 12.05 for the part and $ 11.31 for shipping, resulting in € 17.73. Edit: The model available for printing or download.

From a pure filling a need point of view, this was a bit expensive in time and money, but I just had to try it and enjoyed the process. On to a future with free/open modeling tools, model libraries and affordable 3d printing! 🙂

Strange new Windows Logo

Microsoft Windows gets a new Logo for Version 8. It no longer tries to be a window or group of windows and a flag at once.

My first impression was that the perspective looks off. I found out it is because the 2 columns have different width in the prespective, but with a rather subtle difference, that in my view allows the impression of being an inaccuracy, instead of being clearly on purpose.

I had to try how it looks with equal width (third, after original and original with construction lines):

As the flyshit on the original hints at, it’s very important to note that Windows is a registered Trademark of Microsoft, while the new Logo has been submitted for registration.


Scaled Screenshot of Ubuntu 11.10 Unity’s Dash on a neutral background:

Full size

The 8 items in the home screen of Ubuntu Unity’s Dash have been found to be confusing in user testing and will be replaced for the next release.

I think the initial content should be similar to the search results that will be listed once there is text input. Basically the first n matches for a search for everything.

The search should be sub-string based, maybe even fuzzy and even support the categories that can be used in the filter section, to make the most of the user’s input. Especially when searching for files, one might remember a part of a name, not necessarily the beginning. Fuzziness should help with typos or variations in either input or searched content.

Turning the top panel transparent on activating the Dash suggests a connection to the right-side indicator menus, where there is none. It necessitates a variation of the window Close, Minimize and Maximize buttons.

The lense-switching buttons at the bottom seem odd. This placement almost maximizes the distance from the Dash trigger button. It gets ridiculous, if you maximize the Dash, especially on a large display. These buttons determine the entire content, which suggests they should be at the top or maybe on the left side. But what if the layout can be simplified by using the lense buttons both as section headers and pathways to their sections?

Rough, explorative mockups:

Full size

Full size

A second click on the Dash button closes the Dash, making it have the same function as the window Close button in this state. Could this be visualized? An admittedly brutal attempt, just to illustrate the idea:

I wonder if avoiding the potentially disruptive impression of the entire screen being taken over is worth having a Maximize button for the Dash and a layout that increases the need for scrolling (or paging as alternative). The button is yet another detail on the screen and costs the user a decision, not necessarily only once. Without it, the always disabled Minimize button could go, too.

Ubuntu Unity Experience

I started out rather skeptical of Unity, since it clashes with my habits. But it wouldn’t be the first time I modified them …

I’ve come to enjoy launching and switching between applications via the Launcher. Making the distinction between running and not running applications less important and having stable targets for the most common applications is nice. But only as long as it’s about single window applications, as having to juggle windows after using the launcher just feels like a hassle. The single top bar switching between title and menu is great with maximized windows. This is barely enough to tolerate the shortcomings.

Alt-Tab window switching works for me only as long as no application has several windows. Switching on 2 levels, first application, then between windows of that application is too much work, costs too much thinking and thus breaks the flow. At least the Super-W shortcut for exposing all windows helps here, sometimes.

I sometimes run Ardour, which relies on the JACK audio server. This involves soft realtime requirements, which normally is not a problem. However, any use of Alt-Tab beyond a quick tap that does not even bring up the menu, causes Ardour to lag, making JACK kick it out. On Unity 3D, with nvidia driver. Isn’t this supposed to be GPU accelerated, leaving the CPU alone as far as possible? In principle this machine could record and playback several tracks while compiling the Linux kernel in the background, but I can’t use the window switcher without dropout. This made me try different nvidia driver versions, so I found out Jockey is confusing and sometimes claims there’s no driver enabled, while lsmod does list nvidia. Trying to switch between nvidia versions one can easily end up with an X in minimum resolution and a Unity 2D that likes to render artifacts more than rendering windows. It’s not obvious how to switch between nvidia and nouveau.

I’m used to 6 workspaces. I had to use CompizConfig to change that number. Initially, it looked like that didn’t work, because the change did not come into effect before logging out and in again. The workspace switcher icon remains static and always pretends you have 4 workspaces with 1 window on the first, making me miss GNOME 2’s panel indicator.

Since many years I have switching to specific workspaces bound to Alt-F1 to Alt-F6. I had to mess with both CompizConfig and Keyboard settings to make that work.

After a short break, I now went to pick up development with Emacs again. I have a number of window (what elsewhere might be called a pane or panel) related commands bound to the Super, aka Windows key. So I changed Unity’s trigger button, only to find that the setting has no effect; the Super key still triggers Unity, while the new shortcut has no effect at all. I found a matching bug, with a suggested workaround involving going into unity config by hitting Alt+F2, to enter about:config. Since my Alt+F2 is bound to something else, I tried to assign a new shortcut to Show the run command prompt. Whatever I try, it is ignored. Now I can either drop Unity, or edit my .emacs and retrain against my muscle memory.

UPDATE: I now had success in changing the trigger key for Unity, but I don’t know what exactly made the difference.

I haven’t done any real work with GIMP on Unity, yet, but guess I won’t enjoy the global menu behavior there.