How to make Ubuntu 12.04 LTS (Precise Pangolin) usable

Tweaks after install in order to achieve the usability of Linux Mint 10. But the new mascot is pretty cute.

I've started using Ubuntu on servers from version 6.061 and I still say, for server, it's one of the best and most easily maintainable distributions out there - not mention the commercial support behind the system. On the desktop side however... from 9.04 to 10.04 Ubuntu was a good choice. Afterwards I've migrated to Linux Mint2, especially to Mint 10, Julia3 - I have to say that version was probably the best I've encountered with.

But time has passed and unfortunately, Mint 10 was not a long term support version and it's official lifespan has ended. Also, it's quite impossible to install the freshly released Gimp 2.84 on a 1,5 old system - which is actually ridiculous and sad, but true - so I needed to change. Ubuntu 11.04 and 11.10 was a total mess, mostly with the premature Unity and the forced kernel updates. Between 2.6.36 and 3.2 there shouldn't have been any update in my opinion.

Mint 125 - based on Ubuntu 11.10 - was near to usable with Cinnamon6: lots of version problems, PPA not recognizing the version, etc., so right after the release of the next long-term-support Ubuntu, I decided to move back AND have the Mint desktop Cinnamon on it.

12.04 LTS7 comes with Unity8. Unity is progressive and has a lot of ideas in it, unfortunately most of them just renders things unusable for everyday work. It's fun, yes, it's nice and pretty and everything, but for someone using a linux desktop professionally, it's simply ineffective. Eventually I forced myself to use Unity for a week; for my surprise, it did change my opinion on the topic, see later in this article.

Fail at install: encrypt home without swap partition

I have 4 GB memory in my notebook; it has been enough for years without swap. Even if I'm in the need of swap, I would not add it as partition just a simple file using swapon command. But... 12.04 requires a swap partition if you want your home folder encrypted - otherwise the whole install process will fail. Isn't that nice from a version that's planned for 5 years?! I've installed the system without encrypted home, and followed Danny Stieben's9 guide how to encrypt it on an installed system10.

Yes, it's already been reported11.

Conquer your desktop once again

Two possibilities to get a desktop like the good'ol Gnome2: gnome-panel (a rearranged Gnome3 fallback mode) or Cinnamon. Both provides conventional desktops, meaning you do have a window list, screen is not jumping on the move of your mouse, you can actually find the close button for a software.


Gnome2 layout based on GTK3. Most of the functions are backward-compatible, meaning you can have applets again. For more information, see the OMG! Ubuntu! article on gnome-panel12. It's simple to install:

apt-get install gnome-panel

Cinnamon desktop

Cinnamon13 is the Linux Mint way to enlightenment: a GTK3, especiall Gnome Shell based desktop environment with traditional layout. It's at version 1.4, lacks a lot of features, but it's nice, fast, responsive and suprisingly low on CPU & memory usage. It's not the part of Ubuntu, so you're going to need to add an additional repository.

add-apt-repository ppa:gwendal-lebihan-dev/cinnamon-stable
apt-get update
apt-get install cinnamon

I needed a dock in order to get this fully functional ( the lack of CPU applet for example ), my choose was Avant Window Navigator14.

apt-get install avant-window-navigator

The for people who use their machine both day and night

I hate high contrast themes. Really. They are for vanilla people, using their pretty little machine only by day. For Gnome2 the choice was Shiki Colors15, especially Shiki Brave - a more-or-less replacement for GTK3 is Zukitwo16.

ThinkPad users: tp-smapi-dkms

Even in 11.04, tp-smapi install was plain simple, working right after the apt-get install command. Not from 11.10; tp-smapi-dkms moved from version 0.40 to version 0.41 and thus not working anymore. Get the package from Natty17, and install it by hand. Extract it to /usr/src/ ( as /usr/src/tp-smapi-0.40 ), and use the following: Natty is out of support, so I uploaded the patched version to GitHub18, use it from there please.

dkms add -m tp-smapi -v 0.40
dkms build -m tp-smapi -v 0.40
dkms install -m tp-smapi -v 0.40

Regain aircrack-ng

These are my favourite ones: a slight but, it's not maintaned, so it gets dropped. And oh, no alternatives. Anyway, Riyaz Ahemed Walikar19 has written a post on gettin aircrack work in Precise Pangolin20.

apt-get install build-essential libssl-dev
tar -zxvf aircrack-ng-1.1.tar.gz
cd aircrack-ng-1.1

Replace the line

CFLAGS ?= -g -W -Wall -Werror -O3


CFLAGS ?= -g -W -Wall -O3

in common.mak. Then

make && make install

From now on...

I'm going to extend this post whenever I encounter something strange.

"Loggin in..." freeze in lightdm

Caused by disabling the login sound21 with Ubuntu Tweak22. Either replace lightdm with gdm or don't disable the logon sound.

Wireless semi-disconnecting

The connection itself stays but no data flows in any direction. Solution by Sam Armstrong23:

sudo iwconfig wlan0 power off

another solution, from a ThinkPad forum:

create /etc/modprobe.d/iwl.conf with the following:

options iwlwifi bt_coex_active=0

Show all startup applications

Some startup applications are hidden by default. Just the way Apple and MS is walking on... grats.

sudo sed -i 's/NoDisplay=true/NoDisplay=false/g' /etc/xdg/autostart/*.desktop

Freakingly annoying right-clik popup when F10 is pressed in terminal

Press F10 in terminal, for Midnight Commander to exit ... you'll have right-click menu popped up. Isn't this wonderful?! To disable, put this into ~/.config/gtk-3.0:

@binding-set NoKeyboardNavigation {
     unbind "<shift>F10"

* {
     gtk-key-bindings: NoKeyboardNavigation

and this into ~/.gtkrc-2.0:

binding "NoKeyboardNavigation" {
    unbind "</shift><shift>F10"

class "*" binding "NoKeyboardNavigation"

Unity - maybe it's not the Devil itself?

I tried Cinnamon and MATE - both of them is unstable enough to cause problems for, so I forced myself to give a chance to Unity and use it for a week. The result? This really was made for keyboard freaks, sysadmins and not that bad as I first feeled.

First off: the global menu is not that bad. For me, I'm using Terminator as terminal emulator, and it can split itself in one window. Second: the "flying" scrollbar is still annoying a bit sometimes, but reasonable, and you don't need to move the mouse to the top or the bottom. And most importantly: even multi-windows applications are not really a problem, Xsane works perfectly. To be sure, you can always open it on another virtual desktop, separated from the others.

The thing is, it's far-far away from the classics, nearly as far as Fluxbox. But it is useable. It lacks tweaking, yes, but to be honest, you only tweaked when you needed something it was not capable of... and it seems, Unity is capable of doing a lot of things.

Just turn Zeitgeist off24; now that's something making the system slow and you really don't need it. Honestly.

Solve the "blank screen after resume from suspend"

Once in a while my machine seemed to freeze after resume from suspend: blank screen, command line cursor at the upper left corner, no response except changing to tty[1-6], but the login fails with no error message

  • just nothing happens. It turned out I'm not the only one and it's not dependent of any of my hacks - phc, SSD, etc. - but occurs independently from machine type. The solution was found on Ubuntu Forums25, this is the lot shorter one recommended in the thread:
sudo touch /etc/pm/sleep.d/20_custom-ehci_hcd
sudo chmod 755 /etc/pm/sleep.d/20_custom-ehci_hcd

sudo cat >> /etc/pm/sleep.d/20_custom-ehci_hcd < < EOF
# File: "/etc/pm/sleep.d/20_custom-ehci_hcd".

case "${1}" in


     chvt 1
     chvt 7

Faenza icon theme missing icon for indicator-cpufreq

Fix submitted in this thread26.

16 steps of brightness for ThinkPads instead of 8

Due to some bug, on some ThinkPad instead of the 16 brightness steps, only 8 is available. This is because two systems are handling the request: the BIOS and linux itself. To solve it there are two ways, according to this thread, this worked and was easy:

echo -n 0 > /sys/module/video/parameters/brightness_switch_enabled