Paul Kocialkowski's coding blog

Free software, programming and stuff


Screen flickering with Intel HD Graphics 2000 on SandyBridge Intel i3 2120

Written by Paul Kocialkowski - 11 august 2012 - no comments

During this summer period, temperatures are starting to get really high, and often higher than what my computer can handle, apparently. Since a couple of weeks, I noticed a nasty white flickering taking over the screen after hours of use, with my integrated Intel HD Graphics 2000 on SandyBridge Intel i3 2120.

I tried to search for a solution but couldn't find anything that helps, except turning the computer off for some hours, thus letting it cool down. So this happens more and more often as uptime increases and at some point, it gets so frustrating that my only solution is to turn the computer down and do some other business. It happens more when running 3D games and also continues on tty sessions (even with X not running at all).

So I made a video to explain the situation to Intel GFX people on IRC, who sadly couldn't bring me much more help.

Running on new hardware, with Trisquel 5.5

Written by Paul Kocialkowski - 05 july 2012 - no comments

As I am doing software development that sometimes requires a lot of resources (mainly when building Android/Replicant), I recently decided to get myself some new hardware. I was previously running with a dual-core Pentium 4 running at 3.00Ghz, along with 4G RAM (the motherboard chipset is limited to 4G), two Hard Drive Disks and an nVidia graphical card. All was running under Trisquel 5.0, with the nouveau driver for nvidia cards, that didn't permit outstanding hardware acceleration (though it was fairly good enough to play 720p videos).

Finally I decided to get an Intel i3 CPU, dual core at 3.30Ghz and an adequate motherboard, both coming with SandyBridge support. I ended up buying 8G of DDR3 RAM, which is fairly enough for Android/Replicant build to stay on RAM (it finished on SWAP with my old hardware). I'm particularly amazed of SandyBridge, that technology that permits the CPU to hold an Intel GPU that can be used with an appropriate motherboard. It is very-well supported by Linux (and by Linux-libre as well), Xorg and Mesa (compared to all of what I've tested with Linux-libre). I was able to play Nexuiz at 1280x800 with nice effects, 0 A.D. with shades and water reflection disabled and a few other ones (Mania Drive, OpenArea, etc).
All that came with a 60GB SSD used as rootfs. It really speeds up the boot process alot! (The BIOS is actually taking longer than grub up to gdm)

On the software side, I stick to distributions promoting and distributing only free software. I thought about getting to Debian as I mostly agree with their decision to distribute a kernel free of firmwares, but that will load them when present (which is what we do in Replicant too). Though, I'm using Trisquel since a year now, and I kinda got used to it. As usual, it is very usable, ready and nice-looking! As I have no hardware requiring non-free software to be loaded, I'm totally fine with Linux-libre, even though I agree more with the Debian way of things regarding the kernel.


Let's cut-off the long and boring text and get to serious matters. Trisquel decided to stick with gnome-panel while Gnome 3 features the new gnome-shell interface. I'm very pleased with that decision, as I already tried gnome-shell and find it less usable than good-old gnome-panel, mainly because there is no really quick way to have the windows listed, to switch from one to another and to reduce them.
DesktopWhen I first ran into Gnome "fallback" experience (that is what gnome-panel is called now), I got very disappointed by the unavailability of right click on bars to customize them (move stuff, add widgets, etc). I though it was the end of the gnome-panel era and sincerely thought that this fallback experience was just a quick hack, with no possible customization. Thankfully, I was wrong. You can actually do the very same changed in that GTK3 gnome-panel by holding the Alt key while doing right-click on a panel. After discovering that, I quickly got back into my old setup, with some adjustments.
The main bummer I faced is that Trisquel theme was apparently not designed to be used with the "menu bar" applet, that holds Apps and Places. It was really ugly-looking, so I strongly recommend you to use this css layout (in /usr/share/themes/Trisquel/gtk-3.0/apps/): gnome-panel.css

As you can see on the screenshot up there, I am using conky to display time, date and various infos about the system. Here is the conkyrc, designed (with absolute values) for a 1680x1050 screen: conkyrc, draw_bg.lua.
Also, if it turns out conky won't stop flickering, even if you're using double buffer and all, make sure that maximum_width is greater than the actual width conky uses. If you didn't define maximum_width anywhere and conky won't stop flickering, that may very well be the reason. Define it with an appropriate size and it may help to sort things out. That's one problem I had while doing that conkyrc.

DesktopAs for an icon theme, I'm using elementary, with the Trisquel logo on top. It has a huge benefit: the icon that shows up when changing the volume will no longer be ugly as it's obviously resized from a non-vectorial image. It'll show a nice and clean white speaker icon. When I was doing that conkyrc, I also turned on metacity compositing, that is a very unknown feature but permits some nice stuff while remaining simple (no outrageous effect that will slow you down). For instance, it gives that volume popup clean round edges, instead of the sharp ones, as well as some nice transparency. If your GPU can handle it, I strongly advise to turn metacity compositing on. That's just one gconf key to set: gconftool-2 -s '/apps/metacity/general/compositing_manager' --type bool true