Nouveau performance improvements

I blogged a few months ago about performance improvements in nouveau, the free 3D driver for NVIDIA cards. This morning I tested with nouveau ddx from git, drm master from git and kernel 2.6.24-rc6 and used the gtkperf benchmark.

Nouveau 2007-07-13: 25.24s
Nouveau 2007-12-30: 17.88s

Quite an incredible increase in speed.

On another note, I've been able to resize my screen for the first time using the normal driver, although using experimental Randr12 mode I get this:

Fun times with nouveau… 

HIG and gnome-packagekit

Any HIG dudes got a few minutes? The gnome-packagekit project has quite a few glade files that were quickly designed, and hence the GNOME HIG wasn't a primary concern. Now the applications are being used by more and more people I think it's important that we properly conform to the HIG.

If anyone wants to help out, please join the mailing list and send us a quick email. There's also a lot of other easy stuff to do in the TODO file if you have a spare few minutes. Thanks!


Hazel Blears scares me

I normally don't get political on this blog but it has all got too much. Hazel Blears is Member of Parliament (Labour) for Salford in the UK. She's also Secretary of State for Communities and Local Government.

photo from

She's one of those people that listening to is like running your nails down a chalky blackboard. She's in a powerful position and comes up with some very crazy ideas. She really scares me.

Now I feel much better.

FOSDEM and PackageKit

In February I will be at FOSDEM, giving a presentation about PackageKit. It would be good if as many of you guys and girls interested in PackageKit could be there. The presentation will last about an hour, and probably spill out into a bar afterwards. The abstract is as follows: The presentation will give a complete overview to PackageKit along with background material. It will first highlight the issues that need solving, and expose the problems we have in the current suite of tools. It will examine other update solutions such as Microsoft Windows Vista ™, Apple Mac OS X ™ and also what has been done with some Linux distributions. The main section of the talk will introduce PackageKit, expose the internal design and explain any important ideas and design choices. Finally, ways to use PackageKit are discussed, along with screenshots of all the latest GUI tools. Time will remain for questions and discussion about PackageKit at the end.

Dear Fedora Developers

I want to be able to click a tickybox in anaconda/live-cd when setting up my home partition:

[X] Encrypt home directory

And then for everything to just unlock when I enter my login password at GDM. Why am I drowning in concepts like dm-script, pam, cryptsetup and all that other geeky stuff for something so trivial? If you do this I'll be happier than a dog with two thingies.

Panic! 13 seconds to shutdown!

This morning, PackageKit checked for updates automatically, and then began to download and install them like I had configured. Half way through, I get this dialog:

Panic ensues. I close down all my half-finished code changes, save my drafts in evolution and work out how much stuff I have open on other workspaces that needs to be closed before the shutdown commences.

Of course, dialog was invalid, only the session sealert daemon restarted – but I was left wondering why it had notified me with the countdown with such ambigous wording. I don't even use SELinux on this machine, so what was sealert doing?

If it needs to reload, why do I get a countdown and dialog box? Just do it in the background without notifying me. Not cool.


Hmm. PackageKit development has hit another snag. When we use a spawned backend that needs cancelling we just send the new process a SIGQUIT and then SIGKILL after a small delay. Other backends are compiled and thus use threads.

It appears that g_thread_cancel doesn't exist in GLIB. I've found one hacky implimentation here, but that didn't look particulally safe. Is there a good reasons the pthread internal stuff can't be nicely wrapped up in a nice glib call?

I guess I have to use something like select to poll, although I'm a bit of a newbiew with l33t UNIX stuff like this. This also seems a really
broken way to work around missing functionality. Advice and code snippits welcome.