I recently upgraded from Ubuntu Lucid (10.04) to Precise (12.04). Similar to my list of tips for Lucid and Fedora Core 3, here are some tips for Ubuntu Precise. (I’m running it on a Thinkpad X201).
- I used to use
xmodmap
to swap the Caps Lock and left Control keys, but no longer. It’s evidently deprecated, andsetxkbmap
is now X.org’s preferred way to manipulate keymaps. This does the trick:setxkbmap -option ctrl:swapcaps
- I used to use
aumix
as my volume control and mixer, but it couldn’t find the mixer device in Precise. I could have dug around for it, but instead I just switched toamixer
, which works fine.…except that toggling mute with
amixer ... toggle
mutes ok but doesn’t unmute! A bit of investigation found thattoggle
mutes a bunch of channels, including (for me) Master, Headphone, PCM, and Front, but only unmutes the channel you tell it to toggle. Details in the bug report and these askubuntu questions. The solution is to toggle all of the channels explicitly:echo 'sset Master toggle sset Headphone toggle sset PCM toggle sset Front toggle' | amixer --stdin -q
- On the topic of sound, it didn’t initially work on my laptop because
/dev/snd/*
weren’t world writable or readable. A quicksudo chmod a+rw /dev/snd/*
fixed that, but it didn’t stick across reboots, so I put it in my.login
. Oddly, my workstation didn’t have this permissions problem; it worked out of the box. -
Precise’s NetworkManager package added
nmcli
andnm-tool
, two great command line tools. No more clunky cnetworkmanager! I also hacked the status bar in notion (née ion3), my window manager, to use them to find the current network connection:nmcli -terse -field devices,name,state con status \ | sed -r "s/activated/\*/; s/activating/.../; s/deactivated/X/; s/:/ /g"
and Wifi signal strength:
nm-tool | grep \*`nmcli -t -f name con status` \ | egrep -o "Strength [0-9]+" \ | cut -d" " -f2-
- It’s not Precise-specific, but these AIM notifications have always annoyed me: AOL System Msg: Your screen name (mrEman) is now signed into AOL(R) Instant Messenger (TM) in 2 locations. I use Pidgin, so I finally looked around and found this plugin, which happily blocks them.
-
The font in Emacs changed, and it took me a while to figure out how to change it back. None of the usual methods (
.Xresources
,set-default-font
) worked. I finally re-read the Fonts section of the manual and saw that the X resource is nowemacs.font
, notEmacs*font
, which I’ve had in my.Xresources
forever, but that still didn’t fix it.I finally figured out that
--daemon
in Emacs 23.3 now ignores anything related to windowing systems, including fonts. I have to run(set-face-attribute 'default nil :font "7x14")
in Emacs after X is running. Sigh, oh well. -
Is polkitd pegging your CPU and eating all of your RAM? Try restarting the DBUS daemon with
sudo service dbus restart
. -
Here are some of the extra packages I installed:
- apache2
- apel
- autocutsel
- colordiff
- emacs-goodies-el
- emacs23-el
- emacs23-lucid
- exif
- fbreader
- flashplugin-installer
- flickcurl-utils
- gcalcli
- git
- imagemagick
- imagemagick-doc
- jnettop
- lua-mode
- lynx
- mercurial
- mercurial-git
- mpg123
- mplayer
- mysql-client
- mysql-server
- php-elisp
- php5
- php5-cgi
- php5-cli
- php5-curl
- php5-mysql
- pidgin
- python-mysqldb
- rxvt-unicode
- sshfs
- sysfsutils
- tkcvs
- tp-smapi-dkms
- udev
- usbmount
- xloadimage
- xkbset
- xscreensaver
- xsltproc
- yaml-mode
…and I needed these to build notion, my window manager:
- gettext
- liblua5.1-0-dev
- libsm-dev
- libx11-dev
- libxext-dev
- libxinerama-dev
- libxrandr-dev
Enjoy Ubuntu Precise!