Ubuntu 11.10 Oneiric Ocelot on Toshiba Tablet
It installed very fast and I chose to delete my existing install and also get updates while installing. It seems like only 1 year ago or less I was installing OSs that were not smart enough to ask me things while downloading / copying files.. The whole thing took less than 30 minutes and it kept the existing partitions (though they were formatted) and mounting points and the Windows side was left untouched. I was also asked whether I wanted my home folder encrypted – I chose yes and was even given the random key to unlock my data in case of failure.
1. Video
When installing a desktop distro the first thing I try, before any further customization and troubleshooting, is to make sure I’m running the best video card drivers, as Linux lags behind Windows in this department (we have video card manufacturers, especially ATI and Intel to ‘thank’ for that). With my Toshiba m200 I noticed a problem from the very start – the startup screen was mangled:
This had not happened with previous versions. Luckily, it recovered and I was able to login. Turns out that it installed by default the 96 nVidia driver when the 173 was recommended. I removed 96 and installed the 173 driver, reboot, then tried 173 updated, but the startup screen continued to look terrible. Nothing I could not live with..
Unity 3D won’t work with m200’s nVidia (GEForce FX Go 5200) because my old video card is blacklisted, as I found out with /usr/lib/nux/unity_support_test –p . And that’s quite alright, as I prefer performance over eye candy.
resolution
On the plus side, the M200 gets to use 1040x1050 maximum resolution. Sadly, this was not the case with the M400, which uses an Intel 945GM video card but which goes only to 1024x768. Perhaps this shouldn’t surprise me since a Windows 8 recent install would go only to 1024 x 768 as well. The 3D support seems to have more to do with the processor (Core Duo 1.8 GHz as opposed to Pentium M 1.8 GHz for m200).
Here’s Control-D’s guide on enabling the higher res for 7.04:
Fixing Screen Resolution
This is for the m400 with the SXGA screen with a native resolution of 1400×1050.
Install the 915resolution package using Synaptic or apt-get.
By running sudo 915resolution -l you can see the available video modes. We want mode 58, but we’re going to specify the correct resolution.
Edit /etc/default/915resolution so that it says
MODE=58 XRESO=1400 YRESO=1050 BIT=Now, edit /etc/X11/xorg.conf and put the following at the end of the Screen section.
SubSection "Display" Depth 24 Modes "1400x1050" "1024x768" "800x600" "640x480" EndSubSectionFinally, reboot and you should have the correct 1400×1050 resolution now.
915resolution is obsolete and cannot be easily installed. Furthermore, xorg.conf has gone through so many changes that I’m always afraid to touch it, and I’m not the only one. I reproduced above an xkcd cartoon from a few days ago.
We shall see this week-end, if I have a bit more time.
2. OS order in multiboot menu
When multibooting it’s important to install / upgrade OSs with the dumbest / rudest first. In other words, start with the earliest Windows version and continue on to Linux. Yet this isn’t what I want to talk about here.
In the old days of Lilo or Grub 1, the multiboot menu was directly editable from a “menu.lst” file found somewhere in a /etc subdirectory. This was replaced with a bunch of files in the /grub directory and changing them is quite difficult; after each change, the whole thing needs to be “recompiled”. In the past, I managed to place Windows at the top of the menu and have the new kernels (which linux installs while keeping the old ones) appear at the bottom. Now it seems that Windows was moved to the bottom, but on the other hand Computer Janitor (which appeared to help users deal with old kernels and other remnants) has been removed, which suggests that the developers have finally found a way to deal with the old kernels mess.
There was a program called startup manager which helped with the fight against the Grub Conspiracy, but it’s been abandoned. The one that took its place is grub-customizer. However, I have a feeling that all this might be unnecessary – linux might’ve finally learnt to deal with old kernels in which case the order of boot menu entries is irrelevant.
3. TV on the run
It’s not really on the run, it’s for home, where I have HDTV on the network, but it’s called hdhomerun
- libhdhomerun (source)
- HDHomeRun Config (GTK) (source)
- hdhomerun3_atsc (firmware)
After downloading and expanding the source tarballs, I have to go in the Config dir and do
./configure
make
sudo make install
This is just to see how it works on the m400 with its Intel card; for regular use, a MythTV client server system makes far more sense for home use.
4. Rotating the screen
This seems to be a hit and miss with my Toshiba tablets in every Linux version – it never works right out of the box. I will try Jupiter to see if that solves it, but until then, here’s what control-d recommends in the script /home/derrick/bin/rotate.sh
#! /bin/sh
orientation=`xrandr -q | grep "LVDS"| awk '{print $4}' | sed 's/[^A-Za-z]//g'`
if [ "$orientation" = "normal" ]; then
/usr/bin/X11/xrandr --orientation right
xsetwacom set "Wacom Serial Tablet PC Pen Tablet/Digitizer" rotate CW
onboard &
else
/usr/bin/X11/xrandr --orientation normal
xsetwacom set "Wacom Serial Tablet PC Pen Tablet/Digitizer" rotate
killall onboard
fi
Once the script works, we need to attach it to the rotate button. Here’s the difficulty encountered in 9.04:
From here getting the rotate screen button to work is somewhat of a hack. There seems to be a bug in this version where the button triggers two key events, Super_L and 6, at the same time. I banged my head over this for a while. In the past it produced one distinct key event, and I would map this in Gnome to run a command. Now, the problem is it's not possible in Gnome to map, say Super+6, to the rotate script. You obviously don't want to map the 6 key for this, so how about just <Super>? That won't work either as the multi-directional button next to it generates Super+1 through Super+5, depending on what direction you press it. What I finally ended up doing was mapping Super_L to modifier key Mod4 using xmodmap.
His solution:
- Create a .Xmodmap file in your home directory (ie., /home/derrick/.Xmodmap)
- Edit the .Xmodmap file and put the following:
clear Mod4
add Mod4 = Super_L - Run the command 'xmodmap ~/.Xmodmap'.
This then allows us to create a Gnome keyboard shortcut using this new Mod4 modifier key:
- Go to System -> Preferences -> Keyboard Shortcuts
- Click Add, give it a name, and in the Command field put the full path to your executable rotate.sh script
- Run the command 'gconf-editor'
- Go to /desktop/gnome/keybindings/ and find the customN folder that contains the custom keyboard shortcut that you created
- Edit the binding value and enter the following value: <Mod4>6
It should now rotate when pressing the rotate button.
5. Fingerprint reader
Until I found Control-d’s tutorial I had nearly given up trying. There’s lots of tutorials online (I added some in sources) but they are mostly for ThinkPad users and a different kind of reader. Mine is made by Upek, who is also selling a linux suite, but it’s old and unsupported.
- add repo deb http://ppa.launchpad.net/jon-oberheide/ppa/ubuntu jaunty main (I’ll try changing jaunty to oneiric)
- sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com F2A12FABE936A7BBDC4EA33351DB180D1323E149
- sudo apt-get update && sudo apt-get install thinkfinger-tools libpam-thinkfinger
- Create /etc/udev/rules.d/60-thinkfinger.rules with:
#
# udev rules file for the thinkfinger fingerprint scanner
## uinput device
KERNEL=="uinput", MODE="0660", GROUP="plugdev" - Reboot.
- Create the fingerprint file:
$ tf-tool --acquire
ThinkFinger 0.3 (http://thinkfinger.sourceforge.net/)
Copyright (C) 2006, 2007 Timo Hoenig <thoenig@suse.de>Initializing... done.
Please swipe your finger (successful swipes 3/3, failed swipes: 0)... done.
Storing data (/home/derrick/.thinkfinger.bir)... done. - Test it
$ tf-tool --verify
ThinkFinger 0.3 (http://thinkfinger.sourceforge.net/)
Copyright (C) 2006, 2007 Timo Hoenig <thoenig@suse.de>Initializing... done.
Please swipe your finger (successful swipes 1/1, failed swipes: 0)... done.
Result: Fingerprint does match. - Edit /etc/pam.d/common-auth adding auth sufficient pam_thinkfinger.so as follows
....
# here are the per-package modules (the "Primary" block)
auth sufficient pam_thinkfinger.so
auth [success=1 default=ignore] pam_unix.so try_first_pass nullok_secure
# here's the fallback if no module succeeds
....
You know should be able to login to gnome and unlock gnome-screensaver (which does not really exist in the current Gnome Shell) with your fingerprint, subject to the following limitations:
- if the first swipe fails it falls back to password auth only
- after logging into gnome by swiping your finger you will be prompted to enter your password for the gnome keyring
- reader gets hot - how to change the power level?
I’m eager to try it and see if it still works (subject to whatever modifications have come with upgrades).
<to be updated as I have time to apply the untried config tweaks>
I then looked at my old setup notes for 10.10 (especially Opera and network shares) and tried to follow most of it. Installing Opera for instance, but then I also had to remember to enable plugins on demand, change homepage, add to Forms, disable sounds, disable thumbs in tabs, empty cache on exit, no 3rd cookies, set & use master password, disable geo-location, add a few more to server completion, and finally sync.
Read on for general Ubuntu Oneiric Ocelot 11.10 tips!
Sources / More info: wiki-jj-9.04, 915-dl, 915-hack, 915-bgn, 915-intel, intel-detect, intel-kb, gtf, 915-ih2bc, tw-950, mandriva-945, hdhomerun
Comments