Virtuous blogs jbarnes' braindump


English (US)   distro change & pain^Wpageflipping  -  Categories: Announcements [A]  -  @ 12:47:02 pm


So I finally moved away from Fedora as my main desktop distro. Though I still have some Fedora machines, including my home server, I finally gave up on it as a desktop; mainly because I use KDE, which seems to get even less attention on Fedora than it used to. Audio rarely worked well (always had to do stuff by hand like start Pulseaudio or fix perms to get everything going), and updates nearly *always* broke something. One of the reasons I moved from Debian to Fedora in the first place was to get fresher code, and newer packages. But that’s a double edged sword; the Fedora folks do so much of the upstream development in the first place that at times it feels more like a testing ground than a real desktop distro. And note I’m not talking about rawhide, this was all F9/F10. On top of that, I prefer KDE (for several reasons, see below), which is at best a second class citizen in the Fedora world. I’m sure if I used GNOME things would tend to work much better, since it’s likely that most of the Fedora developers use it and therefore find/fix problems more quickly there. But I don’t, and I got tired of things breaking, so now I’m using Kubuntu.

So why KDE? I tried GNOME out for awhile while during the KDE4 debacle, for a few reasons:

but I couldn’t stay with it. KDE just has too many killer features I’ve come to rely on:

Not to mention a vague feeling that KDE is just better designed & integrated than GNOME (admittedly this is a vestigial feeling based on some early work trying to get both running on IRIX, though there are more recent examples of this, like the infamous “yes/no” swap a few years back). The philosophy is a bit different too; GNOME seems to hide a lot of reconfigurability from the user, making them use a registry editor to change even simple things (again this is probably a dated feeling, but there are recent examples, take a look at the desktop effects config window on KDE and GNOME, the former allows much more control).

So anyway, I’m on Kubuntu now and it seems fine so far (though I do miss the simplicity of “yum list foo*", apt-cache search isn’t quite the same). It’s unfortunate though (for myself and other KDE users) that most of the distros have chosen to focus their development & integration efforts on GNOME, since it usually means that desktop infrastructure happens second or not at all on the KDE side (e.g. where’s knetworkmanager for KDE4? what about full bluetooth integration?).


When I’m not wasting time switching distros or working on bugs, I’ve been working on adding page flipping support to DRI2. It’s slowly coming together; I have a hacked up version of compiz that unconditionally does a swapbuffers without tearing now, which is pretty great. The concept is pretty simple too: I added a new DRI2 protocol request (DRI2 uses a protocol between Mesa clients and your display server, e.g. X or Wayland, to perform updates to your display buffer) to allow DRI2 to ask your display server to swap your GL front & back buffers. This request eventually makes its way down to your display driver (in this case xf86-video-intel), where I added code to detect whether the swap was for a full screen buffer. If it is, we queue a flip of the whole display buffer in the kernel (which in turn queues it directly to the hardware). The flip is of course synchronized to the vertical blank period, so no tearing occurs, yay! I’m still working through a few bugs in the kernel and X code, but people are starting to use it successfully already, which is encouraging. I’m targetting this feature at our Q1 driver release; so if things go well we’ll have a way to avoid tearing on that release; fixing one of our most frequently reported bugs.

Trackback (0)

Trackback address for this post:

This is a captcha-picture. It is used to prevent mass-access by robots.

Please enter the characters from the image above. (case insensitive)


No Trackbacks for this post yet...


No Pingbacks for this post yet...

powered by b2evolution free blog software

Contact the admin - Credits: blog soft | cheap hosting | adsense