<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.thinkwiki.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jdthood</id>
	<title>ThinkWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.thinkwiki.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jdthood"/>
	<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/wiki/Special:Contributions/Jdthood"/>
	<updated>2026-05-16T16:35:49Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.12</generator>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=55483</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=55483"/>
		<updated>2014-04-16T18:05:17Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
Update: In October 2012 I upgraded to 12.10. Update: In May 2013 I upgraded to 13.04. This resulted in hangs on reboot. These were eliminated when I installed the latest kernel from the raring-proposed repo. See also Updates below.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default, Alt-Button2. Update: The upgrade to Ubuntu 12.10 reverted this setting to the default, so I had to set it again.&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;. Update: This is not necessary or possible in Ubuntu 13.10.&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** To maximize bell volume, add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers.d/local add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]].&lt;br /&gt;
&lt;br /&gt;
For Ubuntus prior to 12.10 add the &amp;quot;fingerprint&amp;quot; PPA as follows.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all Ubuntus...&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as I describe below&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;ccsm&amp;lt;/tt&amp;gt; (compizconfig settings manager) and select the Grid plugin. On the Edges tab, disable each action by changing the value to &amp;quot;None&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Change format of the date and time displayed on the menu bar to include full date and time with seconds: &amp;quot;&amp;lt;b&amp;gt;2014 Mar 07 Fri 13:45:03&amp;lt;/b&amp;gt;&amp;quot; [[File:Jdthood-custom-datetime-indicator-format.png]]&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime custom-time-format &amp;quot;'%Y %b %d %a %H:%M:%S'&amp;quot;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime time-format &amp;quot;'custom'&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.freedesktop.org/show_bug.cgi?id=11227 hotkey shortcomings] ===&lt;br /&gt;
Earlier workaround: [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings]]&lt;br /&gt;
&lt;br /&gt;
By default the &amp;quot;zoom&amp;quot; (Fn-Space) and &amp;quot;microphone-mute&amp;quot; (button next to the ThinkVantage button) hotkeys do nothing.&lt;br /&gt;
&lt;br /&gt;
'''Zoom''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module, kernel and &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; map the zoom key's ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 00001014&amp;lt;/tt&amp;gt;) to input event &amp;lt;tt&amp;gt;KEY_ZOOM&amp;lt;/tt&amp;gt; whose numerical value, 372, is greater than 255, the highest key-event code that X can handle.&lt;br /&gt;
&lt;br /&gt;
'''Micmute''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module and kernel generate an ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 0000101b&amp;lt;/tt&amp;gt;) for the microphone mute button but in releases earlier than precise this is not mapped to anything; in precise it is mapped to 256 which is also greater than 255, the highest that X can handle. Bug reported [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
The fault lies with X which can't handle key codes above 255.  But as discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/313514 here], it may be a long time before this gets fixed in X.&lt;br /&gt;
&lt;br /&gt;
In Precise updates as of October 2013 a workaround has been implemented for micmute: this key is now treated as if it were F20.&lt;br /&gt;
This will [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 supposedly] be fixed for Ubuntu 13.10 (Saucy) too.&lt;br /&gt;
&lt;br /&gt;
When I get this working I will update this page.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]] [[Category: Ubuntu 12.10]] [[Category: Ubuntu 13.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=55379</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=55379"/>
		<updated>2014-03-07T12:49:03Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
Update: In October 2012 I upgraded to 12.10. Update: In May 2013 I upgraded to 13.04. This resulted in hangs on reboot. These were eliminated when I installed the latest kernel from the raring-proposed repo. See also Updates below.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default, Alt-Button2. Update: The upgrade to Ubuntu 12.10 reverted this setting to the default, so I had to set it again.&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;. Update: This is not necessary or possible in Ubuntu 13.10.&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** To maximize bell volume, add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers.d/local add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]].&lt;br /&gt;
&lt;br /&gt;
For Ubuntus prior to 12.10 add the &amp;quot;fingerprint&amp;quot; PPA as follows.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all Ubuntus...&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as I describe below&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Change format of the date and time displayed on the menu bar to include full date and time with seconds: &amp;quot;&amp;lt;b&amp;gt;2014 Mar 07 Fri 13:45:03&amp;lt;/b&amp;gt;&amp;quot; [[File:Jdthood-custom-datetime-indicator-format.png]]&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime custom-time-format &amp;quot;'%Y %b %d %a %H:%M:%S'&amp;quot;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime time-format &amp;quot;'custom'&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.freedesktop.org/show_bug.cgi?id=11227 hotkey shortcomings] ===&lt;br /&gt;
Earlier workaround: [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings]]&lt;br /&gt;
&lt;br /&gt;
By default the &amp;quot;zoom&amp;quot; (Fn-Space) and &amp;quot;microphone-mute&amp;quot; (button next to the ThinkVantage button) hotkeys do nothing.&lt;br /&gt;
&lt;br /&gt;
'''Zoom''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module, kernel and &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; map the zoom key's ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 00001014&amp;lt;/tt&amp;gt;) to input event &amp;lt;tt&amp;gt;KEY_ZOOM&amp;lt;/tt&amp;gt; whose numerical value, 372, is greater than 255, the highest key-event code that X can handle.&lt;br /&gt;
&lt;br /&gt;
'''Micmute''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module and kernel generate an ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 0000101b&amp;lt;/tt&amp;gt;) for the microphone mute button but in releases earlier than precise this is not mapped to anything; in precise it is mapped to 256 which is also greater than 255, the highest that X can handle. Bug reported [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
The fault lies with X which can't handle key codes above 255.  But as discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/313514 here], it may be a long time before this gets fixed in X.&lt;br /&gt;
&lt;br /&gt;
In Precise updates as of October 2013 a workaround has been implemented for micmute: this key is now treated as if it were F20.&lt;br /&gt;
This will [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 supposedly] be fixed for Ubuntu 13.10 (Saucy) too.&lt;br /&gt;
&lt;br /&gt;
When I get this working I will update this page.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]] [[Category: Ubuntu 12.10]] [[Category: Ubuntu 13.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=55378</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=55378"/>
		<updated>2014-03-07T12:48:26Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
Update: In October 2012 I upgraded to 12.10. Update: In May 2013 I upgraded to 13.04. This resulted in hangs on reboot. These were eliminated when I installed the latest kernel from the raring-proposed repo. See also Updates below.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default, Alt-Button2. Update: The upgrade to Ubuntu 12.10 reverted this setting to the default, so I had to set it again.&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;. Update: This is not necessary or possible in Ubuntu 13.10.&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** To maximize bell volume, add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers.d/local add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]].&lt;br /&gt;
&lt;br /&gt;
For Ubuntus prior to 12.10 add the &amp;quot;fingerprint&amp;quot; PPA as follows.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all Ubuntus...&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as I describe below&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Change format of the date and time displayed on the menu bar to &amp;quot;&amp;lt;b&amp;gt;2014 Mar 07 Fri 13:45:03&amp;lt;/b&amp;gt;&amp;quot; [[File:Jdthood-custom-datetime-indicator-format.png]]&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime custom-time-format &amp;quot;'%Y %b %d %a %H:%M:%S'&amp;quot;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime time-format &amp;quot;'custom'&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.freedesktop.org/show_bug.cgi?id=11227 hotkey shortcomings] ===&lt;br /&gt;
Earlier workaround: [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings]]&lt;br /&gt;
&lt;br /&gt;
By default the &amp;quot;zoom&amp;quot; (Fn-Space) and &amp;quot;microphone-mute&amp;quot; (button next to the ThinkVantage button) hotkeys do nothing.&lt;br /&gt;
&lt;br /&gt;
'''Zoom''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module, kernel and &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; map the zoom key's ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 00001014&amp;lt;/tt&amp;gt;) to input event &amp;lt;tt&amp;gt;KEY_ZOOM&amp;lt;/tt&amp;gt; whose numerical value, 372, is greater than 255, the highest key-event code that X can handle.&lt;br /&gt;
&lt;br /&gt;
'''Micmute''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module and kernel generate an ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 0000101b&amp;lt;/tt&amp;gt;) for the microphone mute button but in releases earlier than precise this is not mapped to anything; in precise it is mapped to 256 which is also greater than 255, the highest that X can handle. Bug reported [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
The fault lies with X which can't handle key codes above 255.  But as discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/313514 here], it may be a long time before this gets fixed in X.&lt;br /&gt;
&lt;br /&gt;
In Precise updates as of October 2013 a workaround has been implemented for micmute: this key is now treated as if it were F20.&lt;br /&gt;
This will [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 supposedly] be fixed for Ubuntu 13.10 (Saucy) too.&lt;br /&gt;
&lt;br /&gt;
When I get this working I will update this page.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]] [[Category: Ubuntu 12.10]] [[Category: Ubuntu 13.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=File:Jdthood-custom-datetime-indicator-format.png&amp;diff=55377</id>
		<title>File:Jdthood-custom-datetime-indicator-format.png</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=File:Jdthood-custom-datetime-indicator-format.png&amp;diff=55377"/>
		<updated>2014-03-07T12:46:58Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=55376</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=55376"/>
		<updated>2014-03-07T12:45:50Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
Update: In October 2012 I upgraded to 12.10. Update: In May 2013 I upgraded to 13.04. This resulted in hangs on reboot. These were eliminated when I installed the latest kernel from the raring-proposed repo. See also Updates below.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default, Alt-Button2. Update: The upgrade to Ubuntu 12.10 reverted this setting to the default, so I had to set it again.&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;. Update: This is not necessary or possible in Ubuntu 13.10.&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** To maximize bell volume, add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers.d/local add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]].&lt;br /&gt;
&lt;br /&gt;
For Ubuntus prior to 12.10 add the &amp;quot;fingerprint&amp;quot; PPA as follows.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all Ubuntus...&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as I describe below&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Change format of the date and time displayed on the menu bar to &amp;quot;&amp;lt;b&amp;gt;2012 May 15 Fri 14:09:11&amp;lt;/b&amp;gt;&amp;quot;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime custom-time-format &amp;quot;'%Y %b %d %a %H:%M:%S'&amp;quot;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime time-format &amp;quot;'custom'&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.freedesktop.org/show_bug.cgi?id=11227 hotkey shortcomings] ===&lt;br /&gt;
Earlier workaround: [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings]]&lt;br /&gt;
&lt;br /&gt;
By default the &amp;quot;zoom&amp;quot; (Fn-Space) and &amp;quot;microphone-mute&amp;quot; (button next to the ThinkVantage button) hotkeys do nothing.&lt;br /&gt;
&lt;br /&gt;
'''Zoom''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module, kernel and &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; map the zoom key's ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 00001014&amp;lt;/tt&amp;gt;) to input event &amp;lt;tt&amp;gt;KEY_ZOOM&amp;lt;/tt&amp;gt; whose numerical value, 372, is greater than 255, the highest key-event code that X can handle.&lt;br /&gt;
&lt;br /&gt;
'''Micmute''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module and kernel generate an ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 0000101b&amp;lt;/tt&amp;gt;) for the microphone mute button but in releases earlier than precise this is not mapped to anything; in precise it is mapped to 256 which is also greater than 255, the highest that X can handle. Bug reported [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
The fault lies with X which can't handle key codes above 255.  But as discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/313514 here], it may be a long time before this gets fixed in X.&lt;br /&gt;
&lt;br /&gt;
In Precise updates as of October 2013 a workaround has been implemented for micmute: this key is now treated as if it were F20.&lt;br /&gt;
This will [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 supposedly] be fixed for Ubuntu 13.10 (Saucy) too.&lt;br /&gt;
&lt;br /&gt;
When I get this working I will update this page.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]] [[Category: Ubuntu 12.10]] [[Category: Ubuntu 13.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=55375</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=55375"/>
		<updated>2014-03-04T15:02:38Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
Update: In October 2012 I upgraded to 12.10. Update: In May 2013 I upgraded to 13.04. This resulted in hangs on reboot. These were eliminated when I installed the latest kernel from the raring-proposed repo. See also Updates below.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default, Alt-Button2. Update: The upgrade to Ubuntu 12.10 reverted this setting to the default, so I had to set it again.&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;. Update: This is not necessary or possible in Ubuntu 13.10.&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** To maximize bell volume, add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers.d/local add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]].&lt;br /&gt;
&lt;br /&gt;
For Ubuntus prior to 12.10 add the &amp;quot;fingerprint&amp;quot; PPA as follows.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all Ubuntus...&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as I describe below&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Change format of the date and time displayed on the menu bar to &amp;quot;&amp;lt;b&amp;gt;Tue 15 May 2012  14:09:11&amp;lt;/b&amp;gt;&amp;quot;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime time-format &amp;quot;'custom'&amp;quot;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime custom-time-format &amp;quot;'%a %d %b %Y  %H:%M:%S'&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.freedesktop.org/show_bug.cgi?id=11227 hotkey shortcomings] ===&lt;br /&gt;
Earlier workaround: [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings]]&lt;br /&gt;
&lt;br /&gt;
By default the &amp;quot;zoom&amp;quot; (Fn-Space) and &amp;quot;microphone-mute&amp;quot; (button next to the ThinkVantage button) hotkeys do nothing.&lt;br /&gt;
&lt;br /&gt;
'''Zoom''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module, kernel and &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; map the zoom key's ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 00001014&amp;lt;/tt&amp;gt;) to input event &amp;lt;tt&amp;gt;KEY_ZOOM&amp;lt;/tt&amp;gt; whose numerical value, 372, is greater than 255, the highest key-event code that X can handle.&lt;br /&gt;
&lt;br /&gt;
'''Micmute''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module and kernel generate an ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 0000101b&amp;lt;/tt&amp;gt;) for the microphone mute button but in releases earlier than precise this is not mapped to anything; in precise it is mapped to 256 which is also greater than 255, the highest that X can handle. Bug reported [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
The fault lies with X which can't handle key codes above 255.  But as discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/313514 here], it may be a long time before this gets fixed in X.&lt;br /&gt;
&lt;br /&gt;
In Precise updates as of October 2013 a workaround has been implemented for micmute: this key is now treated as if it were F20.&lt;br /&gt;
This will [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 supposedly] be fixed for Ubuntu 13.10 (Saucy) too.&lt;br /&gt;
&lt;br /&gt;
When I get this working I will update this page.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]] [[Category: Ubuntu 12.10]] [[Category: Ubuntu 13.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=54805</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=54805"/>
		<updated>2013-09-14T15:15:32Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: /* Fix for hotkey shortcomings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
Update: In October 2012 I upgraded to 12.10. Update: In May 2013 I upgraded to 13.04. This resulted in hangs on reboot. These were eliminated when I installed the latest kernel from the raring-proposed repo. See also Updates below.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default, Alt-Button2. Update: The upgrade to Ubuntu 12.10 reverted this setting to the default, so I had to set it again.&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers.d/local add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]].&lt;br /&gt;
&lt;br /&gt;
For Ubuntus prior to 12.10 add the &amp;quot;fingerprint&amp;quot; PPA as follows.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all Ubuntus...&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as I describe below&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Change format of the date and time displayed on the menu bar to &amp;quot;&amp;lt;b&amp;gt;Tue 15 May 2012  14:09:11&amp;lt;/b&amp;gt;&amp;quot;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime time-format &amp;quot;'custom'&amp;quot;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime custom-time-format &amp;quot;'%a %d %b %Y  %H:%M:%S'&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.freedesktop.org/show_bug.cgi?id=11227 hotkey shortcomings] ===&lt;br /&gt;
Earlier workaround: [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings]]&lt;br /&gt;
&lt;br /&gt;
By default the &amp;quot;zoom&amp;quot; (Fn-Space) and &amp;quot;microphone-mute&amp;quot; (button next to the ThinkVantage button) hotkeys do nothing.&lt;br /&gt;
&lt;br /&gt;
'''Zoom''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module, kernel and &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; map the zoom key's ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 00001014&amp;lt;/tt&amp;gt;) to input event &amp;lt;tt&amp;gt;KEY_ZOOM&amp;lt;/tt&amp;gt; whose numerical value, 372, is greater than 255, the highest key-event code that X can handle.&lt;br /&gt;
&lt;br /&gt;
'''Micmute''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module and kernel generate an ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 0000101b&amp;lt;/tt&amp;gt;) for the microphone mute button but in releases earlier than precise this is not mapped to anything; in precise it is mapped to 256 which is also greater than 255, the highest that X can handle. Bug reported [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
The fault lies with X which can't handle key codes above 255.  But as discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/313514 here], it may be a long time before this gets fixed in X.&lt;br /&gt;
&lt;br /&gt;
In Precise updates as of October 2013 a workaround has been implemented for micmute: this key is now treated as if it were F20.&lt;br /&gt;
This will [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 supposedly] be fixed for Ubuntu 13.10 (Saucy) too.&lt;br /&gt;
&lt;br /&gt;
When I get this working I will update this page.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]] [[Category: Ubuntu 12.10]] [[Category: Ubuntu 13.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=54804</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=54804"/>
		<updated>2013-09-14T15:14:49Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
Update: In October 2012 I upgraded to 12.10. Update: In May 2013 I upgraded to 13.04. This resulted in hangs on reboot. These were eliminated when I installed the latest kernel from the raring-proposed repo. See also Updates below.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default, Alt-Button2. Update: The upgrade to Ubuntu 12.10 reverted this setting to the default, so I had to set it again.&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers.d/local add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]].&lt;br /&gt;
&lt;br /&gt;
For Ubuntus prior to 12.10 add the &amp;quot;fingerprint&amp;quot; PPA as follows.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all Ubuntus...&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as I describe below&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Change format of the date and time displayed on the menu bar to &amp;quot;&amp;lt;b&amp;gt;Tue 15 May 2012  14:09:11&amp;lt;/b&amp;gt;&amp;quot;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime time-format &amp;quot;'custom'&amp;quot;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime custom-time-format &amp;quot;'%a %d %b %Y  %H:%M:%S'&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.freedesktop.org/show_bug.cgi?id=11227 hotkey shortcomings] ===&lt;br /&gt;
Earlier workaround: [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings]]&lt;br /&gt;
&lt;br /&gt;
By default the &amp;quot;zoom&amp;quot; (Fn-Space) and &amp;quot;microphone-mute&amp;quot; (button next to the ThinkVantage button) hotkeys do nothing.&lt;br /&gt;
&lt;br /&gt;
'''Zoom''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module, kernel and &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; map the zoom key's ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 00001014&amp;lt;/tt&amp;gt;) to input event &amp;lt;tt&amp;gt;KEY_ZOOM&amp;lt;/tt&amp;gt; whose numerical value, 372, is greater than 255, the highest key-event code that X can handle.&lt;br /&gt;
&lt;br /&gt;
'''Micmute''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module and kernel generate an ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 0000101b&amp;lt;/tt&amp;gt;) for the microphone mute button but in releases earlier than precise this is not mapped to anything; in precise it is mapped to 256 which is also greater than 255, the highest that X can handle. Bug reported [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
The fault lies with X which can't handle key codes above 255.  But as discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/313514 here], it may be a long time before this gets fixed in X.&lt;br /&gt;
&lt;br /&gt;
In Precise updates as of October 2013 a workaround has been implemented for micmute: this key is now treated as if it were F20.&lt;br /&gt;
This will [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 supposedly] be fixed for Ubuntu 13.10 (Saucy) too.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]] [[Category: Ubuntu 12.10]] [[Category: Ubuntu 13.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_11.04_(Natty_Narwhal)_on_a_ThinkPad_X220&amp;diff=54727</id>
		<title>Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_11.04_(Natty_Narwhal)_on_a_ThinkPad_X220&amp;diff=54727"/>
		<updated>2013-06-25T19:19:21Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: /* Fix for hotkey shortcomings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 11.04 (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
I have since upgraded to Ubuntu 11.10 (Oneiric Ocelot) and have updated some of the information below accordingly.&lt;br /&gt;
&lt;br /&gt;
== Netboot ==&lt;br /&gt;
As a source of network installation files I made use of another GNU/Linux computer on my home LAN&lt;br /&gt;
which is connected to the Internet through a familiar ADSL-modem/gateway/router/caching nameserver/DHCP server (call it &amp;quot;the gateway&amp;quot;) at address 172.19.3.1.&lt;br /&gt;
The gateway's DHCP server issues leases in the range 172.19.3.2 to 172.19.3.100.&lt;br /&gt;
&lt;br /&gt;
First I set up the &amp;quot;source&amp;quot; machine, in my case one which already also had Ubuntu 11.04 installed.&lt;br /&gt;
It has address 172.19.3.7 (assigned to it by the gateway's DHCP server).&lt;br /&gt;
For the X220 to boot from it the machine needs to run a DHCP server and a TFTP server.&lt;br /&gt;
The DHCP server serves only this special purpose since, as I mentioned, the gateway is the network's main DHCP server.&lt;br /&gt;
The source's DHCP server must be so configured that it doesn't conflict with the existing DHCP server.&lt;br /&gt;
&lt;br /&gt;
Install the &amp;lt;tt&amp;gt;isc-dhcp-server&amp;lt;/tt&amp;gt; package and edit &amp;lt;tt&amp;gt;/etc/dhcp/dhcpd.conf&amp;lt;/tt&amp;gt; using the following as a model.&lt;br /&gt;
I am not sure that every line is needed, but this worked for me.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ddns-update-style none;&lt;br /&gt;
option domain-name-servers 172.19.3.1;  # This is the address of my gateway&lt;br /&gt;
option routers 172.19.3.1;              # This is the address of my gateway&lt;br /&gt;
option subnet-mask 255.255.0.0;         # This is the netmask of my home network&lt;br /&gt;
default-lease-time 600;&lt;br /&gt;
max-lease-time 7200;&lt;br /&gt;
allow booting;&lt;br /&gt;
allow bootp;&lt;br /&gt;
&lt;br /&gt;
subnet 172.19.3.0 netmask 255.255.255.0 {&lt;br /&gt;
  range 172.19.3.220 172.19.3.229;      # This is a range separate from the one used by the gateway and includes the address below&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
group {&lt;br /&gt;
  next-server 172.19.3.7;               # This is the address of the &amp;quot;source&amp;quot;&lt;br /&gt;
  host trawsfynydd {                    # 'trawsfynydd' is the name I chose for my X220&lt;br /&gt;
    hardware ethernet f0:de:f1:6b:22:bf; # This is the Ethernet address of the X220&lt;br /&gt;
    fixed-address 172.19.3.220;         # This is an address in the range as defined above&lt;br /&gt;
    filename &amp;quot;/pxelinux.0&amp;quot;;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now install the &amp;lt;tt&amp;gt;tftpd-hpa&amp;lt;/tt&amp;gt; package, download the network installation tarball and untar it into the location whence &amp;lt;tt&amp;gt;tftpd&amp;lt;/tt&amp;gt; serves files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /tmp&lt;br /&gt;
$ wget http://archive.ubuntu.com/ubuntu/dists/natty/main/installer-amd64/current/images/netboot/netboot.tar.gz&lt;br /&gt;
$ cd /var/lib/tftpboot&lt;br /&gt;
$ sudo tar zxf /tmp/netboot.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second set up the X220 for PXE (Pre-boot eXecution Environment).&lt;br /&gt;
* Switch on the X220 and press F1.  ThinkPad Setup starts.&lt;br /&gt;
* Set Config | Network | Ethernet LAN Option ROM to &amp;quot;Enabled&amp;quot;.&lt;br /&gt;
* Select Startup | Boot; select &amp;quot;PCI LAN IBA GE Slot...&amp;quot; and use the [+] key to move it to the top of the boot priority order&lt;br /&gt;
* Press F10 to save and exit.&lt;br /&gt;
&lt;br /&gt;
Voilà, the X220 boots the Ubuntu installer.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
I won't describe the Ubuntu installer.&lt;br /&gt;
I'll just mention some little problems I had.&lt;br /&gt;
&lt;br /&gt;
''First'', when it came time to resize the existing (ntfs) partition the partitioner asked what size I would like for &amp;quot;this partition&amp;quot;.  Did it mean the to-be-resized ntfs partition or the new ext4 partition?  &lt;br /&gt;
&lt;br /&gt;
Turns out it meant: the to-be-resized ntfs partition, so the suggested &amp;quot;max&amp;quot; selection was the opposite of what I wanted.&lt;br /&gt;
&lt;br /&gt;
''Second'', when I selected (only) the &amp;quot;Ubuntu desktop&amp;quot; task the installation reported failure without explaining what had gone wrong.&lt;br /&gt;
&lt;br /&gt;
I de-selected all tasks and the installation succeeded.&lt;br /&gt;
&lt;br /&gt;
''Third'', after reboot the screen came up black.&lt;br /&gt;
&lt;br /&gt;
I pressed CTRL-ALT-F1 to get the system console so I could log in.&lt;br /&gt;
&lt;br /&gt;
After logging in I ran &amp;lt;tt&amp;gt;tasksel&amp;lt;/tt&amp;gt; and installed &amp;quot;Ubuntu desktop&amp;quot; and this time no failure was reported.&lt;br /&gt;
&lt;br /&gt;
== Information ==&lt;br /&gt;
&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
&lt;br /&gt;
Originally:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BIOS Version: 8DET46WW (1.16)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
From Windows 7 I ran Lenovo ThinkVantage Tools to upgrade the BIOS.  Now:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BIOS Version: 8DET51WW (1.21)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== dmidecode ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# dmidecode -s system-manufacturer&lt;br /&gt;
LENOVO&lt;br /&gt;
# dmidecode -s system-product-name&lt;br /&gt;
42902WG&lt;br /&gt;
# dmidecode -s system-version&lt;br /&gt;
ThinkPad X220&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== /proc/cpuinfo ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
processor	: 0&lt;br /&gt;
vendor_id	: GenuineIntel&lt;br /&gt;
cpu family	: 6&lt;br /&gt;
model		: 42&lt;br /&gt;
model name	: Intel(R) Core(TM) i5-2540M CPU @ 2.60GHz&lt;br /&gt;
stepping	: 7&lt;br /&gt;
cpu MHz		: 800.000&lt;br /&gt;
cache size	: 3072 KB&lt;br /&gt;
physical id	: 0&lt;br /&gt;
siblings	: 4&lt;br /&gt;
core id		: 0&lt;br /&gt;
cpu cores	: 2&lt;br /&gt;
apicid		: 0&lt;br /&gt;
initial apicid	: 0&lt;br /&gt;
fpu		: yes&lt;br /&gt;
fpu_exception	: yes&lt;br /&gt;
cpuid level	: 13&lt;br /&gt;
wp		: yes&lt;br /&gt;
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 x2apic popcnt aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dts tpr_shadow vnmi flexpriority ept vpid&lt;br /&gt;
bogomips	: 5182.27&lt;br /&gt;
clflush size	: 64&lt;br /&gt;
cache_alignment	: 64&lt;br /&gt;
address sizes	: 36 bits physical, 48 bits virtual&lt;br /&gt;
power management:&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== lspci ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09)&lt;br /&gt;
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)&lt;br /&gt;
00:16.0 Communication controller: Intel Corporation 6 Series Chipset Family MEI Controller #1 (rev 04)&lt;br /&gt;
00:19.0 Ethernet controller: Intel Corporation 82579LM Gigabit Network Connection (rev 04)&lt;br /&gt;
00:1a.0 USB Controller: Intel Corporation 6 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)&lt;br /&gt;
00:1b.0 Audio device: Intel Corporation 6 Series Chipset Family High Definition Audio Controller (rev 04)&lt;br /&gt;
00:1c.0 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 1 (rev b4)&lt;br /&gt;
00:1c.1 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 2 (rev b4)&lt;br /&gt;
00:1c.3 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 4 (rev b4)&lt;br /&gt;
00:1c.4 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 5 (rev b4)&lt;br /&gt;
00:1d.0 USB Controller: Intel Corporation 6 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)&lt;br /&gt;
00:1f.0 ISA bridge: Intel Corporation 6 Series Chipset Family LPC Controller (rev 04)&lt;br /&gt;
00:1f.2 SATA controller: Intel Corporation 6 Series Chipset Family 6 port SATA AHCI Controller (rev 04)&lt;br /&gt;
00:1f.3 SMBus: Intel Corporation 6 Series Chipset Family SMBus Controller (rev 04)&lt;br /&gt;
03:00.0 Network controller: Intel Corporation Centrino Advanced-N 6205 (rev 34)&lt;br /&gt;
0d:00.0 System peripheral: Ricoh Co Ltd Device e823 (rev 04)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== lsusb ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub&lt;br /&gt;
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub&lt;br /&gt;
Bus 001 Device 006: ID 04f2:b217 Chicony Electronics Co., Ltd &lt;br /&gt;
Bus 001 Device 005: ID 0a5c:217f Broadcom Corp. Bluetooth Controller&lt;br /&gt;
Bus 001 Device 004: ID 147e:2016 Upek Biometric Touchchip/Touchstrip Fingerprint Sensor&lt;br /&gt;
Bus 001 Device 003: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub&lt;br /&gt;
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub&lt;br /&gt;
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Key table ===&lt;br /&gt;
This table was prepared ''before'' keys were remapped as discussed elsewhere on this page.&lt;br /&gt;
&lt;br /&gt;
References:&lt;br /&gt;
* [https://wiki.ubuntu.com/Hotkeys Hotkey architecture in Ubuntu]&lt;br /&gt;
* [https://wiki.ubuntu.com/Hotkeys/Troubleshooting Hotkey troubleshooting instructions]&lt;br /&gt;
* &amp;lt;tt&amp;gt;/usr/include/linux/input.h&amp;lt;/tt&amp;gt; -- list of Linux key codes&lt;br /&gt;
* [[Default meanings of special keys]]&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
! Key combination !! Extra function symbol !! ACPI event&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;acpi_listen&amp;lt;/tt&amp;gt;) !! Scan code&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;showkey&amp;amp;nbsp;-s&amp;lt;/tt&amp;gt;)&amp;lt;br&amp;gt;&amp;lt;i&amp;gt;(hex)&amp;lt;/i&amp;gt; !! Linux key code&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;showkey&amp;amp;nbsp;-k&amp;lt;/tt&amp;gt;) !! Input event&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;input-events&amp;lt;/tt&amp;gt;) !! ... on input device(*) !! X KeyCode&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;xev&amp;lt;/tt&amp;gt;) !! Keyboard Shortcuts name&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F4E2;&amp;amp;#x20E5;}} (loudspeaker icon with stroke) || || (none) || down: e0 20&amp;lt;br&amp;gt;up: e0 a0 || 113 || KEY_MIN_INTERESTING (0x71) || 3 || 121 || XF86AudioMute&lt;br /&gt;
|-&lt;br /&gt;
| {{key|−&amp;amp;#x1F4E2;}} (minus sign, loudspeaker icon) || || (none) || down: e0 2e&amp;lt;br&amp;gt;up: e0 ae || 114 || KEY_VOLUMEDOWN (0x72) || 3 ||122 || XF86AudioLowerVolume&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F4E2;+}} (loudspeaker icon, plus sign)  || || (none) || down: e0 30&amp;lt;br&amp;gt;up: e0 b0 || 115 || KEY_VOLUMEUP (0x73) || 3 || 123 || XF86AudioRaiseVolume&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F3A4;&amp;amp;#x20E5;}} (microphone icon with stroke)  || || ibm/hotkey HKEY 00000080 0000101b || (none) || 240 (rop) || KEY_UNKNOWN (0xf0) || 6 || 248 || &amp;quot;∅&amp;quot; (sic)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|ThinkVantage|#495988}}                   || || ibm/hotkey HKEY 00000080 00001018 || down: e0 1f e0 9f || 148 (rop) || KEY_PROG1 (0x94) || 6 || 156 || XF86Launch1&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}                             || || (none) || up: e0 63 e0 e3 || 143 || KEY_WAKEUP (0x8f) || 3 || 151 || XF86WakeUp&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F1|#494949}}       || || ibm/hotkey HKEY 00000080 00001001 || (none) || 466 (rop) || KEY_FN_F1 (0x1d2) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F2|#494949}}       || &amp;amp;#x1F512; (padlock symbol) || ibm/hotkey HKEY 00000080 00001002 || down: e0 12 e0 92 || 152 (rop) || KEY_SCREENLOCK (0x98) || 6 || 160 || XF86ScreenSaver&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F3|#494949}}       || &amp;amp;#x1F50B; (battery symbol) || ibm/hotkey HKEY 00000080 00001003 || down: e0 71 e0 f1 || 236 (rop) || KEY_BATTERY (0xec) || 6 || 244 || XF86Battery&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F4|#494949}}       || ☾ || ibm/hotkey HKEY 00000080 00001004 || down: e0 5f e0 df&amp;lt;br&amp;gt;(but sometimes nothing) || 142 (rop) || KEY_SLEEP (0x8e) || 6 || 150 || XF86Sleep&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F5|#494949}}       || &amp;amp;#x2E28;&amp;amp;#x1F4BB;&amp;amp;#x2E29; (radiating computer symbol) || ibm/hotkey HKEY 00000080 00001005 || down: e0 73 e0 f3 || 238 (rop) || KEY_WLAN (0xee) || 6 || 246 || XF86WLAN&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F6|#494949}}       || (camera, headset) || ibm/hotkey HKEY 00000080 00001006 || down: e0 3b e0 bb || 212 (rop) || KEY_CAMERA (0xd4) || 6 || 220 || XF86WebCam&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F7|#494949}}       || &amp;amp;#x1F4BB;&amp;amp;#x239A; (computer symbol, screen symbol) || ibm/hotkey HKEY 00000080 00001007 || down: e0 56 e0 d6 || 227 (rop) || KEY_SWITCHVIDEOMODE (0xe3) || 6 || 235 || XF86Display&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F8|#494949}}       || (trackpoint symbol, vertical bar, trackpad symbol) || ibm/hotkey HKEY 00000080 00001008 || down: e0 74 e0 f4 || 191 (rop) || KEY_F21 (0xbf) || 6 || 199 || XF86TouchpadToggle&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F9|#494949}}       || || ibm/hotkey HKEY 00000080 00001009 || down: 6f ef || 194 (rop) || KEY_F24 (0xc2) || 6 || 202 || &amp;quot;Ê&amp;quot; (sic)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F10|#494949}}      || || (none) || (none) || || (none) || || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F11|#494949}}      || || ibm/hotkey HKEY 00000080 0000100b || (none) || 476 (rop) || KEY_FN_F11 (0x1dc) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F12|#494949}}      || &amp;amp;#x1F4BB;&amp;amp;nbsp;&amp;amp;#x25B6;&amp;amp;#x274D; (computer symbol, right arrowhead, diskpack symbol) || ibm/hotkey HKEY 00000080 0000100c || down: e0 25 e0 a5&amp;lt;br&amp;gt;(but sometimes nothing) || 205 (rop) || KEY_SUSPEND (0xcd) || 6 || 213 || XF86Suspend&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|Home|#494949}}     || ☀▴ || ibm/hotkey HKEY 00000080 00001010 and video LCD0 00000086 00000000 || down: e0 54 e0 d4 e0 54 e0 d4 || 225 (double) (rop) || KEY_BRIGHTNESSUP (0xe1) || 4, 6 || 233 || XF86MonBrightnessUp&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|End|#494949}}      || ☀▾ || ibm/hotkey HKEY 00000080 00001011 and  video LCD0 00000087 00000000 || down: e0 4c e0 cc e0 4c e0 cc || 224 (double) (rop) || KEY_BRIGHTNESSDOWN (0xe0) || 4, 6 || 232 || XF86MonBrightnessDown&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|PgUp|#494949}}     || (illuminating overhead lamp symbol) || (none) || (none) || (none) || (none) || (none) || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|Space|#494949}}    || [&amp;amp;#x1F50D;+] (screen with magnifying glass symbol and plus sign, i.e., &amp;quot;zoom&amp;quot; symbol) || ibm/hotkey HKEY 00000080 00001014 || (none) || 372 (rop) || KEY_ZOOM (0x174) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|→|#494949}}        || &amp;amp;#x23ED; (barred right arrowhead, i.e., &amp;quot;next&amp;quot; symbol) || (none) || down: e0 19&amp;lt;br&amp;gt;up: e0 99 || 163 || KEY_NEXTSONG (0xa3) || 3 || 171 || XF86AudioNext&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|↓|#494949}}        || &amp;amp;#x23EF; (right arrowhead, double bar, i.e., &amp;quot;play/pause&amp;quot; symbol) || (none) || down: e0 22&amp;lt;br&amp;gt;up: e0 a2 || 164 || KEY_PLAYPAUSE (0xa4) || 3 || 172 || XF86AudioPlay&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|←|#494949}}        || &amp;amp;#x23EE; (barred left arrowhead, i.e., &amp;quot;prev&amp;quot; symbol) || (none) || down: e0 10&amp;lt;br&amp;gt;up: e0 90 || 165 || KEY_PREVIOUSSONG (0xa5) || 3 || 173 || XF86AudioPrev&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|↑|#494949}}        || ∎ (&amp;quot;stop play&amp;quot; symbol) || (none) || down: e0 24&amp;lt;br&amp;gt;up: e0 a4 || 166 || KEY_STOPCD (0xa6) || 3 || 174 || XF86AudioStop&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|◂ ⎗|#494949}} (left arrowhead, page icon) || || (none) || down: e0 6a&amp;lt;br&amp;gt;up: e0 ea || 158 || KEY_BACK (0x9e) || 3 || 166 || XF86Back&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|⎘ ▸|#494949}} (page icon, right arrowhead) || || (none) || down: e0 69&amp;lt;br&amp;gt;up: e0 e9 || 159 || KEY_FORWARD (0x9f) || 3 || 167 || XF86Forward&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
In the Linux key code column, &amp;quot;rop&amp;quot; means &amp;quot;release on press&amp;quot;, i.e., the release event is generated at the same time as the press event.&lt;br /&gt;
&lt;br /&gt;
The button on the UltraBase doesn't seem to generate any events visible to userspace.&lt;br /&gt;
&lt;br /&gt;
Input device numbers and types as reported by &amp;lt;tt&amp;gt;lsinput&amp;lt;/tt&amp;gt;:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
|+ (*) /dev/input/event&amp;lt;i&amp;gt;n&amp;lt;/i&amp;gt;&lt;br /&gt;
! n !! name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || &amp;quot;Lid Switch&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 1 || &amp;quot;Sleep Button&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 2 || &amp;quot;Power Button&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 3 || &amp;quot;AT Translated Set @ keyboard&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 4 || &amp;quot;Video Bus&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 5 || &amp;quot;Integrated Camera&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 6 || &amp;quot;ThinkPad Extra Buttons&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 7 || &amp;quot;SynPS/2 Synaptics TouchPad&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 8 || &amp;quot;TPPS/2 IBM TrackPoint&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Hotkey mask when the above table was compiled:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_mask&lt;br /&gt;
0x078dffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_all_mask&lt;br /&gt;
0x07ffffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_recommended_mask&lt;br /&gt;
0x078dffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_report_mode&lt;br /&gt;
1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Accessories ==&lt;br /&gt;
Accessories I purchased for this laptop:&lt;br /&gt;
* [[ThinkPad UltraBase Series 3]] with built-in [[Serial Ultrabay Slim]]&lt;br /&gt;
* [[Serial Ultrabay Slim DVD Multi IV Drive]]&lt;br /&gt;
* [[ThinkPad Mini Dock Series 3]] 433710U which comes with a 90W power supply&lt;br /&gt;
* 1.95Ah battery 42T4901&lt;br /&gt;
* 8.4Ah battery 42T4942&lt;br /&gt;
&lt;br /&gt;
== Configuration and solved problems ==&lt;br /&gt;
&lt;br /&gt;
=== Fingerprint reader ===&lt;br /&gt;
See [[How to enable integrated fingerprint reader with fprint|how to enable the integrated fingerprint reader with fprint]].&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.freedesktop.org/show_bug.cgi?id=11227 hotkey shortcomings] ===&lt;br /&gt;
(Updated November 2011 for Oneiric.)&lt;br /&gt;
&lt;br /&gt;
By default the &amp;quot;zoom&amp;quot; (Fn-Space) and &amp;quot;microphone-mute&amp;quot; (button next to the ThinkVantage button) hotkeys do nothing.&lt;br /&gt;
&lt;br /&gt;
'''Zoom''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module, kernel and &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; map the zoom key's ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 00001014&amp;lt;/tt&amp;gt;) to input event &amp;lt;tt&amp;gt;KEY_ZOOM&amp;lt;/tt&amp;gt; whose numerical value, 372, is greater than 255, the highest key-event code that X can handle.&lt;br /&gt;
&lt;br /&gt;
'''Micmute''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module and kernel generate an ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 0000101b&amp;lt;/tt&amp;gt;) for the microphone mute button but in releases earlier than precise this is not mapped to anything; in precise it is mapped to 256 which is also greater than 255, the highest that X can handle. Bug reported [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
The fault lies with X which can't handle key codes above 255.  But as discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/313514 here], it may be a long time before this gets fixed in X.&lt;br /&gt;
&lt;br /&gt;
There is a fairly easy workaround.&lt;br /&gt;
Install version 175 or later of the &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; package and do the following.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# sudo su&lt;br /&gt;
# mkdir /etc/udev/keymaps&lt;br /&gt;
# cp /lib/udev/keymaps/module-lenovo /etc/udev/keymaps&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now edit &amp;lt;tt&amp;gt;/etc/udev/keymaps/module-lenovo&amp;lt;/tt&amp;gt; so that 0x13 and 0x1A get mapped to &amp;lt;tt&amp;gt;search&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;prog2&amp;lt;/tt&amp;gt;, respectively (instead of &amp;lt;tt&amp;gt;zoom&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;micmute&amp;lt;/tt&amp;gt;, respectively).&lt;br /&gt;
&lt;br /&gt;
Then in System Settings | Keyboard | Shortcuts assign a behavior to the &amp;lt;tt&amp;gt;XF86Search&amp;lt;/tt&amp;gt; event, the X event corresponding to &amp;lt;tt&amp;gt;search&amp;lt;/tt&amp;gt;. This behavior will be invoked by Fn-Space.&lt;br /&gt;
&lt;br /&gt;
There is no built-in function for muting the microphone but it is straightforward to concoct one using &amp;lt;tt&amp;gt;amixer&amp;lt;/tt&amp;gt;.&lt;br /&gt;
In Keyboard | Shortcuts select Custom Shortcuts and press &amp;lt;tt&amp;gt;+&amp;lt;/tt&amp;gt; to create a new shortcut named &amp;quot;Microphone mute&amp;quot; whose command-content is the following.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sh -c &amp;quot;if amixer get Capture,0 | grep -q '\[on\]' ; then amixer -q set Capture,0 nocap ; else amixer -q set Capture,0 cap; fi&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Assign this to &amp;lt;tt&amp;gt;XF86Launch2&amp;lt;/tt&amp;gt; which is the X event corresponding to input event &amp;lt;tt&amp;gt;prog2&amp;lt;/tt&amp;gt;. This behavior will be invoked by the microphone-mute key.&lt;br /&gt;
&lt;br /&gt;
[Added June 2013:] This will [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 supposedly] be fixed for Ubuntu 13.10 (Saucy). The microphone-mute ACPI event will be mapped to f20 instead of prog2 but making use of this will require patches to other packages: https://code.launchpad.net/~jm-leddy/&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/486154 the known no-system-beep problem] ===&lt;br /&gt;
As I described in more detail [[Installing Ubuntu 9.10 (Karmic Koala) on a ThinkPad X61#Partially solved problem: No beep|earlier]]:&lt;br /&gt;
* Create &amp;lt;tt&amp;gt;.xprofile&amp;lt;/tt&amp;gt; containing&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and at &amp;lt;tt&amp;gt;desktop | gnome | peripherals | keyboard&amp;lt;/tt&amp;gt; change the value of &amp;lt;tt&amp;gt;bell_mode&amp;lt;/tt&amp;gt; from &amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt; to &amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* If the default bell volume of 50 (percent) is not loud enough, add a line like the following to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
xset b 100&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* To cause terminal bells to ring also in non-X terminals (e.g., the console terminal), comment out the &amp;lt;tt&amp;gt;blacklist pcspkr&amp;lt;/tt&amp;gt; line in &amp;lt;tt&amp;gt;/etc/modprobe.d/blacklist.conf&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Fix for &amp;quot;[drm:i915_hangcheck_ring_idle] *ERROR* Hangcheck timer elapsed... blt ring idle...&amp;quot; problem ===&lt;br /&gt;
To fix [https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/761065 this known problem] upgrade the kernel: install the &amp;lt;tt&amp;gt;linux-image-2.6.38-11-generic&amp;lt;/tt&amp;gt; package and reboot.&lt;br /&gt;
&lt;br /&gt;
=== [[Tp smapi|tp-smapi]] loading ===&lt;br /&gt;
First, it is as usual necessary to add&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tp-smapi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt; so that &amp;lt;tt&amp;gt;modoprobe&amp;lt;/tt&amp;gt; will attempt to load the module at boot time.&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
Having loaded &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; do:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Result:&lt;br /&gt;
&lt;br /&gt;
[[Image:ThinkPad_X220_running_hdaps-gl.jpg|Tilted ThinkPad X220 running hdaps-gl|300px]]&lt;br /&gt;
&lt;br /&gt;
=== Miscellaneous configuration ===&lt;br /&gt;
* Having installed bare Ubuntu I had to run &amp;lt;tt&amp;gt;tasksel&amp;lt;/tt&amp;gt; and select at least &amp;quot;Ubuntu Desktop&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* In order to allow NetworkManager to manage eth0 I had to comment out the &amp;quot;eth0&amp;quot; stanza in &amp;lt;tt&amp;gt;/etc/network/interfaces&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* I used System Settings | Ubuntu Software Center to install &amp;lt;tt&amp;gt;ccsm&amp;lt;/tt&amp;gt; (&amp;quot;Advanced Desktop Effects Settings&amp;quot;) so I could enable Wobbly Windows and so I can initiate window resize with Alt+Button3 which is easier than the default Alt-Button2 (i.e., Alt-scrollwheelbutton).&lt;br /&gt;
&lt;br /&gt;
* Add PPAs to apt sources list for additional indicators&lt;br /&gt;
&lt;br /&gt;
=== Unity automaximizes ===&lt;br /&gt;
To disable this (annoying) behavior, run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
== Ex-problems ==&lt;br /&gt;
=== Suspend causes kernel panic ===&lt;br /&gt;
&amp;quot;Suspend-to-RAM and brightness control of the display work with kernel &amp;gt;= 3.0-rc6&amp;quot; according to [[Installing Gentoo on a ThinkPad X220|this fellow]].&lt;br /&gt;
&lt;br /&gt;
Since I upgraded to kernel 2.6.38-11-generic I haven't had any kernel panics on suspend.&lt;br /&gt;
&lt;br /&gt;
=== TPM can't be used ===&lt;br /&gt;
To try it out, install &amp;lt;tt&amp;gt;tpm-tools&amp;lt;/tt&amp;gt;.  &lt;br /&gt;
&lt;br /&gt;
When I first tried it, the &amp;lt;tt&amp;gt;tpm_version&amp;lt;/tt&amp;gt; program failed with &amp;quot;Communication failure&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
But now it prints this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  TPM 1.2 Version Info:&lt;br /&gt;
  Chip Version:        1.2.8.32&lt;br /&gt;
  Spec Level:          2&lt;br /&gt;
  Errata Revision:     3&lt;br /&gt;
  TPM Vendor ID:       STM &lt;br /&gt;
  TPM Version:         01010000&lt;br /&gt;
  Manufacturer Info:   53544d20&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Presumably the new kernel fixed this.&lt;br /&gt;
&lt;br /&gt;
=== memtest86+ didn't work ===&lt;br /&gt;
&lt;br /&gt;
Upgrading to the oneiric version, v4.20, fixed this.&lt;br /&gt;
&lt;br /&gt;
=== Multiple monitors ===&lt;br /&gt;
Configuring an extended desktop over two monitors led to malfunction.  Side-by-side worked, one above the other did not.&lt;br /&gt;
&lt;br /&gt;
In natty the solution was just to avoid the layouts that caused the malfunction.&lt;br /&gt;
&lt;br /&gt;
The problems appear to have been completely solved in Ubuntu 11.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
=== Bluetooth-related crashes ===&lt;br /&gt;
Switching bluetooth on or off either using the indicator or Fn-F5 sometimes crashed the machine.&lt;br /&gt;
&lt;br /&gt;
I haven't seen this problem in Ubuntu 10.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
=== [[Tp smapi|tp-smapi]] loading problem ===&lt;br /&gt;
The distributed &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; modules didn't load on my X220&lt;br /&gt;
and &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; reported the EC firmware number as &amp;quot;unknown&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The BIOS setup program reports this information about the BIOS:&lt;br /&gt;
* Model 42902WG&lt;br /&gt;
* UEFI BIOS 8DET46WW (1.16) 2011-05-18&lt;br /&gt;
* Embedded Controller 8DHT23WW (1.07)&lt;br /&gt;
&lt;br /&gt;
This problem was fixed in &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; version 0.41-1.  As of 7 August 2011 &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; is available in Debian unstable (Ubuntu uses Debian &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; packages with no changes) and this is the version in Ubuntu 11.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
Output from &amp;lt;tt&amp;gt;dmesg&amp;lt;/tt&amp;gt; after &amp;lt;tt&amp;gt;modprobe&amp;lt;/tt&amp;gt;ing &amp;lt;tt&amp;gt;thinkpad-ec&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[  714.842090] thinkpad_ec: thinkpad_ec 0.41 loaded.&lt;br /&gt;
[  721.983409] tp_smapi 0.41 loading...&lt;br /&gt;
[  721.984742] tp_smapi successfully loaded (smapi_port=0xb2).&lt;br /&gt;
[  729.462533] hdaps: LENOVO ThinkPad X220 detected, setting orientation 4&lt;br /&gt;
[  729.462894] hdaps: initial mode latch is 0x05&lt;br /&gt;
[  729.463022] hdaps: setting ec_rate=250, filter_order=2&lt;br /&gt;
[  729.463242] hdaps: device successfully initialized.&lt;br /&gt;
[  729.463799] input: ThinkPad HDAPS joystick emulation as /devices/virtual/input/input15&lt;br /&gt;
[  729.464101] input: ThinkPad HDAPS accelerometer data as /devices/virtual/input/input16&lt;br /&gt;
[  729.464342] hdaps: driver successfully loaded.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Modinfo:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ modinfo tp-smapi&lt;br /&gt;
filename:       /lib/modules/2.6.38-11-generic/updates/dkms/tp_smapi.ko&lt;br /&gt;
license:        GPL&lt;br /&gt;
version:        0.41&lt;br /&gt;
description:    ThinkPad SMAPI Support&lt;br /&gt;
author:         Shem Multinymous&lt;br /&gt;
srcversion:     B6841670771B2FF5222BFFD&lt;br /&gt;
depends:        thinkpad_ec&lt;br /&gt;
vermagic:       2.6.38-11-generic SMP mod_unload modversions &lt;br /&gt;
parm:           debug:Debug level (0=off, 1=on) (int)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Remaining problems ==&lt;br /&gt;
&lt;br /&gt;
=== Indicator lamp on microphone mute key doesn't work ===&lt;br /&gt;
The problem has been discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/linux/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
== Comparison with [[Installing Ubuntu 10.10 (Maverick Meerkat) on a ThinkPad X220|a Ubuntu 10.10 user's experience]] ==&lt;br /&gt;
* (improvements)&lt;br /&gt;
** I didn't have to do anything special to have the &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module loaded or use special keys&lt;br /&gt;
** The mute-microphone button can be made to work as described above&lt;br /&gt;
** Both left and right microphones are seen&lt;br /&gt;
** I have no difficulties with the fans&lt;br /&gt;
** I have no difficulties with SD cards&lt;br /&gt;
** The &amp;quot;Hangcheck timer elapsed&amp;quot; problem has been fixed in a new kernel version, as described above&lt;br /&gt;
&lt;br /&gt;
== Things to remember ==&lt;br /&gt;
To get Google Earth to work you have to do&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libgl1-mesa-glx:i386&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Ubuntu 11.04]][[Category:Ubuntu 11.10]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_11.04_(Natty_Narwhal)_on_a_ThinkPad_X220&amp;diff=54726</id>
		<title>Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_11.04_(Natty_Narwhal)_on_a_ThinkPad_X220&amp;diff=54726"/>
		<updated>2013-06-25T19:09:21Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: /* Fix for hotkey shortcomings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 11.04 (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
I have since upgraded to Ubuntu 11.10 (Oneiric Ocelot) and have updated some of the information below accordingly.&lt;br /&gt;
&lt;br /&gt;
== Netboot ==&lt;br /&gt;
As a source of network installation files I made use of another GNU/Linux computer on my home LAN&lt;br /&gt;
which is connected to the Internet through a familiar ADSL-modem/gateway/router/caching nameserver/DHCP server (call it &amp;quot;the gateway&amp;quot;) at address 172.19.3.1.&lt;br /&gt;
The gateway's DHCP server issues leases in the range 172.19.3.2 to 172.19.3.100.&lt;br /&gt;
&lt;br /&gt;
First I set up the &amp;quot;source&amp;quot; machine, in my case one which already also had Ubuntu 11.04 installed.&lt;br /&gt;
It has address 172.19.3.7 (assigned to it by the gateway's DHCP server).&lt;br /&gt;
For the X220 to boot from it the machine needs to run a DHCP server and a TFTP server.&lt;br /&gt;
The DHCP server serves only this special purpose since, as I mentioned, the gateway is the network's main DHCP server.&lt;br /&gt;
The source's DHCP server must be so configured that it doesn't conflict with the existing DHCP server.&lt;br /&gt;
&lt;br /&gt;
Install the &amp;lt;tt&amp;gt;isc-dhcp-server&amp;lt;/tt&amp;gt; package and edit &amp;lt;tt&amp;gt;/etc/dhcp/dhcpd.conf&amp;lt;/tt&amp;gt; using the following as a model.&lt;br /&gt;
I am not sure that every line is needed, but this worked for me.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ddns-update-style none;&lt;br /&gt;
option domain-name-servers 172.19.3.1;  # This is the address of my gateway&lt;br /&gt;
option routers 172.19.3.1;              # This is the address of my gateway&lt;br /&gt;
option subnet-mask 255.255.0.0;         # This is the netmask of my home network&lt;br /&gt;
default-lease-time 600;&lt;br /&gt;
max-lease-time 7200;&lt;br /&gt;
allow booting;&lt;br /&gt;
allow bootp;&lt;br /&gt;
&lt;br /&gt;
subnet 172.19.3.0 netmask 255.255.255.0 {&lt;br /&gt;
  range 172.19.3.220 172.19.3.229;      # This is a range separate from the one used by the gateway and includes the address below&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
group {&lt;br /&gt;
  next-server 172.19.3.7;               # This is the address of the &amp;quot;source&amp;quot;&lt;br /&gt;
  host trawsfynydd {                    # 'trawsfynydd' is the name I chose for my X220&lt;br /&gt;
    hardware ethernet f0:de:f1:6b:22:bf; # This is the Ethernet address of the X220&lt;br /&gt;
    fixed-address 172.19.3.220;         # This is an address in the range as defined above&lt;br /&gt;
    filename &amp;quot;/pxelinux.0&amp;quot;;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now install the &amp;lt;tt&amp;gt;tftpd-hpa&amp;lt;/tt&amp;gt; package, download the network installation tarball and untar it into the location whence &amp;lt;tt&amp;gt;tftpd&amp;lt;/tt&amp;gt; serves files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /tmp&lt;br /&gt;
$ wget http://archive.ubuntu.com/ubuntu/dists/natty/main/installer-amd64/current/images/netboot/netboot.tar.gz&lt;br /&gt;
$ cd /var/lib/tftpboot&lt;br /&gt;
$ sudo tar zxf /tmp/netboot.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second set up the X220 for PXE (Pre-boot eXecution Environment).&lt;br /&gt;
* Switch on the X220 and press F1.  ThinkPad Setup starts.&lt;br /&gt;
* Set Config | Network | Ethernet LAN Option ROM to &amp;quot;Enabled&amp;quot;.&lt;br /&gt;
* Select Startup | Boot; select &amp;quot;PCI LAN IBA GE Slot...&amp;quot; and use the [+] key to move it to the top of the boot priority order&lt;br /&gt;
* Press F10 to save and exit.&lt;br /&gt;
&lt;br /&gt;
Voilà, the X220 boots the Ubuntu installer.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
I won't describe the Ubuntu installer.&lt;br /&gt;
I'll just mention some little problems I had.&lt;br /&gt;
&lt;br /&gt;
''First'', when it came time to resize the existing (ntfs) partition the partitioner asked what size I would like for &amp;quot;this partition&amp;quot;.  Did it mean the to-be-resized ntfs partition or the new ext4 partition?  &lt;br /&gt;
&lt;br /&gt;
Turns out it meant: the to-be-resized ntfs partition, so the suggested &amp;quot;max&amp;quot; selection was the opposite of what I wanted.&lt;br /&gt;
&lt;br /&gt;
''Second'', when I selected (only) the &amp;quot;Ubuntu desktop&amp;quot; task the installation reported failure without explaining what had gone wrong.&lt;br /&gt;
&lt;br /&gt;
I de-selected all tasks and the installation succeeded.&lt;br /&gt;
&lt;br /&gt;
''Third'', after reboot the screen came up black.&lt;br /&gt;
&lt;br /&gt;
I pressed CTRL-ALT-F1 to get the system console so I could log in.&lt;br /&gt;
&lt;br /&gt;
After logging in I ran &amp;lt;tt&amp;gt;tasksel&amp;lt;/tt&amp;gt; and installed &amp;quot;Ubuntu desktop&amp;quot; and this time no failure was reported.&lt;br /&gt;
&lt;br /&gt;
== Information ==&lt;br /&gt;
&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
&lt;br /&gt;
Originally:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BIOS Version: 8DET46WW (1.16)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
From Windows 7 I ran Lenovo ThinkVantage Tools to upgrade the BIOS.  Now:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BIOS Version: 8DET51WW (1.21)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== dmidecode ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# dmidecode -s system-manufacturer&lt;br /&gt;
LENOVO&lt;br /&gt;
# dmidecode -s system-product-name&lt;br /&gt;
42902WG&lt;br /&gt;
# dmidecode -s system-version&lt;br /&gt;
ThinkPad X220&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== /proc/cpuinfo ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
processor	: 0&lt;br /&gt;
vendor_id	: GenuineIntel&lt;br /&gt;
cpu family	: 6&lt;br /&gt;
model		: 42&lt;br /&gt;
model name	: Intel(R) Core(TM) i5-2540M CPU @ 2.60GHz&lt;br /&gt;
stepping	: 7&lt;br /&gt;
cpu MHz		: 800.000&lt;br /&gt;
cache size	: 3072 KB&lt;br /&gt;
physical id	: 0&lt;br /&gt;
siblings	: 4&lt;br /&gt;
core id		: 0&lt;br /&gt;
cpu cores	: 2&lt;br /&gt;
apicid		: 0&lt;br /&gt;
initial apicid	: 0&lt;br /&gt;
fpu		: yes&lt;br /&gt;
fpu_exception	: yes&lt;br /&gt;
cpuid level	: 13&lt;br /&gt;
wp		: yes&lt;br /&gt;
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 x2apic popcnt aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dts tpr_shadow vnmi flexpriority ept vpid&lt;br /&gt;
bogomips	: 5182.27&lt;br /&gt;
clflush size	: 64&lt;br /&gt;
cache_alignment	: 64&lt;br /&gt;
address sizes	: 36 bits physical, 48 bits virtual&lt;br /&gt;
power management:&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== lspci ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09)&lt;br /&gt;
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)&lt;br /&gt;
00:16.0 Communication controller: Intel Corporation 6 Series Chipset Family MEI Controller #1 (rev 04)&lt;br /&gt;
00:19.0 Ethernet controller: Intel Corporation 82579LM Gigabit Network Connection (rev 04)&lt;br /&gt;
00:1a.0 USB Controller: Intel Corporation 6 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)&lt;br /&gt;
00:1b.0 Audio device: Intel Corporation 6 Series Chipset Family High Definition Audio Controller (rev 04)&lt;br /&gt;
00:1c.0 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 1 (rev b4)&lt;br /&gt;
00:1c.1 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 2 (rev b4)&lt;br /&gt;
00:1c.3 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 4 (rev b4)&lt;br /&gt;
00:1c.4 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 5 (rev b4)&lt;br /&gt;
00:1d.0 USB Controller: Intel Corporation 6 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)&lt;br /&gt;
00:1f.0 ISA bridge: Intel Corporation 6 Series Chipset Family LPC Controller (rev 04)&lt;br /&gt;
00:1f.2 SATA controller: Intel Corporation 6 Series Chipset Family 6 port SATA AHCI Controller (rev 04)&lt;br /&gt;
00:1f.3 SMBus: Intel Corporation 6 Series Chipset Family SMBus Controller (rev 04)&lt;br /&gt;
03:00.0 Network controller: Intel Corporation Centrino Advanced-N 6205 (rev 34)&lt;br /&gt;
0d:00.0 System peripheral: Ricoh Co Ltd Device e823 (rev 04)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== lsusb ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub&lt;br /&gt;
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub&lt;br /&gt;
Bus 001 Device 006: ID 04f2:b217 Chicony Electronics Co., Ltd &lt;br /&gt;
Bus 001 Device 005: ID 0a5c:217f Broadcom Corp. Bluetooth Controller&lt;br /&gt;
Bus 001 Device 004: ID 147e:2016 Upek Biometric Touchchip/Touchstrip Fingerprint Sensor&lt;br /&gt;
Bus 001 Device 003: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub&lt;br /&gt;
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub&lt;br /&gt;
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Key table ===&lt;br /&gt;
This table was prepared ''before'' keys were remapped as discussed elsewhere on this page.&lt;br /&gt;
&lt;br /&gt;
References:&lt;br /&gt;
* [https://wiki.ubuntu.com/Hotkeys Hotkey architecture in Ubuntu]&lt;br /&gt;
* [https://wiki.ubuntu.com/Hotkeys/Troubleshooting Hotkey troubleshooting instructions]&lt;br /&gt;
* &amp;lt;tt&amp;gt;/usr/include/linux/input.h&amp;lt;/tt&amp;gt; -- list of Linux key codes&lt;br /&gt;
* [[Default meanings of special keys]]&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
! Key combination !! Extra function symbol !! ACPI event&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;acpi_listen&amp;lt;/tt&amp;gt;) !! Scan code&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;showkey&amp;amp;nbsp;-s&amp;lt;/tt&amp;gt;)&amp;lt;br&amp;gt;&amp;lt;i&amp;gt;(hex)&amp;lt;/i&amp;gt; !! Linux key code&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;showkey&amp;amp;nbsp;-k&amp;lt;/tt&amp;gt;) !! Input event&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;input-events&amp;lt;/tt&amp;gt;) !! ... on input device(*) !! X KeyCode&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;xev&amp;lt;/tt&amp;gt;) !! Keyboard Shortcuts name&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F4E2;&amp;amp;#x20E5;}} (loudspeaker icon with stroke) || || (none) || down: e0 20&amp;lt;br&amp;gt;up: e0 a0 || 113 || KEY_MIN_INTERESTING (0x71) || 3 || 121 || XF86AudioMute&lt;br /&gt;
|-&lt;br /&gt;
| {{key|−&amp;amp;#x1F4E2;}} (minus sign, loudspeaker icon) || || (none) || down: e0 2e&amp;lt;br&amp;gt;up: e0 ae || 114 || KEY_VOLUMEDOWN (0x72) || 3 ||122 || XF86AudioLowerVolume&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F4E2;+}} (loudspeaker icon, plus sign)  || || (none) || down: e0 30&amp;lt;br&amp;gt;up: e0 b0 || 115 || KEY_VOLUMEUP (0x73) || 3 || 123 || XF86AudioRaiseVolume&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F3A4;&amp;amp;#x20E5;}} (microphone icon with stroke)  || || ibm/hotkey HKEY 00000080 0000101b || (none) || 240 (rop) || KEY_UNKNOWN (0xf0) || 6 || 248 || &amp;quot;∅&amp;quot; (sic)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|ThinkVantage|#495988}}                   || || ibm/hotkey HKEY 00000080 00001018 || down: e0 1f e0 9f || 148 (rop) || KEY_PROG1 (0x94) || 6 || 156 || XF86Launch1&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}                             || || (none) || up: e0 63 e0 e3 || 143 || KEY_WAKEUP (0x8f) || 3 || 151 || XF86WakeUp&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F1|#494949}}       || || ibm/hotkey HKEY 00000080 00001001 || (none) || 466 (rop) || KEY_FN_F1 (0x1d2) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F2|#494949}}       || &amp;amp;#x1F512; (padlock symbol) || ibm/hotkey HKEY 00000080 00001002 || down: e0 12 e0 92 || 152 (rop) || KEY_SCREENLOCK (0x98) || 6 || 160 || XF86ScreenSaver&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F3|#494949}}       || &amp;amp;#x1F50B; (battery symbol) || ibm/hotkey HKEY 00000080 00001003 || down: e0 71 e0 f1 || 236 (rop) || KEY_BATTERY (0xec) || 6 || 244 || XF86Battery&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F4|#494949}}       || ☾ || ibm/hotkey HKEY 00000080 00001004 || down: e0 5f e0 df&amp;lt;br&amp;gt;(but sometimes nothing) || 142 (rop) || KEY_SLEEP (0x8e) || 6 || 150 || XF86Sleep&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F5|#494949}}       || &amp;amp;#x2E28;&amp;amp;#x1F4BB;&amp;amp;#x2E29; (radiating computer symbol) || ibm/hotkey HKEY 00000080 00001005 || down: e0 73 e0 f3 || 238 (rop) || KEY_WLAN (0xee) || 6 || 246 || XF86WLAN&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F6|#494949}}       || (camera, headset) || ibm/hotkey HKEY 00000080 00001006 || down: e0 3b e0 bb || 212 (rop) || KEY_CAMERA (0xd4) || 6 || 220 || XF86WebCam&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F7|#494949}}       || &amp;amp;#x1F4BB;&amp;amp;#x239A; (computer symbol, screen symbol) || ibm/hotkey HKEY 00000080 00001007 || down: e0 56 e0 d6 || 227 (rop) || KEY_SWITCHVIDEOMODE (0xe3) || 6 || 235 || XF86Display&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F8|#494949}}       || (trackpoint symbol, vertical bar, trackpad symbol) || ibm/hotkey HKEY 00000080 00001008 || down: e0 74 e0 f4 || 191 (rop) || KEY_F21 (0xbf) || 6 || 199 || XF86TouchpadToggle&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F9|#494949}}       || || ibm/hotkey HKEY 00000080 00001009 || down: 6f ef || 194 (rop) || KEY_F24 (0xc2) || 6 || 202 || &amp;quot;Ê&amp;quot; (sic)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F10|#494949}}      || || (none) || (none) || || (none) || || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F11|#494949}}      || || ibm/hotkey HKEY 00000080 0000100b || (none) || 476 (rop) || KEY_FN_F11 (0x1dc) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F12|#494949}}      || &amp;amp;#x1F4BB;&amp;amp;nbsp;&amp;amp;#x25B6;&amp;amp;#x274D; (computer symbol, right arrowhead, diskpack symbol) || ibm/hotkey HKEY 00000080 0000100c || down: e0 25 e0 a5&amp;lt;br&amp;gt;(but sometimes nothing) || 205 (rop) || KEY_SUSPEND (0xcd) || 6 || 213 || XF86Suspend&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|Home|#494949}}     || ☀▴ || ibm/hotkey HKEY 00000080 00001010 and video LCD0 00000086 00000000 || down: e0 54 e0 d4 e0 54 e0 d4 || 225 (double) (rop) || KEY_BRIGHTNESSUP (0xe1) || 4, 6 || 233 || XF86MonBrightnessUp&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|End|#494949}}      || ☀▾ || ibm/hotkey HKEY 00000080 00001011 and  video LCD0 00000087 00000000 || down: e0 4c e0 cc e0 4c e0 cc || 224 (double) (rop) || KEY_BRIGHTNESSDOWN (0xe0) || 4, 6 || 232 || XF86MonBrightnessDown&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|PgUp|#494949}}     || (illuminating overhead lamp symbol) || (none) || (none) || (none) || (none) || (none) || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|Space|#494949}}    || [&amp;amp;#x1F50D;+] (screen with magnifying glass symbol and plus sign, i.e., &amp;quot;zoom&amp;quot; symbol) || ibm/hotkey HKEY 00000080 00001014 || (none) || 372 (rop) || KEY_ZOOM (0x174) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|→|#494949}}        || &amp;amp;#x23ED; (barred right arrowhead, i.e., &amp;quot;next&amp;quot; symbol) || (none) || down: e0 19&amp;lt;br&amp;gt;up: e0 99 || 163 || KEY_NEXTSONG (0xa3) || 3 || 171 || XF86AudioNext&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|↓|#494949}}        || &amp;amp;#x23EF; (right arrowhead, double bar, i.e., &amp;quot;play/pause&amp;quot; symbol) || (none) || down: e0 22&amp;lt;br&amp;gt;up: e0 a2 || 164 || KEY_PLAYPAUSE (0xa4) || 3 || 172 || XF86AudioPlay&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|←|#494949}}        || &amp;amp;#x23EE; (barred left arrowhead, i.e., &amp;quot;prev&amp;quot; symbol) || (none) || down: e0 10&amp;lt;br&amp;gt;up: e0 90 || 165 || KEY_PREVIOUSSONG (0xa5) || 3 || 173 || XF86AudioPrev&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|↑|#494949}}        || ∎ (&amp;quot;stop play&amp;quot; symbol) || (none) || down: e0 24&amp;lt;br&amp;gt;up: e0 a4 || 166 || KEY_STOPCD (0xa6) || 3 || 174 || XF86AudioStop&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|◂ ⎗|#494949}} (left arrowhead, page icon) || || (none) || down: e0 6a&amp;lt;br&amp;gt;up: e0 ea || 158 || KEY_BACK (0x9e) || 3 || 166 || XF86Back&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|⎘ ▸|#494949}} (page icon, right arrowhead) || || (none) || down: e0 69&amp;lt;br&amp;gt;up: e0 e9 || 159 || KEY_FORWARD (0x9f) || 3 || 167 || XF86Forward&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
In the Linux key code column, &amp;quot;rop&amp;quot; means &amp;quot;release on press&amp;quot;, i.e., the release event is generated at the same time as the press event.&lt;br /&gt;
&lt;br /&gt;
The button on the UltraBase doesn't seem to generate any events visible to userspace.&lt;br /&gt;
&lt;br /&gt;
Input device numbers and types as reported by &amp;lt;tt&amp;gt;lsinput&amp;lt;/tt&amp;gt;:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
|+ (*) /dev/input/event&amp;lt;i&amp;gt;n&amp;lt;/i&amp;gt;&lt;br /&gt;
! n !! name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || &amp;quot;Lid Switch&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 1 || &amp;quot;Sleep Button&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 2 || &amp;quot;Power Button&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 3 || &amp;quot;AT Translated Set @ keyboard&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 4 || &amp;quot;Video Bus&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 5 || &amp;quot;Integrated Camera&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 6 || &amp;quot;ThinkPad Extra Buttons&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 7 || &amp;quot;SynPS/2 Synaptics TouchPad&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 8 || &amp;quot;TPPS/2 IBM TrackPoint&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Hotkey mask when the above table was compiled:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_mask&lt;br /&gt;
0x078dffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_all_mask&lt;br /&gt;
0x07ffffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_recommended_mask&lt;br /&gt;
0x078dffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_report_mode&lt;br /&gt;
1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Accessories ==&lt;br /&gt;
Accessories I purchased for this laptop:&lt;br /&gt;
* [[ThinkPad UltraBase Series 3]] with built-in [[Serial Ultrabay Slim]]&lt;br /&gt;
* [[Serial Ultrabay Slim DVD Multi IV Drive]]&lt;br /&gt;
* [[ThinkPad Mini Dock Series 3]] 433710U which comes with a 90W power supply&lt;br /&gt;
* 1.95Ah battery 42T4901&lt;br /&gt;
* 8.4Ah battery 42T4942&lt;br /&gt;
&lt;br /&gt;
== Configuration and solved problems ==&lt;br /&gt;
&lt;br /&gt;
=== Fingerprint reader ===&lt;br /&gt;
See [[How to enable integrated fingerprint reader with fprint|how to enable the integrated fingerprint reader with fprint]].&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.freedesktop.org/show_bug.cgi?id=11227 hotkey shortcomings] ===&lt;br /&gt;
(Updated November 2011 for Oneiric.)&lt;br /&gt;
&lt;br /&gt;
By default the &amp;quot;zoom&amp;quot; (Fn-Space) and &amp;quot;microphone-mute&amp;quot; (button next to the ThinkVantage button) hotkeys do nothing.&lt;br /&gt;
&lt;br /&gt;
'''Zoom''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module, kernel and &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; map the zoom key's ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 00001014&amp;lt;/tt&amp;gt;) to input event &amp;lt;tt&amp;gt;KEY_ZOOM&amp;lt;/tt&amp;gt; whose numerical value, 372, is greater than 255, the highest key-event code that X can handle.&lt;br /&gt;
&lt;br /&gt;
'''Micmute''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module and kernel generate an ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 0000101b&amp;lt;/tt&amp;gt;) for the microphone mute button but in releases earlier than precise this is not mapped to anything; in precise it is mapped to 256 which is also greater than 255, the highest that X can handle. Bug reported [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
The fault lies with X which can't handle key codes above 255.  But as discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/313514 here], it may be a long time before this gets fixed in X.&lt;br /&gt;
&lt;br /&gt;
There is a fairly easy workaround.&lt;br /&gt;
Install version 175 or later of the &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; package and do the following.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# sudo su&lt;br /&gt;
# mkdir /etc/udev/keymaps&lt;br /&gt;
# cp /lib/udev/keymaps/module-lenovo /etc/udev/keymaps&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now edit &amp;lt;tt&amp;gt;/etc/udev/keymaps/module-lenovo&amp;lt;/tt&amp;gt; so that 0x13 and 0x1A get mapped to &amp;lt;tt&amp;gt;search&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;prog2&amp;lt;/tt&amp;gt;, respectively (instead of &amp;lt;tt&amp;gt;zoom&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;micmute&amp;lt;/tt&amp;gt;, respectively).&lt;br /&gt;
&lt;br /&gt;
Then in System Settings | Keyboard | Shortcuts assign a behavior to the &amp;lt;tt&amp;gt;XF86Search&amp;lt;/tt&amp;gt; event, the X event corresponding to &amp;lt;tt&amp;gt;search&amp;lt;/tt&amp;gt;. This behavior will be invoked by Fn-Space.&lt;br /&gt;
&lt;br /&gt;
There is no built-in function for muting the microphone but it is straightforward to concoct one using &amp;lt;tt&amp;gt;amixer&amp;lt;/tt&amp;gt;.&lt;br /&gt;
In Keyboard | Shortcuts select Custom Shortcuts and press &amp;lt;tt&amp;gt;+&amp;lt;/tt&amp;gt; to create a new shortcut named &amp;quot;Microphone mute&amp;quot; whose command-content is the following.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sh -c &amp;quot;if amixer get Capture,0 | grep -q '\[on\]' ; then amixer -q set Capture,0 nocap ; else amixer -q set Capture,0 cap; fi&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Assign this to &amp;lt;tt&amp;gt;XF86Launch2&amp;lt;/tt&amp;gt; which is the X event corresponding to input event &amp;lt;tt&amp;gt;prog2&amp;lt;/tt&amp;gt;. This behavior will be invoked by the microphone-mute key.&lt;br /&gt;
&lt;br /&gt;
[Added June 2013:] This will [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 supposedly] be fixed for Ubuntu 13.10 (Saucy). The microphone-mute ACPI event will be mapped to F20 instead of prog2.&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/486154 the known no-system-beep problem] ===&lt;br /&gt;
As I described in more detail [[Installing Ubuntu 9.10 (Karmic Koala) on a ThinkPad X61#Partially solved problem: No beep|earlier]]:&lt;br /&gt;
* Create &amp;lt;tt&amp;gt;.xprofile&amp;lt;/tt&amp;gt; containing&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and at &amp;lt;tt&amp;gt;desktop | gnome | peripherals | keyboard&amp;lt;/tt&amp;gt; change the value of &amp;lt;tt&amp;gt;bell_mode&amp;lt;/tt&amp;gt; from &amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt; to &amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* If the default bell volume of 50 (percent) is not loud enough, add a line like the following to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
xset b 100&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* To cause terminal bells to ring also in non-X terminals (e.g., the console terminal), comment out the &amp;lt;tt&amp;gt;blacklist pcspkr&amp;lt;/tt&amp;gt; line in &amp;lt;tt&amp;gt;/etc/modprobe.d/blacklist.conf&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Fix for &amp;quot;[drm:i915_hangcheck_ring_idle] *ERROR* Hangcheck timer elapsed... blt ring idle...&amp;quot; problem ===&lt;br /&gt;
To fix [https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/761065 this known problem] upgrade the kernel: install the &amp;lt;tt&amp;gt;linux-image-2.6.38-11-generic&amp;lt;/tt&amp;gt; package and reboot.&lt;br /&gt;
&lt;br /&gt;
=== [[Tp smapi|tp-smapi]] loading ===&lt;br /&gt;
First, it is as usual necessary to add&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tp-smapi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt; so that &amp;lt;tt&amp;gt;modoprobe&amp;lt;/tt&amp;gt; will attempt to load the module at boot time.&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
Having loaded &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; do:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Result:&lt;br /&gt;
&lt;br /&gt;
[[Image:ThinkPad_X220_running_hdaps-gl.jpg|Tilted ThinkPad X220 running hdaps-gl|300px]]&lt;br /&gt;
&lt;br /&gt;
=== Miscellaneous configuration ===&lt;br /&gt;
* Having installed bare Ubuntu I had to run &amp;lt;tt&amp;gt;tasksel&amp;lt;/tt&amp;gt; and select at least &amp;quot;Ubuntu Desktop&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* In order to allow NetworkManager to manage eth0 I had to comment out the &amp;quot;eth0&amp;quot; stanza in &amp;lt;tt&amp;gt;/etc/network/interfaces&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* I used System Settings | Ubuntu Software Center to install &amp;lt;tt&amp;gt;ccsm&amp;lt;/tt&amp;gt; (&amp;quot;Advanced Desktop Effects Settings&amp;quot;) so I could enable Wobbly Windows and so I can initiate window resize with Alt+Button3 which is easier than the default Alt-Button2 (i.e., Alt-scrollwheelbutton).&lt;br /&gt;
&lt;br /&gt;
* Add PPAs to apt sources list for additional indicators&lt;br /&gt;
&lt;br /&gt;
=== Unity automaximizes ===&lt;br /&gt;
To disable this (annoying) behavior, run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
== Ex-problems ==&lt;br /&gt;
=== Suspend causes kernel panic ===&lt;br /&gt;
&amp;quot;Suspend-to-RAM and brightness control of the display work with kernel &amp;gt;= 3.0-rc6&amp;quot; according to [[Installing Gentoo on a ThinkPad X220|this fellow]].&lt;br /&gt;
&lt;br /&gt;
Since I upgraded to kernel 2.6.38-11-generic I haven't had any kernel panics on suspend.&lt;br /&gt;
&lt;br /&gt;
=== TPM can't be used ===&lt;br /&gt;
To try it out, install &amp;lt;tt&amp;gt;tpm-tools&amp;lt;/tt&amp;gt;.  &lt;br /&gt;
&lt;br /&gt;
When I first tried it, the &amp;lt;tt&amp;gt;tpm_version&amp;lt;/tt&amp;gt; program failed with &amp;quot;Communication failure&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
But now it prints this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  TPM 1.2 Version Info:&lt;br /&gt;
  Chip Version:        1.2.8.32&lt;br /&gt;
  Spec Level:          2&lt;br /&gt;
  Errata Revision:     3&lt;br /&gt;
  TPM Vendor ID:       STM &lt;br /&gt;
  TPM Version:         01010000&lt;br /&gt;
  Manufacturer Info:   53544d20&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Presumably the new kernel fixed this.&lt;br /&gt;
&lt;br /&gt;
=== memtest86+ didn't work ===&lt;br /&gt;
&lt;br /&gt;
Upgrading to the oneiric version, v4.20, fixed this.&lt;br /&gt;
&lt;br /&gt;
=== Multiple monitors ===&lt;br /&gt;
Configuring an extended desktop over two monitors led to malfunction.  Side-by-side worked, one above the other did not.&lt;br /&gt;
&lt;br /&gt;
In natty the solution was just to avoid the layouts that caused the malfunction.&lt;br /&gt;
&lt;br /&gt;
The problems appear to have been completely solved in Ubuntu 11.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
=== Bluetooth-related crashes ===&lt;br /&gt;
Switching bluetooth on or off either using the indicator or Fn-F5 sometimes crashed the machine.&lt;br /&gt;
&lt;br /&gt;
I haven't seen this problem in Ubuntu 10.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
=== [[Tp smapi|tp-smapi]] loading problem ===&lt;br /&gt;
The distributed &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; modules didn't load on my X220&lt;br /&gt;
and &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; reported the EC firmware number as &amp;quot;unknown&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The BIOS setup program reports this information about the BIOS:&lt;br /&gt;
* Model 42902WG&lt;br /&gt;
* UEFI BIOS 8DET46WW (1.16) 2011-05-18&lt;br /&gt;
* Embedded Controller 8DHT23WW (1.07)&lt;br /&gt;
&lt;br /&gt;
This problem was fixed in &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; version 0.41-1.  As of 7 August 2011 &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; is available in Debian unstable (Ubuntu uses Debian &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; packages with no changes) and this is the version in Ubuntu 11.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
Output from &amp;lt;tt&amp;gt;dmesg&amp;lt;/tt&amp;gt; after &amp;lt;tt&amp;gt;modprobe&amp;lt;/tt&amp;gt;ing &amp;lt;tt&amp;gt;thinkpad-ec&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[  714.842090] thinkpad_ec: thinkpad_ec 0.41 loaded.&lt;br /&gt;
[  721.983409] tp_smapi 0.41 loading...&lt;br /&gt;
[  721.984742] tp_smapi successfully loaded (smapi_port=0xb2).&lt;br /&gt;
[  729.462533] hdaps: LENOVO ThinkPad X220 detected, setting orientation 4&lt;br /&gt;
[  729.462894] hdaps: initial mode latch is 0x05&lt;br /&gt;
[  729.463022] hdaps: setting ec_rate=250, filter_order=2&lt;br /&gt;
[  729.463242] hdaps: device successfully initialized.&lt;br /&gt;
[  729.463799] input: ThinkPad HDAPS joystick emulation as /devices/virtual/input/input15&lt;br /&gt;
[  729.464101] input: ThinkPad HDAPS accelerometer data as /devices/virtual/input/input16&lt;br /&gt;
[  729.464342] hdaps: driver successfully loaded.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Modinfo:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ modinfo tp-smapi&lt;br /&gt;
filename:       /lib/modules/2.6.38-11-generic/updates/dkms/tp_smapi.ko&lt;br /&gt;
license:        GPL&lt;br /&gt;
version:        0.41&lt;br /&gt;
description:    ThinkPad SMAPI Support&lt;br /&gt;
author:         Shem Multinymous&lt;br /&gt;
srcversion:     B6841670771B2FF5222BFFD&lt;br /&gt;
depends:        thinkpad_ec&lt;br /&gt;
vermagic:       2.6.38-11-generic SMP mod_unload modversions &lt;br /&gt;
parm:           debug:Debug level (0=off, 1=on) (int)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Remaining problems ==&lt;br /&gt;
&lt;br /&gt;
=== Indicator lamp on microphone mute key doesn't work ===&lt;br /&gt;
The problem has been discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/linux/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
== Comparison with [[Installing Ubuntu 10.10 (Maverick Meerkat) on a ThinkPad X220|a Ubuntu 10.10 user's experience]] ==&lt;br /&gt;
* (improvements)&lt;br /&gt;
** I didn't have to do anything special to have the &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module loaded or use special keys&lt;br /&gt;
** The mute-microphone button can be made to work as described above&lt;br /&gt;
** Both left and right microphones are seen&lt;br /&gt;
** I have no difficulties with the fans&lt;br /&gt;
** I have no difficulties with SD cards&lt;br /&gt;
** The &amp;quot;Hangcheck timer elapsed&amp;quot; problem has been fixed in a new kernel version, as described above&lt;br /&gt;
&lt;br /&gt;
== Things to remember ==&lt;br /&gt;
To get Google Earth to work you have to do&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libgl1-mesa-glx:i386&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Ubuntu 11.04]][[Category:Ubuntu 11.10]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_11.04_(Natty_Narwhal)_on_a_ThinkPad_X220&amp;diff=54725</id>
		<title>Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_11.04_(Natty_Narwhal)_on_a_ThinkPad_X220&amp;diff=54725"/>
		<updated>2013-06-25T19:05:49Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: /* Fix for hotkey shortcomings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 11.04 (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
I have since upgraded to Ubuntu 11.10 (Oneiric Ocelot) and have updated some of the information below accordingly.&lt;br /&gt;
&lt;br /&gt;
== Netboot ==&lt;br /&gt;
As a source of network installation files I made use of another GNU/Linux computer on my home LAN&lt;br /&gt;
which is connected to the Internet through a familiar ADSL-modem/gateway/router/caching nameserver/DHCP server (call it &amp;quot;the gateway&amp;quot;) at address 172.19.3.1.&lt;br /&gt;
The gateway's DHCP server issues leases in the range 172.19.3.2 to 172.19.3.100.&lt;br /&gt;
&lt;br /&gt;
First I set up the &amp;quot;source&amp;quot; machine, in my case one which already also had Ubuntu 11.04 installed.&lt;br /&gt;
It has address 172.19.3.7 (assigned to it by the gateway's DHCP server).&lt;br /&gt;
For the X220 to boot from it the machine needs to run a DHCP server and a TFTP server.&lt;br /&gt;
The DHCP server serves only this special purpose since, as I mentioned, the gateway is the network's main DHCP server.&lt;br /&gt;
The source's DHCP server must be so configured that it doesn't conflict with the existing DHCP server.&lt;br /&gt;
&lt;br /&gt;
Install the &amp;lt;tt&amp;gt;isc-dhcp-server&amp;lt;/tt&amp;gt; package and edit &amp;lt;tt&amp;gt;/etc/dhcp/dhcpd.conf&amp;lt;/tt&amp;gt; using the following as a model.&lt;br /&gt;
I am not sure that every line is needed, but this worked for me.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ddns-update-style none;&lt;br /&gt;
option domain-name-servers 172.19.3.1;  # This is the address of my gateway&lt;br /&gt;
option routers 172.19.3.1;              # This is the address of my gateway&lt;br /&gt;
option subnet-mask 255.255.0.0;         # This is the netmask of my home network&lt;br /&gt;
default-lease-time 600;&lt;br /&gt;
max-lease-time 7200;&lt;br /&gt;
allow booting;&lt;br /&gt;
allow bootp;&lt;br /&gt;
&lt;br /&gt;
subnet 172.19.3.0 netmask 255.255.255.0 {&lt;br /&gt;
  range 172.19.3.220 172.19.3.229;      # This is a range separate from the one used by the gateway and includes the address below&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
group {&lt;br /&gt;
  next-server 172.19.3.7;               # This is the address of the &amp;quot;source&amp;quot;&lt;br /&gt;
  host trawsfynydd {                    # 'trawsfynydd' is the name I chose for my X220&lt;br /&gt;
    hardware ethernet f0:de:f1:6b:22:bf; # This is the Ethernet address of the X220&lt;br /&gt;
    fixed-address 172.19.3.220;         # This is an address in the range as defined above&lt;br /&gt;
    filename &amp;quot;/pxelinux.0&amp;quot;;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now install the &amp;lt;tt&amp;gt;tftpd-hpa&amp;lt;/tt&amp;gt; package, download the network installation tarball and untar it into the location whence &amp;lt;tt&amp;gt;tftpd&amp;lt;/tt&amp;gt; serves files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /tmp&lt;br /&gt;
$ wget http://archive.ubuntu.com/ubuntu/dists/natty/main/installer-amd64/current/images/netboot/netboot.tar.gz&lt;br /&gt;
$ cd /var/lib/tftpboot&lt;br /&gt;
$ sudo tar zxf /tmp/netboot.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second set up the X220 for PXE (Pre-boot eXecution Environment).&lt;br /&gt;
* Switch on the X220 and press F1.  ThinkPad Setup starts.&lt;br /&gt;
* Set Config | Network | Ethernet LAN Option ROM to &amp;quot;Enabled&amp;quot;.&lt;br /&gt;
* Select Startup | Boot; select &amp;quot;PCI LAN IBA GE Slot...&amp;quot; and use the [+] key to move it to the top of the boot priority order&lt;br /&gt;
* Press F10 to save and exit.&lt;br /&gt;
&lt;br /&gt;
Voilà, the X220 boots the Ubuntu installer.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
I won't describe the Ubuntu installer.&lt;br /&gt;
I'll just mention some little problems I had.&lt;br /&gt;
&lt;br /&gt;
''First'', when it came time to resize the existing (ntfs) partition the partitioner asked what size I would like for &amp;quot;this partition&amp;quot;.  Did it mean the to-be-resized ntfs partition or the new ext4 partition?  &lt;br /&gt;
&lt;br /&gt;
Turns out it meant: the to-be-resized ntfs partition, so the suggested &amp;quot;max&amp;quot; selection was the opposite of what I wanted.&lt;br /&gt;
&lt;br /&gt;
''Second'', when I selected (only) the &amp;quot;Ubuntu desktop&amp;quot; task the installation reported failure without explaining what had gone wrong.&lt;br /&gt;
&lt;br /&gt;
I de-selected all tasks and the installation succeeded.&lt;br /&gt;
&lt;br /&gt;
''Third'', after reboot the screen came up black.&lt;br /&gt;
&lt;br /&gt;
I pressed CTRL-ALT-F1 to get the system console so I could log in.&lt;br /&gt;
&lt;br /&gt;
After logging in I ran &amp;lt;tt&amp;gt;tasksel&amp;lt;/tt&amp;gt; and installed &amp;quot;Ubuntu desktop&amp;quot; and this time no failure was reported.&lt;br /&gt;
&lt;br /&gt;
== Information ==&lt;br /&gt;
&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
&lt;br /&gt;
Originally:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BIOS Version: 8DET46WW (1.16)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
From Windows 7 I ran Lenovo ThinkVantage Tools to upgrade the BIOS.  Now:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BIOS Version: 8DET51WW (1.21)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== dmidecode ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# dmidecode -s system-manufacturer&lt;br /&gt;
LENOVO&lt;br /&gt;
# dmidecode -s system-product-name&lt;br /&gt;
42902WG&lt;br /&gt;
# dmidecode -s system-version&lt;br /&gt;
ThinkPad X220&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== /proc/cpuinfo ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
processor	: 0&lt;br /&gt;
vendor_id	: GenuineIntel&lt;br /&gt;
cpu family	: 6&lt;br /&gt;
model		: 42&lt;br /&gt;
model name	: Intel(R) Core(TM) i5-2540M CPU @ 2.60GHz&lt;br /&gt;
stepping	: 7&lt;br /&gt;
cpu MHz		: 800.000&lt;br /&gt;
cache size	: 3072 KB&lt;br /&gt;
physical id	: 0&lt;br /&gt;
siblings	: 4&lt;br /&gt;
core id		: 0&lt;br /&gt;
cpu cores	: 2&lt;br /&gt;
apicid		: 0&lt;br /&gt;
initial apicid	: 0&lt;br /&gt;
fpu		: yes&lt;br /&gt;
fpu_exception	: yes&lt;br /&gt;
cpuid level	: 13&lt;br /&gt;
wp		: yes&lt;br /&gt;
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 x2apic popcnt aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dts tpr_shadow vnmi flexpriority ept vpid&lt;br /&gt;
bogomips	: 5182.27&lt;br /&gt;
clflush size	: 64&lt;br /&gt;
cache_alignment	: 64&lt;br /&gt;
address sizes	: 36 bits physical, 48 bits virtual&lt;br /&gt;
power management:&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== lspci ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09)&lt;br /&gt;
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)&lt;br /&gt;
00:16.0 Communication controller: Intel Corporation 6 Series Chipset Family MEI Controller #1 (rev 04)&lt;br /&gt;
00:19.0 Ethernet controller: Intel Corporation 82579LM Gigabit Network Connection (rev 04)&lt;br /&gt;
00:1a.0 USB Controller: Intel Corporation 6 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)&lt;br /&gt;
00:1b.0 Audio device: Intel Corporation 6 Series Chipset Family High Definition Audio Controller (rev 04)&lt;br /&gt;
00:1c.0 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 1 (rev b4)&lt;br /&gt;
00:1c.1 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 2 (rev b4)&lt;br /&gt;
00:1c.3 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 4 (rev b4)&lt;br /&gt;
00:1c.4 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 5 (rev b4)&lt;br /&gt;
00:1d.0 USB Controller: Intel Corporation 6 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)&lt;br /&gt;
00:1f.0 ISA bridge: Intel Corporation 6 Series Chipset Family LPC Controller (rev 04)&lt;br /&gt;
00:1f.2 SATA controller: Intel Corporation 6 Series Chipset Family 6 port SATA AHCI Controller (rev 04)&lt;br /&gt;
00:1f.3 SMBus: Intel Corporation 6 Series Chipset Family SMBus Controller (rev 04)&lt;br /&gt;
03:00.0 Network controller: Intel Corporation Centrino Advanced-N 6205 (rev 34)&lt;br /&gt;
0d:00.0 System peripheral: Ricoh Co Ltd Device e823 (rev 04)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== lsusb ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub&lt;br /&gt;
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub&lt;br /&gt;
Bus 001 Device 006: ID 04f2:b217 Chicony Electronics Co., Ltd &lt;br /&gt;
Bus 001 Device 005: ID 0a5c:217f Broadcom Corp. Bluetooth Controller&lt;br /&gt;
Bus 001 Device 004: ID 147e:2016 Upek Biometric Touchchip/Touchstrip Fingerprint Sensor&lt;br /&gt;
Bus 001 Device 003: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub&lt;br /&gt;
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub&lt;br /&gt;
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Key table ===&lt;br /&gt;
This table was prepared ''before'' keys were remapped as discussed elsewhere on this page.&lt;br /&gt;
&lt;br /&gt;
References:&lt;br /&gt;
* [https://wiki.ubuntu.com/Hotkeys Hotkey architecture in Ubuntu]&lt;br /&gt;
* [https://wiki.ubuntu.com/Hotkeys/Troubleshooting Hotkey troubleshooting instructions]&lt;br /&gt;
* &amp;lt;tt&amp;gt;/usr/include/linux/input.h&amp;lt;/tt&amp;gt; -- list of Linux key codes&lt;br /&gt;
* [[Default meanings of special keys]]&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
! Key combination !! Extra function symbol !! ACPI event&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;acpi_listen&amp;lt;/tt&amp;gt;) !! Scan code&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;showkey&amp;amp;nbsp;-s&amp;lt;/tt&amp;gt;)&amp;lt;br&amp;gt;&amp;lt;i&amp;gt;(hex)&amp;lt;/i&amp;gt; !! Linux key code&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;showkey&amp;amp;nbsp;-k&amp;lt;/tt&amp;gt;) !! Input event&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;input-events&amp;lt;/tt&amp;gt;) !! ... on input device(*) !! X KeyCode&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;xev&amp;lt;/tt&amp;gt;) !! Keyboard Shortcuts name&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F4E2;&amp;amp;#x20E5;}} (loudspeaker icon with stroke) || || (none) || down: e0 20&amp;lt;br&amp;gt;up: e0 a0 || 113 || KEY_MIN_INTERESTING (0x71) || 3 || 121 || XF86AudioMute&lt;br /&gt;
|-&lt;br /&gt;
| {{key|−&amp;amp;#x1F4E2;}} (minus sign, loudspeaker icon) || || (none) || down: e0 2e&amp;lt;br&amp;gt;up: e0 ae || 114 || KEY_VOLUMEDOWN (0x72) || 3 ||122 || XF86AudioLowerVolume&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F4E2;+}} (loudspeaker icon, plus sign)  || || (none) || down: e0 30&amp;lt;br&amp;gt;up: e0 b0 || 115 || KEY_VOLUMEUP (0x73) || 3 || 123 || XF86AudioRaiseVolume&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F3A4;&amp;amp;#x20E5;}} (microphone icon with stroke)  || || ibm/hotkey HKEY 00000080 0000101b || (none) || 240 (rop) || KEY_UNKNOWN (0xf0) || 6 || 248 || &amp;quot;∅&amp;quot; (sic)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|ThinkVantage|#495988}}                   || || ibm/hotkey HKEY 00000080 00001018 || down: e0 1f e0 9f || 148 (rop) || KEY_PROG1 (0x94) || 6 || 156 || XF86Launch1&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}                             || || (none) || up: e0 63 e0 e3 || 143 || KEY_WAKEUP (0x8f) || 3 || 151 || XF86WakeUp&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F1|#494949}}       || || ibm/hotkey HKEY 00000080 00001001 || (none) || 466 (rop) || KEY_FN_F1 (0x1d2) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F2|#494949}}       || &amp;amp;#x1F512; (padlock symbol) || ibm/hotkey HKEY 00000080 00001002 || down: e0 12 e0 92 || 152 (rop) || KEY_SCREENLOCK (0x98) || 6 || 160 || XF86ScreenSaver&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F3|#494949}}       || &amp;amp;#x1F50B; (battery symbol) || ibm/hotkey HKEY 00000080 00001003 || down: e0 71 e0 f1 || 236 (rop) || KEY_BATTERY (0xec) || 6 || 244 || XF86Battery&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F4|#494949}}       || ☾ || ibm/hotkey HKEY 00000080 00001004 || down: e0 5f e0 df&amp;lt;br&amp;gt;(but sometimes nothing) || 142 (rop) || KEY_SLEEP (0x8e) || 6 || 150 || XF86Sleep&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F5|#494949}}       || &amp;amp;#x2E28;&amp;amp;#x1F4BB;&amp;amp;#x2E29; (radiating computer symbol) || ibm/hotkey HKEY 00000080 00001005 || down: e0 73 e0 f3 || 238 (rop) || KEY_WLAN (0xee) || 6 || 246 || XF86WLAN&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F6|#494949}}       || (camera, headset) || ibm/hotkey HKEY 00000080 00001006 || down: e0 3b e0 bb || 212 (rop) || KEY_CAMERA (0xd4) || 6 || 220 || XF86WebCam&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F7|#494949}}       || &amp;amp;#x1F4BB;&amp;amp;#x239A; (computer symbol, screen symbol) || ibm/hotkey HKEY 00000080 00001007 || down: e0 56 e0 d6 || 227 (rop) || KEY_SWITCHVIDEOMODE (0xe3) || 6 || 235 || XF86Display&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F8|#494949}}       || (trackpoint symbol, vertical bar, trackpad symbol) || ibm/hotkey HKEY 00000080 00001008 || down: e0 74 e0 f4 || 191 (rop) || KEY_F21 (0xbf) || 6 || 199 || XF86TouchpadToggle&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F9|#494949}}       || || ibm/hotkey HKEY 00000080 00001009 || down: 6f ef || 194 (rop) || KEY_F24 (0xc2) || 6 || 202 || &amp;quot;Ê&amp;quot; (sic)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F10|#494949}}      || || (none) || (none) || || (none) || || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F11|#494949}}      || || ibm/hotkey HKEY 00000080 0000100b || (none) || 476 (rop) || KEY_FN_F11 (0x1dc) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F12|#494949}}      || &amp;amp;#x1F4BB;&amp;amp;nbsp;&amp;amp;#x25B6;&amp;amp;#x274D; (computer symbol, right arrowhead, diskpack symbol) || ibm/hotkey HKEY 00000080 0000100c || down: e0 25 e0 a5&amp;lt;br&amp;gt;(but sometimes nothing) || 205 (rop) || KEY_SUSPEND (0xcd) || 6 || 213 || XF86Suspend&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|Home|#494949}}     || ☀▴ || ibm/hotkey HKEY 00000080 00001010 and video LCD0 00000086 00000000 || down: e0 54 e0 d4 e0 54 e0 d4 || 225 (double) (rop) || KEY_BRIGHTNESSUP (0xe1) || 4, 6 || 233 || XF86MonBrightnessUp&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|End|#494949}}      || ☀▾ || ibm/hotkey HKEY 00000080 00001011 and  video LCD0 00000087 00000000 || down: e0 4c e0 cc e0 4c e0 cc || 224 (double) (rop) || KEY_BRIGHTNESSDOWN (0xe0) || 4, 6 || 232 || XF86MonBrightnessDown&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|PgUp|#494949}}     || (illuminating overhead lamp symbol) || (none) || (none) || (none) || (none) || (none) || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|Space|#494949}}    || [&amp;amp;#x1F50D;+] (screen with magnifying glass symbol and plus sign, i.e., &amp;quot;zoom&amp;quot; symbol) || ibm/hotkey HKEY 00000080 00001014 || (none) || 372 (rop) || KEY_ZOOM (0x174) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|→|#494949}}        || &amp;amp;#x23ED; (barred right arrowhead, i.e., &amp;quot;next&amp;quot; symbol) || (none) || down: e0 19&amp;lt;br&amp;gt;up: e0 99 || 163 || KEY_NEXTSONG (0xa3) || 3 || 171 || XF86AudioNext&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|↓|#494949}}        || &amp;amp;#x23EF; (right arrowhead, double bar, i.e., &amp;quot;play/pause&amp;quot; symbol) || (none) || down: e0 22&amp;lt;br&amp;gt;up: e0 a2 || 164 || KEY_PLAYPAUSE (0xa4) || 3 || 172 || XF86AudioPlay&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|←|#494949}}        || &amp;amp;#x23EE; (barred left arrowhead, i.e., &amp;quot;prev&amp;quot; symbol) || (none) || down: e0 10&amp;lt;br&amp;gt;up: e0 90 || 165 || KEY_PREVIOUSSONG (0xa5) || 3 || 173 || XF86AudioPrev&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|↑|#494949}}        || ∎ (&amp;quot;stop play&amp;quot; symbol) || (none) || down: e0 24&amp;lt;br&amp;gt;up: e0 a4 || 166 || KEY_STOPCD (0xa6) || 3 || 174 || XF86AudioStop&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|◂ ⎗|#494949}} (left arrowhead, page icon) || || (none) || down: e0 6a&amp;lt;br&amp;gt;up: e0 ea || 158 || KEY_BACK (0x9e) || 3 || 166 || XF86Back&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|⎘ ▸|#494949}} (page icon, right arrowhead) || || (none) || down: e0 69&amp;lt;br&amp;gt;up: e0 e9 || 159 || KEY_FORWARD (0x9f) || 3 || 167 || XF86Forward&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
In the Linux key code column, &amp;quot;rop&amp;quot; means &amp;quot;release on press&amp;quot;, i.e., the release event is generated at the same time as the press event.&lt;br /&gt;
&lt;br /&gt;
The button on the UltraBase doesn't seem to generate any events visible to userspace.&lt;br /&gt;
&lt;br /&gt;
Input device numbers and types as reported by &amp;lt;tt&amp;gt;lsinput&amp;lt;/tt&amp;gt;:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
|+ (*) /dev/input/event&amp;lt;i&amp;gt;n&amp;lt;/i&amp;gt;&lt;br /&gt;
! n !! name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || &amp;quot;Lid Switch&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 1 || &amp;quot;Sleep Button&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 2 || &amp;quot;Power Button&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 3 || &amp;quot;AT Translated Set @ keyboard&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 4 || &amp;quot;Video Bus&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 5 || &amp;quot;Integrated Camera&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 6 || &amp;quot;ThinkPad Extra Buttons&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 7 || &amp;quot;SynPS/2 Synaptics TouchPad&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 8 || &amp;quot;TPPS/2 IBM TrackPoint&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Hotkey mask when the above table was compiled:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_mask&lt;br /&gt;
0x078dffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_all_mask&lt;br /&gt;
0x07ffffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_recommended_mask&lt;br /&gt;
0x078dffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_report_mode&lt;br /&gt;
1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Accessories ==&lt;br /&gt;
Accessories I purchased for this laptop:&lt;br /&gt;
* [[ThinkPad UltraBase Series 3]] with built-in [[Serial Ultrabay Slim]]&lt;br /&gt;
* [[Serial Ultrabay Slim DVD Multi IV Drive]]&lt;br /&gt;
* [[ThinkPad Mini Dock Series 3]] 433710U which comes with a 90W power supply&lt;br /&gt;
* 1.95Ah battery 42T4901&lt;br /&gt;
* 8.4Ah battery 42T4942&lt;br /&gt;
&lt;br /&gt;
== Configuration and solved problems ==&lt;br /&gt;
&lt;br /&gt;
=== Fingerprint reader ===&lt;br /&gt;
See [[How to enable integrated fingerprint reader with fprint|how to enable the integrated fingerprint reader with fprint]].&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.freedesktop.org/show_bug.cgi?id=11227 hotkey shortcomings] ===&lt;br /&gt;
(Updated November 2011 for Oneiric.)&lt;br /&gt;
&lt;br /&gt;
By default the &amp;quot;zoom&amp;quot; (Fn-Space) and &amp;quot;microphone-mute&amp;quot; (button next to the ThinkVantage button) hotkeys do nothing.&lt;br /&gt;
&lt;br /&gt;
'''Zoom''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module, kernel and &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; map the zoom key's ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 00001014&amp;lt;/tt&amp;gt;) to input event &amp;lt;tt&amp;gt;KEY_ZOOM&amp;lt;/tt&amp;gt; whose numerical value, 372, is greater than 255, the highest key-event code that X can handle.&lt;br /&gt;
&lt;br /&gt;
'''Micmute''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module and kernel generate an ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 0000101b&amp;lt;/tt&amp;gt;) for the microphone mute button but in releases earlier than precise this is not mapped to anything; in precise it is mapped to 256 which is also greater than 255, the highest that X can handle. Bug reported [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
The fault lies with X which can't handle key codes above 255.  But as discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/313514 here], it may be a long time before this gets fixed in X.&lt;br /&gt;
&lt;br /&gt;
There is a fairly easy workaround.&lt;br /&gt;
Install version 175 or later of the &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; package and do the following.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# sudo su&lt;br /&gt;
# mkdir /etc/udev/keymaps&lt;br /&gt;
# cp /lib/udev/keymaps/module-lenovo /etc/udev/keymaps&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now edit &amp;lt;tt&amp;gt;/etc/udev/keymaps/module-lenovo&amp;lt;/tt&amp;gt; so that 0x13 and 0x1A get mapped to &amp;lt;tt&amp;gt;search&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;prog2&amp;lt;/tt&amp;gt;, respectively (instead of &amp;lt;tt&amp;gt;zoom&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;micmute&amp;lt;/tt&amp;gt;, respectively).&lt;br /&gt;
&lt;br /&gt;
Then in System Settings | Keyboard | Shortcuts assign a behavior to the &amp;lt;tt&amp;gt;XF86Search&amp;lt;/tt&amp;gt; event, the X event corresponding to &amp;lt;tt&amp;gt;search&amp;lt;/tt&amp;gt;. This behavior will be invoked by Fn-Space.&lt;br /&gt;
&lt;br /&gt;
There is no built-in function for muting the microphone but it is straightforward to concoct one using &amp;lt;tt&amp;gt;amixer&amp;lt;/tt&amp;gt;.&lt;br /&gt;
In Keyboard | Shortcuts select Custom Shortcuts and press &amp;lt;tt&amp;gt;+&amp;lt;/tt&amp;gt; to create a new shortcut named &amp;quot;Microphone mute&amp;quot; whose command-content is the following.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sh -c &amp;quot;if amixer get Capture,0 | grep -q '\[on\]' ; then amixer -q set Capture,0 nocap ; else amixer -q set Capture,0 cap; fi&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Assign this to &amp;lt;tt&amp;gt;XF86Launch2&amp;lt;/tt&amp;gt; which is the X event corresponding to input event &amp;lt;tt&amp;gt;prog2&amp;lt;/tt&amp;gt;. This behavior will be invoked by the microphone-mute key.&lt;br /&gt;
&lt;br /&gt;
[Added June 2013:] This will [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 supposedly] be fixed for [[Ubuntu 13.10|Saucy]].&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/486154 the known no-system-beep problem] ===&lt;br /&gt;
As I described in more detail [[Installing Ubuntu 9.10 (Karmic Koala) on a ThinkPad X61#Partially solved problem: No beep|earlier]]:&lt;br /&gt;
* Create &amp;lt;tt&amp;gt;.xprofile&amp;lt;/tt&amp;gt; containing&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and at &amp;lt;tt&amp;gt;desktop | gnome | peripherals | keyboard&amp;lt;/tt&amp;gt; change the value of &amp;lt;tt&amp;gt;bell_mode&amp;lt;/tt&amp;gt; from &amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt; to &amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* If the default bell volume of 50 (percent) is not loud enough, add a line like the following to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
xset b 100&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* To cause terminal bells to ring also in non-X terminals (e.g., the console terminal), comment out the &amp;lt;tt&amp;gt;blacklist pcspkr&amp;lt;/tt&amp;gt; line in &amp;lt;tt&amp;gt;/etc/modprobe.d/blacklist.conf&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Fix for &amp;quot;[drm:i915_hangcheck_ring_idle] *ERROR* Hangcheck timer elapsed... blt ring idle...&amp;quot; problem ===&lt;br /&gt;
To fix [https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/761065 this known problem] upgrade the kernel: install the &amp;lt;tt&amp;gt;linux-image-2.6.38-11-generic&amp;lt;/tt&amp;gt; package and reboot.&lt;br /&gt;
&lt;br /&gt;
=== [[Tp smapi|tp-smapi]] loading ===&lt;br /&gt;
First, it is as usual necessary to add&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tp-smapi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt; so that &amp;lt;tt&amp;gt;modoprobe&amp;lt;/tt&amp;gt; will attempt to load the module at boot time.&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
Having loaded &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; do:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Result:&lt;br /&gt;
&lt;br /&gt;
[[Image:ThinkPad_X220_running_hdaps-gl.jpg|Tilted ThinkPad X220 running hdaps-gl|300px]]&lt;br /&gt;
&lt;br /&gt;
=== Miscellaneous configuration ===&lt;br /&gt;
* Having installed bare Ubuntu I had to run &amp;lt;tt&amp;gt;tasksel&amp;lt;/tt&amp;gt; and select at least &amp;quot;Ubuntu Desktop&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* In order to allow NetworkManager to manage eth0 I had to comment out the &amp;quot;eth0&amp;quot; stanza in &amp;lt;tt&amp;gt;/etc/network/interfaces&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* I used System Settings | Ubuntu Software Center to install &amp;lt;tt&amp;gt;ccsm&amp;lt;/tt&amp;gt; (&amp;quot;Advanced Desktop Effects Settings&amp;quot;) so I could enable Wobbly Windows and so I can initiate window resize with Alt+Button3 which is easier than the default Alt-Button2 (i.e., Alt-scrollwheelbutton).&lt;br /&gt;
&lt;br /&gt;
* Add PPAs to apt sources list for additional indicators&lt;br /&gt;
&lt;br /&gt;
=== Unity automaximizes ===&lt;br /&gt;
To disable this (annoying) behavior, run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
== Ex-problems ==&lt;br /&gt;
=== Suspend causes kernel panic ===&lt;br /&gt;
&amp;quot;Suspend-to-RAM and brightness control of the display work with kernel &amp;gt;= 3.0-rc6&amp;quot; according to [[Installing Gentoo on a ThinkPad X220|this fellow]].&lt;br /&gt;
&lt;br /&gt;
Since I upgraded to kernel 2.6.38-11-generic I haven't had any kernel panics on suspend.&lt;br /&gt;
&lt;br /&gt;
=== TPM can't be used ===&lt;br /&gt;
To try it out, install &amp;lt;tt&amp;gt;tpm-tools&amp;lt;/tt&amp;gt;.  &lt;br /&gt;
&lt;br /&gt;
When I first tried it, the &amp;lt;tt&amp;gt;tpm_version&amp;lt;/tt&amp;gt; program failed with &amp;quot;Communication failure&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
But now it prints this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  TPM 1.2 Version Info:&lt;br /&gt;
  Chip Version:        1.2.8.32&lt;br /&gt;
  Spec Level:          2&lt;br /&gt;
  Errata Revision:     3&lt;br /&gt;
  TPM Vendor ID:       STM &lt;br /&gt;
  TPM Version:         01010000&lt;br /&gt;
  Manufacturer Info:   53544d20&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Presumably the new kernel fixed this.&lt;br /&gt;
&lt;br /&gt;
=== memtest86+ didn't work ===&lt;br /&gt;
&lt;br /&gt;
Upgrading to the oneiric version, v4.20, fixed this.&lt;br /&gt;
&lt;br /&gt;
=== Multiple monitors ===&lt;br /&gt;
Configuring an extended desktop over two monitors led to malfunction.  Side-by-side worked, one above the other did not.&lt;br /&gt;
&lt;br /&gt;
In natty the solution was just to avoid the layouts that caused the malfunction.&lt;br /&gt;
&lt;br /&gt;
The problems appear to have been completely solved in Ubuntu 11.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
=== Bluetooth-related crashes ===&lt;br /&gt;
Switching bluetooth on or off either using the indicator or Fn-F5 sometimes crashed the machine.&lt;br /&gt;
&lt;br /&gt;
I haven't seen this problem in Ubuntu 10.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
=== [[Tp smapi|tp-smapi]] loading problem ===&lt;br /&gt;
The distributed &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; modules didn't load on my X220&lt;br /&gt;
and &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; reported the EC firmware number as &amp;quot;unknown&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The BIOS setup program reports this information about the BIOS:&lt;br /&gt;
* Model 42902WG&lt;br /&gt;
* UEFI BIOS 8DET46WW (1.16) 2011-05-18&lt;br /&gt;
* Embedded Controller 8DHT23WW (1.07)&lt;br /&gt;
&lt;br /&gt;
This problem was fixed in &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; version 0.41-1.  As of 7 August 2011 &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; is available in Debian unstable (Ubuntu uses Debian &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; packages with no changes) and this is the version in Ubuntu 11.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
Output from &amp;lt;tt&amp;gt;dmesg&amp;lt;/tt&amp;gt; after &amp;lt;tt&amp;gt;modprobe&amp;lt;/tt&amp;gt;ing &amp;lt;tt&amp;gt;thinkpad-ec&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[  714.842090] thinkpad_ec: thinkpad_ec 0.41 loaded.&lt;br /&gt;
[  721.983409] tp_smapi 0.41 loading...&lt;br /&gt;
[  721.984742] tp_smapi successfully loaded (smapi_port=0xb2).&lt;br /&gt;
[  729.462533] hdaps: LENOVO ThinkPad X220 detected, setting orientation 4&lt;br /&gt;
[  729.462894] hdaps: initial mode latch is 0x05&lt;br /&gt;
[  729.463022] hdaps: setting ec_rate=250, filter_order=2&lt;br /&gt;
[  729.463242] hdaps: device successfully initialized.&lt;br /&gt;
[  729.463799] input: ThinkPad HDAPS joystick emulation as /devices/virtual/input/input15&lt;br /&gt;
[  729.464101] input: ThinkPad HDAPS accelerometer data as /devices/virtual/input/input16&lt;br /&gt;
[  729.464342] hdaps: driver successfully loaded.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Modinfo:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ modinfo tp-smapi&lt;br /&gt;
filename:       /lib/modules/2.6.38-11-generic/updates/dkms/tp_smapi.ko&lt;br /&gt;
license:        GPL&lt;br /&gt;
version:        0.41&lt;br /&gt;
description:    ThinkPad SMAPI Support&lt;br /&gt;
author:         Shem Multinymous&lt;br /&gt;
srcversion:     B6841670771B2FF5222BFFD&lt;br /&gt;
depends:        thinkpad_ec&lt;br /&gt;
vermagic:       2.6.38-11-generic SMP mod_unload modversions &lt;br /&gt;
parm:           debug:Debug level (0=off, 1=on) (int)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Remaining problems ==&lt;br /&gt;
&lt;br /&gt;
=== Indicator lamp on microphone mute key doesn't work ===&lt;br /&gt;
The problem has been discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/linux/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
== Comparison with [[Installing Ubuntu 10.10 (Maverick Meerkat) on a ThinkPad X220|a Ubuntu 10.10 user's experience]] ==&lt;br /&gt;
* (improvements)&lt;br /&gt;
** I didn't have to do anything special to have the &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module loaded or use special keys&lt;br /&gt;
** The mute-microphone button can be made to work as described above&lt;br /&gt;
** Both left and right microphones are seen&lt;br /&gt;
** I have no difficulties with the fans&lt;br /&gt;
** I have no difficulties with SD cards&lt;br /&gt;
** The &amp;quot;Hangcheck timer elapsed&amp;quot; problem has been fixed in a new kernel version, as described above&lt;br /&gt;
&lt;br /&gt;
== Things to remember ==&lt;br /&gt;
To get Google Earth to work you have to do&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libgl1-mesa-glx:i386&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Ubuntu 11.04]][[Category:Ubuntu 11.10]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=54600</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=54600"/>
		<updated>2013-05-16T07:50:05Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
Update: In October 2012 I upgraded to 12.10. Update: In May 2013 I upgraded to 13.04. This resulted in hangs on reboot. These were eliminated when I installed the latest kernel from the raring-proposed repo. See also Updates below.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default, Alt-Button2. Update: The upgrade to Ubuntu 12.10 reverted this setting to the default, so I had to set it again.&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers.d/local add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]].&lt;br /&gt;
&lt;br /&gt;
For Ubuntus prior to 12.10 add the &amp;quot;fingerprint&amp;quot; PPA as follows.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all Ubuntus...&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Change format of the date and time displayed on the menu bar to &amp;quot;&amp;lt;b&amp;gt;Tue 15 May 2012  14:09:11&amp;lt;/b&amp;gt;&amp;quot;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime time-format &amp;quot;'custom'&amp;quot;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime custom-time-format &amp;quot;'%a %d %b %Y  %H:%M:%S'&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]] [[Category: Ubuntu 12.10]] [[Category: Ubuntu 13.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Category:Ubuntu_13.10&amp;diff=54599</id>
		<title>Category:Ubuntu 13.10</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Category:Ubuntu_13.10&amp;diff=54599"/>
		<updated>2013-05-16T07:49:02Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: â†Created page with 'Ubuntu 13.10 (codenamed &amp;quot;Saucy Salamander&amp;quot;) is scheduled to be released on 17 October 2013.'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ubuntu 13.10 (codenamed &amp;quot;Saucy Salamander&amp;quot;) is scheduled to be released on 17 October 2013.&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Category:Ubuntu_13.04&amp;diff=54598</id>
		<title>Category:Ubuntu 13.04</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Category:Ubuntu_13.04&amp;diff=54598"/>
		<updated>2013-05-16T07:46:46Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ubuntu 13.04 (codenamed &amp;quot;Raring Ringtail&amp;quot;) was released on 25 April 2013.&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=54597</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=54597"/>
		<updated>2013-05-16T07:45:51Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: Start adding info about Ubuntu 13.04.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
Update: In October 2012 I upgraded to 12.10.  See &amp;quot;updates&amp;quot; below.&lt;br /&gt;
&lt;br /&gt;
Update: In May 2013 I upgraded to 13.04. This resulted in hangs on reboot. These were eliminated when I installed the latest kernel from the raring-proposed repo.  See &amp;quot;updates&amp;quot; below.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default, Alt-Button2. Update: The upgrade to Ubuntu 12.10 reverted this setting to the default, so I had to set it again.&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers.d/local add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]].&lt;br /&gt;
&lt;br /&gt;
For Ubuntus prior to 12.10 add the &amp;quot;fingerprint&amp;quot; PPA as follows.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all Ubuntus...&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Change format of the date and time displayed on the menu bar to &amp;quot;&amp;lt;b&amp;gt;Tue 15 May 2012  14:09:11&amp;lt;/b&amp;gt;&amp;quot;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime time-format &amp;quot;'custom'&amp;quot;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime custom-time-format &amp;quot;'%a %d %b %Y  %H:%M:%S'&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]] [[Category: Ubuntu 12.10]] [[Category: Ubuntu 13.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=54536</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=54536"/>
		<updated>2013-04-16T13:11:58Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
Update: In October 2010 I upgraded to 12.10.  See &amp;quot;updates&amp;quot; below.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default, Alt-Button2. Update: The upgrade to Ubuntu 12.10 reverted this setting to the default, so I had to set it again.&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers.d/local add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]].&lt;br /&gt;
&lt;br /&gt;
For Ubuntus prior to 12.10 add the &amp;quot;fingerprint&amp;quot; PPA as follows.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all Ubuntus...&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Change format of the date and time displayed on the menu bar to &amp;quot;&amp;lt;b&amp;gt;Tue 15 May 2012  14:09:11&amp;lt;/b&amp;gt;&amp;quot;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime time-format &amp;quot;'custom'&amp;quot;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime custom-time-format &amp;quot;'%a %d %b %Y  %H:%M:%S'&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]] [[Category: Ubuntu 12.10]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=54535</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=54535"/>
		<updated>2013-04-16T13:10:52Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
Update: In October 2010 I upgraded to 12.10.  See &amp;quot;updates&amp;quot; below.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default, Alt-Button2. Update: The upgrade to Ubuntu 12.10 reverted this setting to the default, so I had to set it again.&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers.d/local add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]].&lt;br /&gt;
&lt;br /&gt;
For Ubuntus prior to 12.10 add the &amp;quot;fingerprint&amp;quot; PPA as follows.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all Ubuntus...&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Change format of the date and time displayed on the menu bar to &amp;quot;Tue 16 May 2012  14:09:11&amp;quot;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime time-format &amp;quot;'custom'&amp;quot;&lt;br /&gt;
gsettings set com.canonical.indicator.datetime custom-time-format &amp;quot;'%a %d %b %Y  %H:%M:%S'&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]] [[Category: Ubuntu 12.10]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=54115</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=54115"/>
		<updated>2012-12-02T14:35:40Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
Update: In October 2010 I upgraded to 12.10.  See &amp;quot;updates&amp;quot; below.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default, Alt-Button2. Update: The upgrade to Ubuntu 12.10 reverted this setting to the default, so I had to set it again.&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers.d/local add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]].&lt;br /&gt;
&lt;br /&gt;
For Ubuntus prior to 12.10 add the &amp;quot;fingerprint&amp;quot; PPA as follows.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all Ubuntus...&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]] [[Category: Ubuntu 12.10]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=54100</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=54100"/>
		<updated>2012-11-21T16:43:44Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
Update: In October 2010 I upgraded to 12.10.  See &amp;quot;updates&amp;quot; below.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default, Alt-Button2. Update: The upgrade to Ubuntu 12.10 reverted this setting to the default, so I had to set it again.&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers.d/local add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]] [[Category: Ubuntu 12.10]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Category:Ubuntu_12.10&amp;diff=53958</id>
		<title>Category:Ubuntu 12.10</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Category:Ubuntu_12.10&amp;diff=53958"/>
		<updated>2012-10-22T16:26:35Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ubuntu 12.10 (codenamed &amp;quot;Quantal Quetzal&amp;quot;) was released 18 October 2012.&lt;br /&gt;
&lt;br /&gt;
[[Category:Ubuntu]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Category:Ubuntu_13.04&amp;diff=53957</id>
		<title>Category:Ubuntu 13.04</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Category:Ubuntu_13.04&amp;diff=53957"/>
		<updated>2012-10-22T16:26:23Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: â†Created page with 'Ubuntu 13.04 (codenamed &amp;quot;Raring Ringtail&amp;quot;) is scheduled to be released 18 April 2013.'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ubuntu 13.04 (codenamed &amp;quot;Raring Ringtail&amp;quot;) is scheduled to be released 18 April 2013.&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Category:Ubuntu_12.10&amp;diff=53956</id>
		<title>Category:Ubuntu 12.10</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Category:Ubuntu_12.10&amp;diff=53956"/>
		<updated>2012-10-22T16:23:52Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ubuntu 12.10 (codenamed &amp;quot;Quantal Quetzal&amp;quot;)was released 18 October 2012.&lt;br /&gt;
&lt;br /&gt;
[[Category:Ubuntu]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53955</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53955"/>
		<updated>2012-10-22T16:19:41Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
Update: In October 2010 I upgraded to 12.10.  See &amp;quot;updates&amp;quot; below.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default, Alt-Button2. Update: The upgrade to Ubuntu 12.10 reverted this setting to the default, so I had to set it again.&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]] [[Category: Ubuntu 12.10]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53954</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53954"/>
		<updated>2012-10-22T16:19:23Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
Update: In October 2010 I upgraded to 12.10.  See notes at the end.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default, Alt-Button2. Update: The upgrade to Ubuntu 12.10 reverted this setting to the default, so I had to set it again.&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]] [[Category: Ubuntu 12.10]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Ubuntu_12.10&amp;diff=53869</id>
		<title>Ubuntu 12.10</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Ubuntu_12.10&amp;diff=53869"/>
		<updated>2012-08-23T09:54:09Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: â†Created page with 'Ubuntu 12.10 (codenamed &amp;quot;Quantal Quetzal&amp;quot;) is scheduled for release in the fall of 2012.  Category:Ubuntu'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ubuntu 12.10 (codenamed &amp;quot;Quantal Quetzal&amp;quot;) is scheduled for release in the fall of 2012.&lt;br /&gt;
&lt;br /&gt;
[[Category:Ubuntu]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_11.04_(Natty_Narwhal)_on_a_ThinkPad_X220&amp;diff=53868</id>
		<title>Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_11.04_(Natty_Narwhal)_on_a_ThinkPad_X220&amp;diff=53868"/>
		<updated>2012-08-23T09:51:59Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: /* Fix for hotkey shortcomings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 11.04 (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
I have since upgraded to Ubuntu 11.10 (Oneiric Ocelot) and have updated some of the information below accordingly.&lt;br /&gt;
&lt;br /&gt;
== Netboot ==&lt;br /&gt;
As a source of network installation files I made use of another GNU/Linux computer on my home LAN&lt;br /&gt;
which is connected to the Internet through a familiar ADSL-modem/gateway/router/caching nameserver/DHCP server (call it &amp;quot;the gateway&amp;quot;) at address 172.19.3.1.&lt;br /&gt;
The gateway's DHCP server issues leases in the range 172.19.3.2 to 172.19.3.100.&lt;br /&gt;
&lt;br /&gt;
First I set up the &amp;quot;source&amp;quot; machine, in my case one which already also had Ubuntu 11.04 installed.&lt;br /&gt;
It has address 172.19.3.7 (assigned to it by the gateway's DHCP server).&lt;br /&gt;
For the X220 to boot from it the machine needs to run a DHCP server and a TFTP server.&lt;br /&gt;
The DHCP server serves only this special purpose since, as I mentioned, the gateway is the network's main DHCP server.&lt;br /&gt;
The source's DHCP server must be so configured that it doesn't conflict with the existing DHCP server.&lt;br /&gt;
&lt;br /&gt;
Install the &amp;lt;tt&amp;gt;isc-dhcp-server&amp;lt;/tt&amp;gt; package and edit &amp;lt;tt&amp;gt;/etc/dhcp/dhcpd.conf&amp;lt;/tt&amp;gt; using the following as a model.&lt;br /&gt;
I am not sure that every line is needed, but this worked for me.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ddns-update-style none;&lt;br /&gt;
option domain-name-servers 172.19.3.1;  # This is the address of my gateway&lt;br /&gt;
option routers 172.19.3.1;              # This is the address of my gateway&lt;br /&gt;
option subnet-mask 255.255.0.0;         # This is the netmask of my home network&lt;br /&gt;
default-lease-time 600;&lt;br /&gt;
max-lease-time 7200;&lt;br /&gt;
allow booting;&lt;br /&gt;
allow bootp;&lt;br /&gt;
&lt;br /&gt;
subnet 172.19.3.0 netmask 255.255.255.0 {&lt;br /&gt;
  range 172.19.3.220 172.19.3.229;      # This is a range separate from the one used by the gateway and includes the address below&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
group {&lt;br /&gt;
  next-server 172.19.3.7;               # This is the address of the &amp;quot;source&amp;quot;&lt;br /&gt;
  host trawsfynydd {                    # 'trawsfynydd' is the name I chose for my X220&lt;br /&gt;
    hardware ethernet f0:de:f1:6b:22:bf; # This is the Ethernet address of the X220&lt;br /&gt;
    fixed-address 172.19.3.220;         # This is an address in the range as defined above&lt;br /&gt;
    filename &amp;quot;/pxelinux.0&amp;quot;;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now install the &amp;lt;tt&amp;gt;tftpd-hpa&amp;lt;/tt&amp;gt; package, download the network installation tarball and untar it into the location whence &amp;lt;tt&amp;gt;tftpd&amp;lt;/tt&amp;gt; serves files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /tmp&lt;br /&gt;
$ wget http://archive.ubuntu.com/ubuntu/dists/natty/main/installer-amd64/current/images/netboot/netboot.tar.gz&lt;br /&gt;
$ cd /var/lib/tftpboot&lt;br /&gt;
$ sudo tar zxf /tmp/netboot.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second set up the X220 for PXE (Pre-boot eXecution Environment).&lt;br /&gt;
* Switch on the X220 and press F1.  ThinkPad Setup starts.&lt;br /&gt;
* Set Config | Network | Ethernet LAN Option ROM to &amp;quot;Enabled&amp;quot;.&lt;br /&gt;
* Select Startup | Boot; select &amp;quot;PCI LAN IBA GE Slot...&amp;quot; and use the [+] key to move it to the top of the boot priority order&lt;br /&gt;
* Press F10 to save and exit.&lt;br /&gt;
&lt;br /&gt;
Voilà, the X220 boots the Ubuntu installer.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
I won't describe the Ubuntu installer.&lt;br /&gt;
I'll just mention some little problems I had.&lt;br /&gt;
&lt;br /&gt;
''First'', when it came time to resize the existing (ntfs) partition the partitioner asked what size I would like for &amp;quot;this partition&amp;quot;.  Did it mean the to-be-resized ntfs partition or the new ext4 partition?  &lt;br /&gt;
&lt;br /&gt;
Turns out it meant: the to-be-resized ntfs partition, so the suggested &amp;quot;max&amp;quot; selection was the opposite of what I wanted.&lt;br /&gt;
&lt;br /&gt;
''Second'', when I selected (only) the &amp;quot;Ubuntu desktop&amp;quot; task the installation reported failure without explaining what had gone wrong.&lt;br /&gt;
&lt;br /&gt;
I de-selected all tasks and the installation succeeded.&lt;br /&gt;
&lt;br /&gt;
''Third'', after reboot the screen came up black.&lt;br /&gt;
&lt;br /&gt;
I pressed CTRL-ALT-F1 to get the system console so I could log in.&lt;br /&gt;
&lt;br /&gt;
After logging in I ran &amp;lt;tt&amp;gt;tasksel&amp;lt;/tt&amp;gt; and installed &amp;quot;Ubuntu desktop&amp;quot; and this time no failure was reported.&lt;br /&gt;
&lt;br /&gt;
== Information ==&lt;br /&gt;
&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
&lt;br /&gt;
Originally:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BIOS Version: 8DET46WW (1.16)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
From Windows 7 I ran Lenovo ThinkVantage Tools to upgrade the BIOS.  Now:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BIOS Version: 8DET51WW (1.21)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== dmidecode ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# dmidecode -s system-manufacturer&lt;br /&gt;
LENOVO&lt;br /&gt;
# dmidecode -s system-product-name&lt;br /&gt;
42902WG&lt;br /&gt;
# dmidecode -s system-version&lt;br /&gt;
ThinkPad X220&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== /proc/cpuinfo ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
processor	: 0&lt;br /&gt;
vendor_id	: GenuineIntel&lt;br /&gt;
cpu family	: 6&lt;br /&gt;
model		: 42&lt;br /&gt;
model name	: Intel(R) Core(TM) i5-2540M CPU @ 2.60GHz&lt;br /&gt;
stepping	: 7&lt;br /&gt;
cpu MHz		: 800.000&lt;br /&gt;
cache size	: 3072 KB&lt;br /&gt;
physical id	: 0&lt;br /&gt;
siblings	: 4&lt;br /&gt;
core id		: 0&lt;br /&gt;
cpu cores	: 2&lt;br /&gt;
apicid		: 0&lt;br /&gt;
initial apicid	: 0&lt;br /&gt;
fpu		: yes&lt;br /&gt;
fpu_exception	: yes&lt;br /&gt;
cpuid level	: 13&lt;br /&gt;
wp		: yes&lt;br /&gt;
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 x2apic popcnt aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dts tpr_shadow vnmi flexpriority ept vpid&lt;br /&gt;
bogomips	: 5182.27&lt;br /&gt;
clflush size	: 64&lt;br /&gt;
cache_alignment	: 64&lt;br /&gt;
address sizes	: 36 bits physical, 48 bits virtual&lt;br /&gt;
power management:&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== lspci ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09)&lt;br /&gt;
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)&lt;br /&gt;
00:16.0 Communication controller: Intel Corporation 6 Series Chipset Family MEI Controller #1 (rev 04)&lt;br /&gt;
00:19.0 Ethernet controller: Intel Corporation 82579LM Gigabit Network Connection (rev 04)&lt;br /&gt;
00:1a.0 USB Controller: Intel Corporation 6 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)&lt;br /&gt;
00:1b.0 Audio device: Intel Corporation 6 Series Chipset Family High Definition Audio Controller (rev 04)&lt;br /&gt;
00:1c.0 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 1 (rev b4)&lt;br /&gt;
00:1c.1 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 2 (rev b4)&lt;br /&gt;
00:1c.3 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 4 (rev b4)&lt;br /&gt;
00:1c.4 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 5 (rev b4)&lt;br /&gt;
00:1d.0 USB Controller: Intel Corporation 6 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)&lt;br /&gt;
00:1f.0 ISA bridge: Intel Corporation 6 Series Chipset Family LPC Controller (rev 04)&lt;br /&gt;
00:1f.2 SATA controller: Intel Corporation 6 Series Chipset Family 6 port SATA AHCI Controller (rev 04)&lt;br /&gt;
00:1f.3 SMBus: Intel Corporation 6 Series Chipset Family SMBus Controller (rev 04)&lt;br /&gt;
03:00.0 Network controller: Intel Corporation Centrino Advanced-N 6205 (rev 34)&lt;br /&gt;
0d:00.0 System peripheral: Ricoh Co Ltd Device e823 (rev 04)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== lsusb ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub&lt;br /&gt;
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub&lt;br /&gt;
Bus 001 Device 006: ID 04f2:b217 Chicony Electronics Co., Ltd &lt;br /&gt;
Bus 001 Device 005: ID 0a5c:217f Broadcom Corp. Bluetooth Controller&lt;br /&gt;
Bus 001 Device 004: ID 147e:2016 Upek Biometric Touchchip/Touchstrip Fingerprint Sensor&lt;br /&gt;
Bus 001 Device 003: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub&lt;br /&gt;
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub&lt;br /&gt;
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Key table ===&lt;br /&gt;
This table was prepared ''before'' keys were remapped as discussed elsewhere on this page.&lt;br /&gt;
&lt;br /&gt;
References:&lt;br /&gt;
* [https://wiki.ubuntu.com/Hotkeys Hotkey architecture in Ubuntu]&lt;br /&gt;
* [https://wiki.ubuntu.com/Hotkeys/Troubleshooting Hotkey troubleshooting instructions]&lt;br /&gt;
* &amp;lt;tt&amp;gt;/usr/include/linux/input.h&amp;lt;/tt&amp;gt; -- list of Linux key codes&lt;br /&gt;
* [[Default meanings of special keys]]&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
! Key combination !! Extra function symbol !! ACPI event&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;acpi_listen&amp;lt;/tt&amp;gt;) !! Scan code&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;showkey&amp;amp;nbsp;-s&amp;lt;/tt&amp;gt;)&amp;lt;br&amp;gt;&amp;lt;i&amp;gt;(hex)&amp;lt;/i&amp;gt; !! Linux key code&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;showkey&amp;amp;nbsp;-k&amp;lt;/tt&amp;gt;) !! Input event&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;input-events&amp;lt;/tt&amp;gt;) !! ... on input device(*) !! X KeyCode&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;xev&amp;lt;/tt&amp;gt;) !! Keyboard Shortcuts name&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F4E2;&amp;amp;#x20E5;}} (loudspeaker icon with stroke) || || (none) || down: e0 20&amp;lt;br&amp;gt;up: e0 a0 || 113 || KEY_MIN_INTERESTING (0x71) || 3 || 121 || XF86AudioMute&lt;br /&gt;
|-&lt;br /&gt;
| {{key|−&amp;amp;#x1F4E2;}} (minus sign, loudspeaker icon) || || (none) || down: e0 2e&amp;lt;br&amp;gt;up: e0 ae || 114 || KEY_VOLUMEDOWN (0x72) || 3 ||122 || XF86AudioLowerVolume&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F4E2;+}} (loudspeaker icon, plus sign)  || || (none) || down: e0 30&amp;lt;br&amp;gt;up: e0 b0 || 115 || KEY_VOLUMEUP (0x73) || 3 || 123 || XF86AudioRaiseVolume&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F3A4;&amp;amp;#x20E5;}} (microphone icon with stroke)  || || ibm/hotkey HKEY 00000080 0000101b || (none) || 240 (rop) || KEY_UNKNOWN (0xf0) || 6 || 248 || &amp;quot;∅&amp;quot; (sic)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|ThinkVantage|#495988}}                   || || ibm/hotkey HKEY 00000080 00001018 || down: e0 1f e0 9f || 148 (rop) || KEY_PROG1 (0x94) || 6 || 156 || XF86Launch1&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}                             || || (none) || up: e0 63 e0 e3 || 143 || KEY_WAKEUP (0x8f) || 3 || 151 || XF86WakeUp&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F1|#494949}}       || || ibm/hotkey HKEY 00000080 00001001 || (none) || 466 (rop) || KEY_FN_F1 (0x1d2) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F2|#494949}}       || &amp;amp;#x1F512; (padlock symbol) || ibm/hotkey HKEY 00000080 00001002 || down: e0 12 e0 92 || 152 (rop) || KEY_SCREENLOCK (0x98) || 6 || 160 || XF86ScreenSaver&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F3|#494949}}       || &amp;amp;#x1F50B; (battery symbol) || ibm/hotkey HKEY 00000080 00001003 || down: e0 71 e0 f1 || 236 (rop) || KEY_BATTERY (0xec) || 6 || 244 || XF86Battery&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F4|#494949}}       || ☾ || ibm/hotkey HKEY 00000080 00001004 || down: e0 5f e0 df&amp;lt;br&amp;gt;(but sometimes nothing) || 142 (rop) || KEY_SLEEP (0x8e) || 6 || 150 || XF86Sleep&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F5|#494949}}       || &amp;amp;#x2E28;&amp;amp;#x1F4BB;&amp;amp;#x2E29; (radiating computer symbol) || ibm/hotkey HKEY 00000080 00001005 || down: e0 73 e0 f3 || 238 (rop) || KEY_WLAN (0xee) || 6 || 246 || XF86WLAN&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F6|#494949}}       || (camera, headset) || ibm/hotkey HKEY 00000080 00001006 || down: e0 3b e0 bb || 212 (rop) || KEY_CAMERA (0xd4) || 6 || 220 || XF86WebCam&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F7|#494949}}       || &amp;amp;#x1F4BB;&amp;amp;#x239A; (computer symbol, screen symbol) || ibm/hotkey HKEY 00000080 00001007 || down: e0 56 e0 d6 || 227 (rop) || KEY_SWITCHVIDEOMODE (0xe3) || 6 || 235 || XF86Display&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F8|#494949}}       || (trackpoint symbol, vertical bar, trackpad symbol) || ibm/hotkey HKEY 00000080 00001008 || down: e0 74 e0 f4 || 191 (rop) || KEY_F21 (0xbf) || 6 || 199 || XF86TouchpadToggle&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F9|#494949}}       || || ibm/hotkey HKEY 00000080 00001009 || down: 6f ef || 194 (rop) || KEY_F24 (0xc2) || 6 || 202 || &amp;quot;Ê&amp;quot; (sic)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F10|#494949}}      || || (none) || (none) || || (none) || || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F11|#494949}}      || || ibm/hotkey HKEY 00000080 0000100b || (none) || 476 (rop) || KEY_FN_F11 (0x1dc) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F12|#494949}}      || &amp;amp;#x1F4BB;&amp;amp;nbsp;&amp;amp;#x25B6;&amp;amp;#x274D; (computer symbol, right arrowhead, diskpack symbol) || ibm/hotkey HKEY 00000080 0000100c || down: e0 25 e0 a5&amp;lt;br&amp;gt;(but sometimes nothing) || 205 (rop) || KEY_SUSPEND (0xcd) || 6 || 213 || XF86Suspend&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|Home|#494949}}     || ☀▴ || ibm/hotkey HKEY 00000080 00001010 and video LCD0 00000086 00000000 || down: e0 54 e0 d4 e0 54 e0 d4 || 225 (double) (rop) || KEY_BRIGHTNESSUP (0xe1) || 4, 6 || 233 || XF86MonBrightnessUp&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|End|#494949}}      || ☀▾ || ibm/hotkey HKEY 00000080 00001011 and  video LCD0 00000087 00000000 || down: e0 4c e0 cc e0 4c e0 cc || 224 (double) (rop) || KEY_BRIGHTNESSDOWN (0xe0) || 4, 6 || 232 || XF86MonBrightnessDown&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|PgUp|#494949}}     || (illuminating overhead lamp symbol) || (none) || (none) || (none) || (none) || (none) || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|Space|#494949}}    || [&amp;amp;#x1F50D;+] (screen with magnifying glass symbol and plus sign, i.e., &amp;quot;zoom&amp;quot; symbol) || ibm/hotkey HKEY 00000080 00001014 || (none) || 372 (rop) || KEY_ZOOM (0x174) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|→|#494949}}        || &amp;amp;#x23ED; (barred right arrowhead, i.e., &amp;quot;next&amp;quot; symbol) || (none) || down: e0 19&amp;lt;br&amp;gt;up: e0 99 || 163 || KEY_NEXTSONG (0xa3) || 3 || 171 || XF86AudioNext&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|↓|#494949}}        || &amp;amp;#x23EF; (right arrowhead, double bar, i.e., &amp;quot;play/pause&amp;quot; symbol) || (none) || down: e0 22&amp;lt;br&amp;gt;up: e0 a2 || 164 || KEY_PLAYPAUSE (0xa4) || 3 || 172 || XF86AudioPlay&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|←|#494949}}        || &amp;amp;#x23EE; (barred left arrowhead, i.e., &amp;quot;prev&amp;quot; symbol) || (none) || down: e0 10&amp;lt;br&amp;gt;up: e0 90 || 165 || KEY_PREVIOUSSONG (0xa5) || 3 || 173 || XF86AudioPrev&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|↑|#494949}}        || ∎ (&amp;quot;stop play&amp;quot; symbol) || (none) || down: e0 24&amp;lt;br&amp;gt;up: e0 a4 || 166 || KEY_STOPCD (0xa6) || 3 || 174 || XF86AudioStop&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|◂ ⎗|#494949}} (left arrowhead, page icon) || || (none) || down: e0 6a&amp;lt;br&amp;gt;up: e0 ea || 158 || KEY_BACK (0x9e) || 3 || 166 || XF86Back&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|⎘ ▸|#494949}} (page icon, right arrowhead) || || (none) || down: e0 69&amp;lt;br&amp;gt;up: e0 e9 || 159 || KEY_FORWARD (0x9f) || 3 || 167 || XF86Forward&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
In the Linux key code column, &amp;quot;rop&amp;quot; means &amp;quot;release on press&amp;quot;, i.e., the release event is generated at the same time as the press event.&lt;br /&gt;
&lt;br /&gt;
The button on the UltraBase doesn't seem to generate any events visible to userspace.&lt;br /&gt;
&lt;br /&gt;
Input device numbers and types as reported by &amp;lt;tt&amp;gt;lsinput&amp;lt;/tt&amp;gt;:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
|+ (*) /dev/input/event&amp;lt;i&amp;gt;n&amp;lt;/i&amp;gt;&lt;br /&gt;
! n !! name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || &amp;quot;Lid Switch&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 1 || &amp;quot;Sleep Button&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 2 || &amp;quot;Power Button&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 3 || &amp;quot;AT Translated Set @ keyboard&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 4 || &amp;quot;Video Bus&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 5 || &amp;quot;Integrated Camera&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 6 || &amp;quot;ThinkPad Extra Buttons&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 7 || &amp;quot;SynPS/2 Synaptics TouchPad&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 8 || &amp;quot;TPPS/2 IBM TrackPoint&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Hotkey mask when the above table was compiled:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_mask&lt;br /&gt;
0x078dffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_all_mask&lt;br /&gt;
0x07ffffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_recommended_mask&lt;br /&gt;
0x078dffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_report_mode&lt;br /&gt;
1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Accessories ==&lt;br /&gt;
Accessories I purchased for this laptop:&lt;br /&gt;
* [[ThinkPad UltraBase Series 3]] with built-in [[Serial Ultrabay Slim]]&lt;br /&gt;
* [[Serial Ultrabay Slim DVD Multi IV Drive]]&lt;br /&gt;
* [[ThinkPad Mini Dock Series 3]] 433710U which comes with a 90W power supply&lt;br /&gt;
* 1.95Ah battery 42T4901&lt;br /&gt;
* 8.4Ah battery 42T4942&lt;br /&gt;
&lt;br /&gt;
== Configuration and solved problems ==&lt;br /&gt;
&lt;br /&gt;
=== Fingerprint reader ===&lt;br /&gt;
See [[How to enable integrated fingerprint reader with fprint|how to enable the integrated fingerprint reader with fprint]].&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.freedesktop.org/show_bug.cgi?id=11227 hotkey shortcomings] ===&lt;br /&gt;
(Updated November 2011 for Oneiric.)&lt;br /&gt;
&lt;br /&gt;
By default the &amp;quot;zoom&amp;quot; (Fn-Space) and &amp;quot;microphone-mute&amp;quot; (button next to the ThinkVantage button) hotkeys do nothing.&lt;br /&gt;
&lt;br /&gt;
'''Zoom''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module, kernel and &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; map the zoom key's ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 00001014&amp;lt;/tt&amp;gt;) to input event &amp;lt;tt&amp;gt;KEY_ZOOM&amp;lt;/tt&amp;gt; whose numerical value, 372, is greater than 255, the highest key-event code that X can handle.&lt;br /&gt;
&lt;br /&gt;
'''Micmute''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module and kernel generate an ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 0000101b&amp;lt;/tt&amp;gt;) for the microphone mute button but in releases earlier than precise this is not mapped to anything; in precise it is mapped to 256 which is also greater than 255, the highest that X can handle. Bug reported [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
The fault lies with X which can't handle key codes above 255.  But as discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/313514 here], it may be a long time before this gets fixed in X.&lt;br /&gt;
&lt;br /&gt;
There is a fairly easy workaround.&lt;br /&gt;
Install version 175 or later of the &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; package and do the following.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# sudo su&lt;br /&gt;
# mkdir /etc/udev/keymaps&lt;br /&gt;
# cp /lib/udev/keymaps/module-lenovo /etc/udev/keymaps&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now edit &amp;lt;tt&amp;gt;/etc/udev/keymaps/module-lenovo&amp;lt;/tt&amp;gt; so that 0x13 and 0x1A get mapped to &amp;lt;tt&amp;gt;search&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;prog2&amp;lt;/tt&amp;gt;, respectively (instead of &amp;lt;tt&amp;gt;zoom&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;micmute&amp;lt;/tt&amp;gt;, respectively).&lt;br /&gt;
&lt;br /&gt;
Then in System Settings | Keyboard | Shortcuts assign a behavior to the &amp;lt;tt&amp;gt;XF86Search&amp;lt;/tt&amp;gt; event, the X event corresponding to &amp;lt;tt&amp;gt;search&amp;lt;/tt&amp;gt;. This behavior will be invoked by Fn-Space.&lt;br /&gt;
&lt;br /&gt;
There is no built-in function for muting the microphone but it is straightforward to concoct one using &amp;lt;tt&amp;gt;amixer&amp;lt;/tt&amp;gt;.&lt;br /&gt;
In Keyboard | Shortcuts select Custom Shortcuts and press &amp;lt;tt&amp;gt;+&amp;lt;/tt&amp;gt; to create a new shortcut named &amp;quot;Microphone mute&amp;quot; whose command-content is the following.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sh -c &amp;quot;if amixer get Capture,0 | grep -q '\[on\]' ; then amixer -q set Capture,0 nocap ; else amixer -q set Capture,0 cap; fi&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Assign this to &amp;lt;tt&amp;gt;XF86Launch2&amp;lt;/tt&amp;gt; which is the X event corresponding to input event &amp;lt;tt&amp;gt;prog2&amp;lt;/tt&amp;gt;. This behavior will be invoked by the microphone-mute key.&lt;br /&gt;
&lt;br /&gt;
[Added August 2012:] This has [https://bugs.launchpad.net/ubuntu/+source/udev/+bug/408903 supposedly] been fixed in [[Ubuntu 12.10|Quantal]].&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/486154 the known no-system-beep problem] ===&lt;br /&gt;
As I described in more detail [[Installing Ubuntu 9.10 (Karmic Koala) on a ThinkPad X61#Partially solved problem: No beep|earlier]]:&lt;br /&gt;
* Create &amp;lt;tt&amp;gt;.xprofile&amp;lt;/tt&amp;gt; containing&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and at &amp;lt;tt&amp;gt;desktop | gnome | peripherals | keyboard&amp;lt;/tt&amp;gt; change the value of &amp;lt;tt&amp;gt;bell_mode&amp;lt;/tt&amp;gt; from &amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt; to &amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* If the default bell volume of 50 (percent) is not loud enough, add a line like the following to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
xset b 100&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* To cause terminal bells to ring also in non-X terminals (e.g., the console terminal), comment out the &amp;lt;tt&amp;gt;blacklist pcspkr&amp;lt;/tt&amp;gt; line in &amp;lt;tt&amp;gt;/etc/modprobe.d/blacklist.conf&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Fix for &amp;quot;[drm:i915_hangcheck_ring_idle] *ERROR* Hangcheck timer elapsed... blt ring idle...&amp;quot; problem ===&lt;br /&gt;
To fix [https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/761065 this known problem] upgrade the kernel: install the &amp;lt;tt&amp;gt;linux-image-2.6.38-11-generic&amp;lt;/tt&amp;gt; package and reboot.&lt;br /&gt;
&lt;br /&gt;
=== [[Tp smapi|tp-smapi]] loading ===&lt;br /&gt;
First, it is as usual necessary to add&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tp-smapi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt; so that &amp;lt;tt&amp;gt;modoprobe&amp;lt;/tt&amp;gt; will attempt to load the module at boot time.&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
Having loaded &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; do:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Result:&lt;br /&gt;
&lt;br /&gt;
[[Image:ThinkPad_X220_running_hdaps-gl.jpg|Tilted ThinkPad X220 running hdaps-gl|300px]]&lt;br /&gt;
&lt;br /&gt;
=== Miscellaneous configuration ===&lt;br /&gt;
* Having installed bare Ubuntu I had to run &amp;lt;tt&amp;gt;tasksel&amp;lt;/tt&amp;gt; and select at least &amp;quot;Ubuntu Desktop&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* In order to allow NetworkManager to manage eth0 I had to comment out the &amp;quot;eth0&amp;quot; stanza in &amp;lt;tt&amp;gt;/etc/network/interfaces&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* I used System Settings | Ubuntu Software Center to install &amp;lt;tt&amp;gt;ccsm&amp;lt;/tt&amp;gt; (&amp;quot;Advanced Desktop Effects Settings&amp;quot;) so I could enable Wobbly Windows and so I can initiate window resize with Alt+Button3 which is easier than the default Alt-Button2 (i.e., Alt-scrollwheelbutton).&lt;br /&gt;
&lt;br /&gt;
* Add PPAs to apt sources list for additional indicators&lt;br /&gt;
&lt;br /&gt;
=== Unity automaximizes ===&lt;br /&gt;
To disable this (annoying) behavior, run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
== Ex-problems ==&lt;br /&gt;
=== Suspend causes kernel panic ===&lt;br /&gt;
&amp;quot;Suspend-to-RAM and brightness control of the display work with kernel &amp;gt;= 3.0-rc6&amp;quot; according to [[Installing Gentoo on a ThinkPad X220|this fellow]].&lt;br /&gt;
&lt;br /&gt;
Since I upgraded to kernel 2.6.38-11-generic I haven't had any kernel panics on suspend.&lt;br /&gt;
&lt;br /&gt;
=== TPM can't be used ===&lt;br /&gt;
To try it out, install &amp;lt;tt&amp;gt;tpm-tools&amp;lt;/tt&amp;gt;.  &lt;br /&gt;
&lt;br /&gt;
When I first tried it, the &amp;lt;tt&amp;gt;tpm_version&amp;lt;/tt&amp;gt; program failed with &amp;quot;Communication failure&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
But now it prints this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  TPM 1.2 Version Info:&lt;br /&gt;
  Chip Version:        1.2.8.32&lt;br /&gt;
  Spec Level:          2&lt;br /&gt;
  Errata Revision:     3&lt;br /&gt;
  TPM Vendor ID:       STM &lt;br /&gt;
  TPM Version:         01010000&lt;br /&gt;
  Manufacturer Info:   53544d20&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Presumably the new kernel fixed this.&lt;br /&gt;
&lt;br /&gt;
=== memtest86+ didn't work ===&lt;br /&gt;
&lt;br /&gt;
Upgrading to the oneiric version, v4.20, fixed this.&lt;br /&gt;
&lt;br /&gt;
=== Multiple monitors ===&lt;br /&gt;
Configuring an extended desktop over two monitors led to malfunction.  Side-by-side worked, one above the other did not.&lt;br /&gt;
&lt;br /&gt;
In natty the solution was just to avoid the layouts that caused the malfunction.&lt;br /&gt;
&lt;br /&gt;
The problems appear to have been completely solved in Ubuntu 11.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
=== Bluetooth-related crashes ===&lt;br /&gt;
Switching bluetooth on or off either using the indicator or Fn-F5 sometimes crashed the machine.&lt;br /&gt;
&lt;br /&gt;
I haven't seen this problem in Ubuntu 10.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
=== [[Tp smapi|tp-smapi]] loading problem ===&lt;br /&gt;
The distributed &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; modules didn't load on my X220&lt;br /&gt;
and &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; reported the EC firmware number as &amp;quot;unknown&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The BIOS setup program reports this information about the BIOS:&lt;br /&gt;
* Model 42902WG&lt;br /&gt;
* UEFI BIOS 8DET46WW (1.16) 2011-05-18&lt;br /&gt;
* Embedded Controller 8DHT23WW (1.07)&lt;br /&gt;
&lt;br /&gt;
This problem was fixed in &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; version 0.41-1.  As of 7 August 2011 &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; is available in Debian unstable (Ubuntu uses Debian &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; packages with no changes) and this is the version in Ubuntu 11.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
Output from &amp;lt;tt&amp;gt;dmesg&amp;lt;/tt&amp;gt; after &amp;lt;tt&amp;gt;modprobe&amp;lt;/tt&amp;gt;ing &amp;lt;tt&amp;gt;thinkpad-ec&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[  714.842090] thinkpad_ec: thinkpad_ec 0.41 loaded.&lt;br /&gt;
[  721.983409] tp_smapi 0.41 loading...&lt;br /&gt;
[  721.984742] tp_smapi successfully loaded (smapi_port=0xb2).&lt;br /&gt;
[  729.462533] hdaps: LENOVO ThinkPad X220 detected, setting orientation 4&lt;br /&gt;
[  729.462894] hdaps: initial mode latch is 0x05&lt;br /&gt;
[  729.463022] hdaps: setting ec_rate=250, filter_order=2&lt;br /&gt;
[  729.463242] hdaps: device successfully initialized.&lt;br /&gt;
[  729.463799] input: ThinkPad HDAPS joystick emulation as /devices/virtual/input/input15&lt;br /&gt;
[  729.464101] input: ThinkPad HDAPS accelerometer data as /devices/virtual/input/input16&lt;br /&gt;
[  729.464342] hdaps: driver successfully loaded.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Modinfo:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ modinfo tp-smapi&lt;br /&gt;
filename:       /lib/modules/2.6.38-11-generic/updates/dkms/tp_smapi.ko&lt;br /&gt;
license:        GPL&lt;br /&gt;
version:        0.41&lt;br /&gt;
description:    ThinkPad SMAPI Support&lt;br /&gt;
author:         Shem Multinymous&lt;br /&gt;
srcversion:     B6841670771B2FF5222BFFD&lt;br /&gt;
depends:        thinkpad_ec&lt;br /&gt;
vermagic:       2.6.38-11-generic SMP mod_unload modversions &lt;br /&gt;
parm:           debug:Debug level (0=off, 1=on) (int)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Remaining problems ==&lt;br /&gt;
&lt;br /&gt;
=== Indicator lamp on microphone mute key doesn't work ===&lt;br /&gt;
The problem has been discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/linux/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
== Comparison with [[Installing Ubuntu 10.10 (Maverick Meerkat) on a ThinkPad X220|a Ubuntu 10.10 user's experience]] ==&lt;br /&gt;
* (improvements)&lt;br /&gt;
** I didn't have to do anything special to have the &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module loaded or use special keys&lt;br /&gt;
** The mute-microphone button can be made to work as described above&lt;br /&gt;
** Both left and right microphones are seen&lt;br /&gt;
** I have no difficulties with the fans&lt;br /&gt;
** I have no difficulties with SD cards&lt;br /&gt;
** The &amp;quot;Hangcheck timer elapsed&amp;quot; problem has been fixed in a new kernel version, as described above&lt;br /&gt;
&lt;br /&gt;
== Things to remember ==&lt;br /&gt;
To get Google Earth to work you have to do&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libgl1-mesa-glx:i386&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Ubuntu 11.04]][[Category:Ubuntu 11.10]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53679</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53679"/>
		<updated>2012-05-16T10:39:22Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53678</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53678"/>
		<updated>2012-05-16T10:39:05Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to &amp;lt;tt&amp;gt;~/.xprofile&amp;lt;/tt&amp;gt;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53677</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53677"/>
		<updated>2012-05-16T10:28:53Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53676</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53676"/>
		<updated>2012-05-16T10:28:23Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53675</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53675"/>
		<updated>2012-05-16T10:27:41Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu, more and more aspects of the system work correctly without any manual intervention.&lt;br /&gt;
Here is a summary of what I nevertheless had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53674</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53674"/>
		<updated>2012-05-16T09:17:51Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu configuration becomes easier.  Here is a summary of what I had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53673</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53673"/>
		<updated>2012-05-16T09:17:36Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu configuration becomes easier.  Here is a summary of what I had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Associate my bluetooth HIDs.&lt;br /&gt;
&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* In /etc/sudoers add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
&lt;br /&gt;
* Set up Empathy accounts, etc.&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53672</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53672"/>
		<updated>2012-05-16T09:04:05Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu configuration becomes easier.  Here is a summary of what I had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* In /etc/sudoers add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
(Without this, every program I run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also effectively has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!)&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Associate my bluetooth HIDs.&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53671</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53671"/>
		<updated>2012-05-16T09:02:43Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu configuration becomes easier.  Here is a summary of what I had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* In /etc/sudoers add &amp;quot;&amp;lt;tt&amp;gt;Defaults timestamp_timeout=0&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
  Without this, every program you run after executing any command with &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; also has full root privileges.  This is ungood.  If I want to run a sequence of commands as root without having to authenticate every time I'll just do &amp;quot;&amp;lt;tt&amp;gt;sudo su&amp;lt;/tt&amp;gt;&amp;quot; to start a root shell!&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Associate my bluetooth HIDs.&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53670</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53670"/>
		<updated>2012-05-16T09:00:22Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu configuration becomes easier.  Here is a summary of what I had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* In /etc/sudoers add &amp;quot;Defaults timestamp_timeout=0&amp;quot;&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Associate my bluetooth HIDs.&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53669</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53669"/>
		<updated>2012-05-16T08:59:58Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu configuration becomes easier.  Here is a summary of what I had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
* In /etc/sudoers add &amp;quot;Defaults timestamp_timeout=0&amp;quot;&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
sudo apt-get install libpam-fprintd fprintd&lt;br /&gt;
fprintd-enroll&lt;br /&gt;
sudo vi /etc/pam.d/lightdm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Associate my bluetooth HIDs.&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53668</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53668"/>
		<updated>2012-05-16T08:59:07Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu configuration becomes easier.  Here is a summary of what I had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;quot; to &amp;quot;&amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install the &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; package&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt;&lt;br /&gt;
* In /etc/sudoers add &amp;quot;Defaults timestamp_timeout=0&amp;quot;&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
** add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
** apt-get install libpam-fprintd fprintd&lt;br /&gt;
** Run fprintd-enroll&lt;br /&gt;
** Edit /etc/pam.d/lightdm&lt;br /&gt;
* Associate my bluetooth HIDs.&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53667</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53667"/>
		<updated>2012-05-16T08:57:30Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu configuration becomes easier.  Here is a summary of what I had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run gconf-editor and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;off&amp;quot; to &amp;quot;on&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;[ &amp;quot;$DISPLAY&amp;quot; ] &amp;amp;&amp;amp; xset b 100&amp;lt;/tt&amp;gt;&amp;quot; to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install tp-smapi-dkms&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to /etc/modules&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to /etc/modules&lt;br /&gt;
* In /etc/sudoers add &amp;quot;Defaults timestamp_timeout=0&amp;quot;&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
** add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
** apt-get install libpam-fprintd fprintd&lt;br /&gt;
** Run fprintd-enroll&lt;br /&gt;
** Edit /etc/pam.d/lightdm&lt;br /&gt;
* Associate my bluetooth HIDs.&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53666</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53666"/>
		<updated>2012-05-16T08:56:10Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu configuration becomes easier.  Here is a summary of what I had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run gconf-editor and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;off&amp;quot; to &amp;quot;on&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;xset b 100&amp;quot; to .bashrc&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install tp-smapi-dkms&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt;&amp;quot; to /etc/modules&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
** Add &amp;quot;&amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;&amp;quot; to /etc/modules&lt;br /&gt;
* In /etc/sudoers add &amp;quot;Defaults timestamp_timeout=0&amp;quot;&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
** add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
** apt-get install libpam-fprintd fprintd&lt;br /&gt;
** Run fprintd-enroll&lt;br /&gt;
** Edit /etc/pam.d/lightdm&lt;br /&gt;
* Associate my bluetooth HIDs.&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53665</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53665"/>
		<updated>2012-05-16T08:55:18Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu configuration becomes easier.  Here is a summary of what I had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run gconf-editor and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;off&amp;quot; to &amp;quot;on&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;xset b 100&amp;quot; to .bashrc&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install tp-smapi-dkms&lt;br /&gt;
** Add &amp;quot;tp-smapi&amp;quot; to /etc/modules.&lt;br /&gt;
* In /etc/sudoers add &amp;quot;Defaults timestamp_timeout=0&amp;quot;&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
** add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
** apt-get install libpam-fprintd fprintd&lt;br /&gt;
** Run fprintd-enroll&lt;br /&gt;
** Edit /etc/pam.d/lightdm&lt;br /&gt;
* Associate my bluetooth HIDs.&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
sudo modprobe hdaps&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53664</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53664"/>
		<updated>2012-05-16T08:54:41Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu configuration becomes easier.  Here is a summary of what I had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run gconf-editor and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;off&amp;quot; to &amp;quot;on&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;xset b 100&amp;quot; to .bashrc&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install tp-smapi-dkms&lt;br /&gt;
** Add &amp;quot;tp-smapi&amp;quot; to /etc/modules.&lt;br /&gt;
* In /etc/sudoers add &amp;quot;Defaults timestamp_timeout=0&amp;quot;&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
** add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
** apt-get install libpam-fprintd fprintd&lt;br /&gt;
** Run fprintd-enroll&lt;br /&gt;
** Edit /etc/pam.d/lightdm&lt;br /&gt;
* Associate my bluetooth HIDs.&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
* Install HDAPS stuff:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53663</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53663"/>
		<updated>2012-05-16T08:48:10Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu configuration becomes easier.  Here is a summary of what I had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
* Disable Unity automaximization&lt;br /&gt;
** Install and run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Run gconf-editor and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;off&amp;quot; to &amp;quot;on&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;xset b 100&amp;quot; to .bashrc&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install tp-smapi-dkms&lt;br /&gt;
** Add &amp;quot;tp-smapi&amp;quot; to /etc/modules.&lt;br /&gt;
* In /etc/sudoers add &amp;quot;Defaults timestamp_timeout=0&amp;quot;&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
** add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
** apt-get install libpam-fprintd fprintd&lt;br /&gt;
** Run fprintd-enroll&lt;br /&gt;
** Edit /etc/pam.d/lightdm&lt;br /&gt;
* Associate my bluetooth HIDs.&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_11.04_(Natty_Narwhal)_on_a_ThinkPad_X220&amp;diff=53662</id>
		<title>Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_11.04_(Natty_Narwhal)_on_a_ThinkPad_X220&amp;diff=53662"/>
		<updated>2012-05-16T08:45:49Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 11.04 (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
I have since upgraded to Ubuntu 11.10 (Oneiric Ocelot) and have updated some of the information below accordingly.&lt;br /&gt;
&lt;br /&gt;
== Netboot ==&lt;br /&gt;
As a source of network installation files I made use of another GNU/Linux computer on my home LAN&lt;br /&gt;
which is connected to the Internet through a familiar ADSL-modem/gateway/router/caching nameserver/DHCP server (call it &amp;quot;the gateway&amp;quot;) at address 172.19.3.1.&lt;br /&gt;
The gateway's DHCP server issues leases in the range 172.19.3.2 to 172.19.3.100.&lt;br /&gt;
&lt;br /&gt;
First I set up the &amp;quot;source&amp;quot; machine, in my case one which already also had Ubuntu 11.04 installed.&lt;br /&gt;
It has address 172.19.3.7 (assigned to it by the gateway's DHCP server).&lt;br /&gt;
For the X220 to boot from it the machine needs to run a DHCP server and a TFTP server.&lt;br /&gt;
The DHCP server serves only this special purpose since, as I mentioned, the gateway is the network's main DHCP server.&lt;br /&gt;
The source's DHCP server must be so configured that it doesn't conflict with the existing DHCP server.&lt;br /&gt;
&lt;br /&gt;
Install the &amp;lt;tt&amp;gt;isc-dhcp-server&amp;lt;/tt&amp;gt; package and edit &amp;lt;tt&amp;gt;/etc/dhcp/dhcpd.conf&amp;lt;/tt&amp;gt; using the following as a model.&lt;br /&gt;
I am not sure that every line is needed, but this worked for me.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ddns-update-style none;&lt;br /&gt;
option domain-name-servers 172.19.3.1;  # This is the address of my gateway&lt;br /&gt;
option routers 172.19.3.1;              # This is the address of my gateway&lt;br /&gt;
option subnet-mask 255.255.0.0;         # This is the netmask of my home network&lt;br /&gt;
default-lease-time 600;&lt;br /&gt;
max-lease-time 7200;&lt;br /&gt;
allow booting;&lt;br /&gt;
allow bootp;&lt;br /&gt;
&lt;br /&gt;
subnet 172.19.3.0 netmask 255.255.255.0 {&lt;br /&gt;
  range 172.19.3.220 172.19.3.229;      # This is a range separate from the one used by the gateway and includes the address below&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
group {&lt;br /&gt;
  next-server 172.19.3.7;               # This is the address of the &amp;quot;source&amp;quot;&lt;br /&gt;
  host trawsfynydd {                    # 'trawsfynydd' is the name I chose for my X220&lt;br /&gt;
    hardware ethernet f0:de:f1:6b:22:bf; # This is the Ethernet address of the X220&lt;br /&gt;
    fixed-address 172.19.3.220;         # This is an address in the range as defined above&lt;br /&gt;
    filename &amp;quot;/pxelinux.0&amp;quot;;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now install the &amp;lt;tt&amp;gt;tftpd-hpa&amp;lt;/tt&amp;gt; package, download the network installation tarball and untar it into the location whence &amp;lt;tt&amp;gt;tftpd&amp;lt;/tt&amp;gt; serves files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /tmp&lt;br /&gt;
$ wget http://archive.ubuntu.com/ubuntu/dists/natty/main/installer-amd64/current/images/netboot/netboot.tar.gz&lt;br /&gt;
$ cd /var/lib/tftpboot&lt;br /&gt;
$ sudo tar zxf /tmp/netboot.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second set up the X220 for PXE (Pre-boot eXecution Environment).&lt;br /&gt;
* Switch on the X220 and press F1.  ThinkPad Setup starts.&lt;br /&gt;
* Set Config | Network | Ethernet LAN Option ROM to &amp;quot;Enabled&amp;quot;.&lt;br /&gt;
* Select Startup | Boot; select &amp;quot;PCI LAN IBA GE Slot...&amp;quot; and use the [+] key to move it to the top of the boot priority order&lt;br /&gt;
* Press F10 to save and exit.&lt;br /&gt;
&lt;br /&gt;
Voilà, the X220 boots the Ubuntu installer.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
I won't describe the Ubuntu installer.&lt;br /&gt;
I'll just mention some little problems I had.&lt;br /&gt;
&lt;br /&gt;
''First'', when it came time to resize the existing (ntfs) partition the partitioner asked what size I would like for &amp;quot;this partition&amp;quot;.  Did it mean the to-be-resized ntfs partition or the new ext4 partition?  &lt;br /&gt;
&lt;br /&gt;
Turns out it meant: the to-be-resized ntfs partition, so the suggested &amp;quot;max&amp;quot; selection was the opposite of what I wanted.&lt;br /&gt;
&lt;br /&gt;
''Second'', when I selected (only) the &amp;quot;Ubuntu desktop&amp;quot; task the installation reported failure without explaining what had gone wrong.&lt;br /&gt;
&lt;br /&gt;
I de-selected all tasks and the installation succeeded.&lt;br /&gt;
&lt;br /&gt;
''Third'', after reboot the screen came up black.&lt;br /&gt;
&lt;br /&gt;
I pressed CTRL-ALT-F1 to get the system console so I could log in.&lt;br /&gt;
&lt;br /&gt;
After logging in I ran &amp;lt;tt&amp;gt;tasksel&amp;lt;/tt&amp;gt; and installed &amp;quot;Ubuntu desktop&amp;quot; and this time no failure was reported.&lt;br /&gt;
&lt;br /&gt;
== Information ==&lt;br /&gt;
&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
&lt;br /&gt;
Originally:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BIOS Version: 8DET46WW (1.16)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
From Windows 7 I ran Lenovo ThinkVantage Tools to upgrade the BIOS.  Now:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BIOS Version: 8DET51WW (1.21)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== dmidecode ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# dmidecode -s system-manufacturer&lt;br /&gt;
LENOVO&lt;br /&gt;
# dmidecode -s system-product-name&lt;br /&gt;
42902WG&lt;br /&gt;
# dmidecode -s system-version&lt;br /&gt;
ThinkPad X220&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== /proc/cpuinfo ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
processor	: 0&lt;br /&gt;
vendor_id	: GenuineIntel&lt;br /&gt;
cpu family	: 6&lt;br /&gt;
model		: 42&lt;br /&gt;
model name	: Intel(R) Core(TM) i5-2540M CPU @ 2.60GHz&lt;br /&gt;
stepping	: 7&lt;br /&gt;
cpu MHz		: 800.000&lt;br /&gt;
cache size	: 3072 KB&lt;br /&gt;
physical id	: 0&lt;br /&gt;
siblings	: 4&lt;br /&gt;
core id		: 0&lt;br /&gt;
cpu cores	: 2&lt;br /&gt;
apicid		: 0&lt;br /&gt;
initial apicid	: 0&lt;br /&gt;
fpu		: yes&lt;br /&gt;
fpu_exception	: yes&lt;br /&gt;
cpuid level	: 13&lt;br /&gt;
wp		: yes&lt;br /&gt;
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 x2apic popcnt aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dts tpr_shadow vnmi flexpriority ept vpid&lt;br /&gt;
bogomips	: 5182.27&lt;br /&gt;
clflush size	: 64&lt;br /&gt;
cache_alignment	: 64&lt;br /&gt;
address sizes	: 36 bits physical, 48 bits virtual&lt;br /&gt;
power management:&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== lspci ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09)&lt;br /&gt;
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)&lt;br /&gt;
00:16.0 Communication controller: Intel Corporation 6 Series Chipset Family MEI Controller #1 (rev 04)&lt;br /&gt;
00:19.0 Ethernet controller: Intel Corporation 82579LM Gigabit Network Connection (rev 04)&lt;br /&gt;
00:1a.0 USB Controller: Intel Corporation 6 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)&lt;br /&gt;
00:1b.0 Audio device: Intel Corporation 6 Series Chipset Family High Definition Audio Controller (rev 04)&lt;br /&gt;
00:1c.0 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 1 (rev b4)&lt;br /&gt;
00:1c.1 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 2 (rev b4)&lt;br /&gt;
00:1c.3 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 4 (rev b4)&lt;br /&gt;
00:1c.4 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 5 (rev b4)&lt;br /&gt;
00:1d.0 USB Controller: Intel Corporation 6 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)&lt;br /&gt;
00:1f.0 ISA bridge: Intel Corporation 6 Series Chipset Family LPC Controller (rev 04)&lt;br /&gt;
00:1f.2 SATA controller: Intel Corporation 6 Series Chipset Family 6 port SATA AHCI Controller (rev 04)&lt;br /&gt;
00:1f.3 SMBus: Intel Corporation 6 Series Chipset Family SMBus Controller (rev 04)&lt;br /&gt;
03:00.0 Network controller: Intel Corporation Centrino Advanced-N 6205 (rev 34)&lt;br /&gt;
0d:00.0 System peripheral: Ricoh Co Ltd Device e823 (rev 04)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== lsusb ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub&lt;br /&gt;
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub&lt;br /&gt;
Bus 001 Device 006: ID 04f2:b217 Chicony Electronics Co., Ltd &lt;br /&gt;
Bus 001 Device 005: ID 0a5c:217f Broadcom Corp. Bluetooth Controller&lt;br /&gt;
Bus 001 Device 004: ID 147e:2016 Upek Biometric Touchchip/Touchstrip Fingerprint Sensor&lt;br /&gt;
Bus 001 Device 003: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub&lt;br /&gt;
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub&lt;br /&gt;
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Key table ===&lt;br /&gt;
This table was prepared ''before'' keys were remapped as discussed elsewhere on this page.&lt;br /&gt;
&lt;br /&gt;
References:&lt;br /&gt;
* [https://wiki.ubuntu.com/Hotkeys Hotkey architecture in Ubuntu]&lt;br /&gt;
* [https://wiki.ubuntu.com/Hotkeys/Troubleshooting Hotkey troubleshooting instructions]&lt;br /&gt;
* &amp;lt;tt&amp;gt;/usr/include/linux/input.h&amp;lt;/tt&amp;gt; -- list of Linux key codes&lt;br /&gt;
* [[Default meanings of special keys]]&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
! Key combination !! Extra function symbol !! ACPI event&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;acpi_listen&amp;lt;/tt&amp;gt;) !! Scan code&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;showkey&amp;amp;nbsp;-s&amp;lt;/tt&amp;gt;)&amp;lt;br&amp;gt;&amp;lt;i&amp;gt;(hex)&amp;lt;/i&amp;gt; !! Linux key code&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;showkey&amp;amp;nbsp;-k&amp;lt;/tt&amp;gt;) !! Input event&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;input-events&amp;lt;/tt&amp;gt;) !! ... on input device(*) !! X KeyCode&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;xev&amp;lt;/tt&amp;gt;) !! Keyboard Shortcuts name&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F4E2;&amp;amp;#x20E5;}} (loudspeaker icon with stroke) || || (none) || down: e0 20&amp;lt;br&amp;gt;up: e0 a0 || 113 || KEY_MIN_INTERESTING (0x71) || 3 || 121 || XF86AudioMute&lt;br /&gt;
|-&lt;br /&gt;
| {{key|−&amp;amp;#x1F4E2;}} (minus sign, loudspeaker icon) || || (none) || down: e0 2e&amp;lt;br&amp;gt;up: e0 ae || 114 || KEY_VOLUMEDOWN (0x72) || 3 ||122 || XF86AudioLowerVolume&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F4E2;+}} (loudspeaker icon, plus sign)  || || (none) || down: e0 30&amp;lt;br&amp;gt;up: e0 b0 || 115 || KEY_VOLUMEUP (0x73) || 3 || 123 || XF86AudioRaiseVolume&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F3A4;&amp;amp;#x20E5;}} (microphone icon with stroke)  || || ibm/hotkey HKEY 00000080 0000101b || (none) || 240 (rop) || KEY_UNKNOWN (0xf0) || 6 || 248 || &amp;quot;∅&amp;quot; (sic)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|ThinkVantage|#495988}}                   || || ibm/hotkey HKEY 00000080 00001018 || down: e0 1f e0 9f || 148 (rop) || KEY_PROG1 (0x94) || 6 || 156 || XF86Launch1&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}                             || || (none) || up: e0 63 e0 e3 || 143 || KEY_WAKEUP (0x8f) || 3 || 151 || XF86WakeUp&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F1|#494949}}       || || ibm/hotkey HKEY 00000080 00001001 || (none) || 466 (rop) || KEY_FN_F1 (0x1d2) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F2|#494949}}       || &amp;amp;#x1F512; (padlock symbol) || ibm/hotkey HKEY 00000080 00001002 || down: e0 12 e0 92 || 152 (rop) || KEY_SCREENLOCK (0x98) || 6 || 160 || XF86ScreenSaver&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F3|#494949}}       || &amp;amp;#x1F50B; (battery symbol) || ibm/hotkey HKEY 00000080 00001003 || down: e0 71 e0 f1 || 236 (rop) || KEY_BATTERY (0xec) || 6 || 244 || XF86Battery&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F4|#494949}}       || ☾ || ibm/hotkey HKEY 00000080 00001004 || down: e0 5f e0 df&amp;lt;br&amp;gt;(but sometimes nothing) || 142 (rop) || KEY_SLEEP (0x8e) || 6 || 150 || XF86Sleep&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F5|#494949}}       || &amp;amp;#x2E28;&amp;amp;#x1F4BB;&amp;amp;#x2E29; (radiating computer symbol) || ibm/hotkey HKEY 00000080 00001005 || down: e0 73 e0 f3 || 238 (rop) || KEY_WLAN (0xee) || 6 || 246 || XF86WLAN&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F6|#494949}}       || (camera, headset) || ibm/hotkey HKEY 00000080 00001006 || down: e0 3b e0 bb || 212 (rop) || KEY_CAMERA (0xd4) || 6 || 220 || XF86WebCam&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F7|#494949}}       || &amp;amp;#x1F4BB;&amp;amp;#x239A; (computer symbol, screen symbol) || ibm/hotkey HKEY 00000080 00001007 || down: e0 56 e0 d6 || 227 (rop) || KEY_SWITCHVIDEOMODE (0xe3) || 6 || 235 || XF86Display&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F8|#494949}}       || (trackpoint symbol, vertical bar, trackpad symbol) || ibm/hotkey HKEY 00000080 00001008 || down: e0 74 e0 f4 || 191 (rop) || KEY_F21 (0xbf) || 6 || 199 || XF86TouchpadToggle&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F9|#494949}}       || || ibm/hotkey HKEY 00000080 00001009 || down: 6f ef || 194 (rop) || KEY_F24 (0xc2) || 6 || 202 || &amp;quot;Ê&amp;quot; (sic)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F10|#494949}}      || || (none) || (none) || || (none) || || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F11|#494949}}      || || ibm/hotkey HKEY 00000080 0000100b || (none) || 476 (rop) || KEY_FN_F11 (0x1dc) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F12|#494949}}      || &amp;amp;#x1F4BB;&amp;amp;nbsp;&amp;amp;#x25B6;&amp;amp;#x274D; (computer symbol, right arrowhead, diskpack symbol) || ibm/hotkey HKEY 00000080 0000100c || down: e0 25 e0 a5&amp;lt;br&amp;gt;(but sometimes nothing) || 205 (rop) || KEY_SUSPEND (0xcd) || 6 || 213 || XF86Suspend&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|Home|#494949}}     || ☀▴ || ibm/hotkey HKEY 00000080 00001010 and video LCD0 00000086 00000000 || down: e0 54 e0 d4 e0 54 e0 d4 || 225 (double) (rop) || KEY_BRIGHTNESSUP (0xe1) || 4, 6 || 233 || XF86MonBrightnessUp&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|End|#494949}}      || ☀▾ || ibm/hotkey HKEY 00000080 00001011 and  video LCD0 00000087 00000000 || down: e0 4c e0 cc e0 4c e0 cc || 224 (double) (rop) || KEY_BRIGHTNESSDOWN (0xe0) || 4, 6 || 232 || XF86MonBrightnessDown&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|PgUp|#494949}}     || (illuminating overhead lamp symbol) || (none) || (none) || (none) || (none) || (none) || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|Space|#494949}}    || [&amp;amp;#x1F50D;+] (screen with magnifying glass symbol and plus sign, i.e., &amp;quot;zoom&amp;quot; symbol) || ibm/hotkey HKEY 00000080 00001014 || (none) || 372 (rop) || KEY_ZOOM (0x174) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|→|#494949}}        || &amp;amp;#x23ED; (barred right arrowhead, i.e., &amp;quot;next&amp;quot; symbol) || (none) || down: e0 19&amp;lt;br&amp;gt;up: e0 99 || 163 || KEY_NEXTSONG (0xa3) || 3 || 171 || XF86AudioNext&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|↓|#494949}}        || &amp;amp;#x23EF; (right arrowhead, double bar, i.e., &amp;quot;play/pause&amp;quot; symbol) || (none) || down: e0 22&amp;lt;br&amp;gt;up: e0 a2 || 164 || KEY_PLAYPAUSE (0xa4) || 3 || 172 || XF86AudioPlay&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|←|#494949}}        || &amp;amp;#x23EE; (barred left arrowhead, i.e., &amp;quot;prev&amp;quot; symbol) || (none) || down: e0 10&amp;lt;br&amp;gt;up: e0 90 || 165 || KEY_PREVIOUSSONG (0xa5) || 3 || 173 || XF86AudioPrev&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|↑|#494949}}        || ∎ (&amp;quot;stop play&amp;quot; symbol) || (none) || down: e0 24&amp;lt;br&amp;gt;up: e0 a4 || 166 || KEY_STOPCD (0xa6) || 3 || 174 || XF86AudioStop&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|◂ ⎗|#494949}} (left arrowhead, page icon) || || (none) || down: e0 6a&amp;lt;br&amp;gt;up: e0 ea || 158 || KEY_BACK (0x9e) || 3 || 166 || XF86Back&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|⎘ ▸|#494949}} (page icon, right arrowhead) || || (none) || down: e0 69&amp;lt;br&amp;gt;up: e0 e9 || 159 || KEY_FORWARD (0x9f) || 3 || 167 || XF86Forward&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
In the Linux key code column, &amp;quot;rop&amp;quot; means &amp;quot;release on press&amp;quot;, i.e., the release event is generated at the same time as the press event.&lt;br /&gt;
&lt;br /&gt;
The button on the UltraBase doesn't seem to generate any events visible to userspace.&lt;br /&gt;
&lt;br /&gt;
Input device numbers and types as reported by &amp;lt;tt&amp;gt;lsinput&amp;lt;/tt&amp;gt;:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
|+ (*) /dev/input/event&amp;lt;i&amp;gt;n&amp;lt;/i&amp;gt;&lt;br /&gt;
! n !! name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || &amp;quot;Lid Switch&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 1 || &amp;quot;Sleep Button&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 2 || &amp;quot;Power Button&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 3 || &amp;quot;AT Translated Set @ keyboard&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 4 || &amp;quot;Video Bus&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 5 || &amp;quot;Integrated Camera&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 6 || &amp;quot;ThinkPad Extra Buttons&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 7 || &amp;quot;SynPS/2 Synaptics TouchPad&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 8 || &amp;quot;TPPS/2 IBM TrackPoint&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Hotkey mask when the above table was compiled:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_mask&lt;br /&gt;
0x078dffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_all_mask&lt;br /&gt;
0x07ffffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_recommended_mask&lt;br /&gt;
0x078dffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_report_mode&lt;br /&gt;
1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Accessories ==&lt;br /&gt;
Accessories I purchased for this laptop:&lt;br /&gt;
* [[ThinkPad UltraBase Series 3]] with built-in [[Serial Ultrabay Slim]]&lt;br /&gt;
* [[Serial Ultrabay Slim DVD Multi IV Drive]]&lt;br /&gt;
* [[ThinkPad Mini Dock Series 3]] 433710U which comes with a 90W power supply&lt;br /&gt;
* 1.95Ah battery 42T4901&lt;br /&gt;
* 8.4Ah battery 42T4942&lt;br /&gt;
&lt;br /&gt;
== Configuration and solved problems ==&lt;br /&gt;
&lt;br /&gt;
=== Fingerprint reader ===&lt;br /&gt;
See [[How to enable integrated fingerprint reader with fprint|how to enable the integrated fingerprint reader with fprint]].&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.freedesktop.org/show_bug.cgi?id=11227 hotkey shortcomings] ===&lt;br /&gt;
(Updated November 2011 for Oneiric.)&lt;br /&gt;
&lt;br /&gt;
By default the &amp;quot;zoom&amp;quot; (Fn-Space) and &amp;quot;microphone-mute&amp;quot; (button next to the ThinkVantage button) hotkeys do nothing.&lt;br /&gt;
&lt;br /&gt;
'''Zoom''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module, kernel and &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; map the zoom key's ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 00001014&amp;lt;/tt&amp;gt;) to input event &amp;lt;tt&amp;gt;KEY_ZOOM&amp;lt;/tt&amp;gt; whose numerical value, 372, is greater than 255, the highest key-event code that X can handle.&lt;br /&gt;
&lt;br /&gt;
'''Micmute''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module and kernel generate an ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 0000101b&amp;lt;/tt&amp;gt;) for the microphone mute button but in releases earlier than precise this is not mapped to anything; in precise it is mapped to 256 which is also greater than 255, the highest that X can handle.&lt;br /&gt;
&lt;br /&gt;
The fault lies with X which can't handle key codes above 255.  But as discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/313514 here], it may be a long time before this gets fixed in X.&lt;br /&gt;
&lt;br /&gt;
There is a fairly easy workaround.&lt;br /&gt;
Install version 175 or later of the &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; package and do the following.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# sudo su&lt;br /&gt;
# mkdir /etc/udev/keymaps&lt;br /&gt;
# cp /lib/udev/keymaps/module-lenovo /etc/udev/keymaps&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now edit &amp;lt;tt&amp;gt;/etc/udev/keymaps/module-lenovo&amp;lt;/tt&amp;gt; so that 0x13 and 0x1A get mapped to &amp;lt;tt&amp;gt;search&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;prog2&amp;lt;/tt&amp;gt;, respectively (instead of &amp;lt;tt&amp;gt;zoom&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;micmute&amp;lt;/tt&amp;gt;, respectively).&lt;br /&gt;
&lt;br /&gt;
Then in System Settings | Keyboard | Shortcuts assign a behavior to the &amp;lt;tt&amp;gt;XF86Search&amp;lt;/tt&amp;gt; event, the X event corresponding to &amp;lt;tt&amp;gt;search&amp;lt;/tt&amp;gt;. This behavior will be invoked by Fn-Space.&lt;br /&gt;
&lt;br /&gt;
There is no built-in function for muting the microphone but it is straightforward to concoct one using &amp;lt;tt&amp;gt;amixer&amp;lt;/tt&amp;gt;.&lt;br /&gt;
In Keyboard | Shortcuts select Custom Shortcuts and press &amp;lt;tt&amp;gt;+&amp;lt;/tt&amp;gt; to create a new shortcut named &amp;quot;Microphone mute&amp;quot; whose command-content is the following.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sh -c &amp;quot;if amixer get Capture,0 | grep -q '\[on\]' ; then amixer -q set Capture,0 nocap ; else amixer -q set Capture,0 cap; fi&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Assign this to &amp;lt;tt&amp;gt;XF86Launch2&amp;lt;/tt&amp;gt; which is the X event corresponding to input event &amp;lt;tt&amp;gt;prog2&amp;lt;/tt&amp;gt;. This behavior will be invoked by the microphone-mute key.&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/486154 the known no-system-beep problem] ===&lt;br /&gt;
As I described in more detail [[Installing Ubuntu 9.10 (Karmic Koala) on a ThinkPad X61#Partially solved problem: No beep|earlier]]:&lt;br /&gt;
* Create &amp;lt;tt&amp;gt;.xprofile&amp;lt;/tt&amp;gt; containing&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and at &amp;lt;tt&amp;gt;desktop | gnome | peripherals | keyboard&amp;lt;/tt&amp;gt; change the value of &amp;lt;tt&amp;gt;bell_mode&amp;lt;/tt&amp;gt; from &amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt; to &amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* If the default bell volume of 50 (percent) is not loud enough, add a line like the following to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
xset b 100&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* To cause terminal bells to ring also in non-X terminals (e.g., the console terminal), comment out the &amp;lt;tt&amp;gt;blacklist pcspkr&amp;lt;/tt&amp;gt; line in &amp;lt;tt&amp;gt;/etc/modprobe.d/blacklist.conf&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Fix for &amp;quot;[drm:i915_hangcheck_ring_idle] *ERROR* Hangcheck timer elapsed... blt ring idle...&amp;quot; problem ===&lt;br /&gt;
To fix [https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/761065 this known problem] upgrade the kernel: install the &amp;lt;tt&amp;gt;linux-image-2.6.38-11-generic&amp;lt;/tt&amp;gt; package and reboot.&lt;br /&gt;
&lt;br /&gt;
=== [[Tp smapi|tp-smapi]] loading ===&lt;br /&gt;
First, it is as usual necessary to add&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tp-smapi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt; so that &amp;lt;tt&amp;gt;modoprobe&amp;lt;/tt&amp;gt; will attempt to load the module at boot time.&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
Having loaded &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; do:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Result:&lt;br /&gt;
&lt;br /&gt;
[[Image:ThinkPad_X220_running_hdaps-gl.jpg|Tilted ThinkPad X220 running hdaps-gl|300px]]&lt;br /&gt;
&lt;br /&gt;
=== Miscellaneous configuration ===&lt;br /&gt;
* Having installed bare Ubuntu I had to run &amp;lt;tt&amp;gt;tasksel&amp;lt;/tt&amp;gt; and select at least &amp;quot;Ubuntu Desktop&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* In order to allow NetworkManager to manage eth0 I had to comment out the &amp;quot;eth0&amp;quot; stanza in &amp;lt;tt&amp;gt;/etc/network/interfaces&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* I used System Settings | Ubuntu Software Center to install &amp;lt;tt&amp;gt;ccsm&amp;lt;/tt&amp;gt; (&amp;quot;Advanced Desktop Effects Settings&amp;quot;) so I could enable Wobbly Windows and so I can initiate window resize with Alt+Button3 which is easier than the default Alt-Button2 (i.e., Alt-scrollwheelbutton).&lt;br /&gt;
&lt;br /&gt;
* Add PPAs to apt sources list for additional indicators&lt;br /&gt;
&lt;br /&gt;
=== Unity automaximizes ===&lt;br /&gt;
To disable this (annoying) behavior, run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
== Ex-problems ==&lt;br /&gt;
=== Suspend causes kernel panic ===&lt;br /&gt;
&amp;quot;Suspend-to-RAM and brightness control of the display work with kernel &amp;gt;= 3.0-rc6&amp;quot; according to [[Installing Gentoo on a ThinkPad X220|this fellow]].&lt;br /&gt;
&lt;br /&gt;
Since I upgraded to kernel 2.6.38-11-generic I haven't had any kernel panics on suspend.&lt;br /&gt;
&lt;br /&gt;
=== TPM can't be used ===&lt;br /&gt;
To try it out, install &amp;lt;tt&amp;gt;tpm-tools&amp;lt;/tt&amp;gt;.  &lt;br /&gt;
&lt;br /&gt;
When I first tried it, the &amp;lt;tt&amp;gt;tpm_version&amp;lt;/tt&amp;gt; program failed with &amp;quot;Communication failure&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
But now it prints this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  TPM 1.2 Version Info:&lt;br /&gt;
  Chip Version:        1.2.8.32&lt;br /&gt;
  Spec Level:          2&lt;br /&gt;
  Errata Revision:     3&lt;br /&gt;
  TPM Vendor ID:       STM &lt;br /&gt;
  TPM Version:         01010000&lt;br /&gt;
  Manufacturer Info:   53544d20&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Presumably the new kernel fixed this.&lt;br /&gt;
&lt;br /&gt;
=== memtest86+ didn't work ===&lt;br /&gt;
&lt;br /&gt;
Upgrading to the oneiric version, v4.20, fixed this.&lt;br /&gt;
&lt;br /&gt;
=== Multiple monitors ===&lt;br /&gt;
Configuring an extended desktop over two monitors led to malfunction.  Side-by-side worked, one above the other did not.&lt;br /&gt;
&lt;br /&gt;
In natty the solution was just to avoid the layouts that caused the malfunction.&lt;br /&gt;
&lt;br /&gt;
The problems appear to have been completely solved in Ubuntu 11.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
=== Bluetooth-related crashes ===&lt;br /&gt;
Switching bluetooth on or off either using the indicator or Fn-F5 sometimes crashed the machine.&lt;br /&gt;
&lt;br /&gt;
I haven't seen this problem in Ubuntu 10.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
=== [[Tp smapi|tp-smapi]] loading problem ===&lt;br /&gt;
The distributed &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; modules didn't load on my X220&lt;br /&gt;
and &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; reported the EC firmware number as &amp;quot;unknown&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The BIOS setup program reports this information about the BIOS:&lt;br /&gt;
* Model 42902WG&lt;br /&gt;
* UEFI BIOS 8DET46WW (1.16) 2011-05-18&lt;br /&gt;
* Embedded Controller 8DHT23WW (1.07)&lt;br /&gt;
&lt;br /&gt;
This problem was fixed in &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; version 0.41-1.  As of 7 August 2011 &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; is available in Debian unstable (Ubuntu uses Debian &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; packages with no changes) and this is the version in Ubuntu 11.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
Output from &amp;lt;tt&amp;gt;dmesg&amp;lt;/tt&amp;gt; after &amp;lt;tt&amp;gt;modprobe&amp;lt;/tt&amp;gt;ing &amp;lt;tt&amp;gt;thinkpad-ec&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[  714.842090] thinkpad_ec: thinkpad_ec 0.41 loaded.&lt;br /&gt;
[  721.983409] tp_smapi 0.41 loading...&lt;br /&gt;
[  721.984742] tp_smapi successfully loaded (smapi_port=0xb2).&lt;br /&gt;
[  729.462533] hdaps: LENOVO ThinkPad X220 detected, setting orientation 4&lt;br /&gt;
[  729.462894] hdaps: initial mode latch is 0x05&lt;br /&gt;
[  729.463022] hdaps: setting ec_rate=250, filter_order=2&lt;br /&gt;
[  729.463242] hdaps: device successfully initialized.&lt;br /&gt;
[  729.463799] input: ThinkPad HDAPS joystick emulation as /devices/virtual/input/input15&lt;br /&gt;
[  729.464101] input: ThinkPad HDAPS accelerometer data as /devices/virtual/input/input16&lt;br /&gt;
[  729.464342] hdaps: driver successfully loaded.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Modinfo:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ modinfo tp-smapi&lt;br /&gt;
filename:       /lib/modules/2.6.38-11-generic/updates/dkms/tp_smapi.ko&lt;br /&gt;
license:        GPL&lt;br /&gt;
version:        0.41&lt;br /&gt;
description:    ThinkPad SMAPI Support&lt;br /&gt;
author:         Shem Multinymous&lt;br /&gt;
srcversion:     B6841670771B2FF5222BFFD&lt;br /&gt;
depends:        thinkpad_ec&lt;br /&gt;
vermagic:       2.6.38-11-generic SMP mod_unload modversions &lt;br /&gt;
parm:           debug:Debug level (0=off, 1=on) (int)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Remaining problems ==&lt;br /&gt;
&lt;br /&gt;
=== Indicator lamp on microphone mute key doesn't work ===&lt;br /&gt;
The problem has been discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/linux/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
== Comparison with [[Installing Ubuntu 10.10 (Maverick Meerkat) on a ThinkPad X220|a Ubuntu 10.10 user's experience]] ==&lt;br /&gt;
* (improvements)&lt;br /&gt;
** I didn't have to do anything special to have the &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module loaded or use special keys&lt;br /&gt;
** The mute-microphone button can be made to work as described above&lt;br /&gt;
** Both left and right microphones are seen&lt;br /&gt;
** I have no difficulties with the fans&lt;br /&gt;
** I have no difficulties with SD cards&lt;br /&gt;
** The &amp;quot;Hangcheck timer elapsed&amp;quot; problem has been fixed in a new kernel version, as described above&lt;br /&gt;
&lt;br /&gt;
== Things to remember ==&lt;br /&gt;
To get Google Earth to work you have to do&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libgl1-mesa-glx:i386&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Ubuntu 11.04]][[Category:Ubuntu 11.10]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_11.04_(Natty_Narwhal)_on_a_ThinkPad_X220&amp;diff=53661</id>
		<title>Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_11.04_(Natty_Narwhal)_on_a_ThinkPad_X220&amp;diff=53661"/>
		<updated>2012-05-16T08:41:25Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: /* Things to look into */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 11.04 (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
I have since upgraded to Ubuntu 11.10 (Oneiric Ocelot) and have updated some of the information below accordingly.&lt;br /&gt;
&lt;br /&gt;
== Netboot ==&lt;br /&gt;
As a source of network installation files I made use of another GNU/Linux computer on my home LAN&lt;br /&gt;
which is connected to the Internet through a familiar ADSL-modem/gateway/router/caching nameserver/DHCP server (call it &amp;quot;the gateway&amp;quot;) at address 172.19.3.1.&lt;br /&gt;
The gateway's DHCP server issues leases in the range 172.19.3.2 to 172.19.3.100.&lt;br /&gt;
&lt;br /&gt;
First I set up the &amp;quot;source&amp;quot; machine, in my case one which already also had Ubuntu 11.04 installed.&lt;br /&gt;
It has address 172.19.3.7 (assigned to it by the gateway's DHCP server).&lt;br /&gt;
For the X220 to boot from it the machine needs to run a DHCP server and a TFTP server.&lt;br /&gt;
The DHCP server serves only this special purpose since, as I mentioned, the gateway is the network's main DHCP server.&lt;br /&gt;
The source's DHCP server must be so configured that it doesn't conflict with the existing DHCP server.&lt;br /&gt;
&lt;br /&gt;
Install the &amp;lt;tt&amp;gt;isc-dhcp-server&amp;lt;/tt&amp;gt; package and edit &amp;lt;tt&amp;gt;/etc/dhcp/dhcpd.conf&amp;lt;/tt&amp;gt; using the following as a model.&lt;br /&gt;
I am not sure that every line is needed, but this worked for me.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ddns-update-style none;&lt;br /&gt;
option domain-name-servers 172.19.3.1;  # This is the address of my gateway&lt;br /&gt;
option routers 172.19.3.1;              # This is the address of my gateway&lt;br /&gt;
option subnet-mask 255.255.0.0;         # This is the netmask of my home network&lt;br /&gt;
default-lease-time 600;&lt;br /&gt;
max-lease-time 7200;&lt;br /&gt;
allow booting;&lt;br /&gt;
allow bootp;&lt;br /&gt;
&lt;br /&gt;
subnet 172.19.3.0 netmask 255.255.255.0 {&lt;br /&gt;
  range 172.19.3.220 172.19.3.229;      # This is a range separate from the one used by the gateway and includes the address below&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
group {&lt;br /&gt;
  next-server 172.19.3.7;               # This is the address of the &amp;quot;source&amp;quot;&lt;br /&gt;
  host trawsfynydd {                    # 'trawsfynydd' is the name I chose for my X220&lt;br /&gt;
    hardware ethernet f0:de:f1:6b:22:bf; # This is the Ethernet address of the X220&lt;br /&gt;
    fixed-address 172.19.3.220;         # This is an address in the range as defined above&lt;br /&gt;
    filename &amp;quot;/pxelinux.0&amp;quot;;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now install the &amp;lt;tt&amp;gt;tftpd-hpa&amp;lt;/tt&amp;gt; package, download the network installation tarball and untar it into the location whence &amp;lt;tt&amp;gt;tftpd&amp;lt;/tt&amp;gt; serves files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /tmp&lt;br /&gt;
$ wget http://archive.ubuntu.com/ubuntu/dists/natty/main/installer-amd64/current/images/netboot/netboot.tar.gz&lt;br /&gt;
$ cd /var/lib/tftpboot&lt;br /&gt;
$ sudo tar zxf /tmp/netboot.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second set up the X220 for PXE (Pre-boot eXecution Environment).&lt;br /&gt;
* Switch on the X220 and press F1.  ThinkPad Setup starts.&lt;br /&gt;
* Set Config | Network | Ethernet LAN Option ROM to &amp;quot;Enabled&amp;quot;.&lt;br /&gt;
* Select Startup | Boot; select &amp;quot;PCI LAN IBA GE Slot...&amp;quot; and use the [+] key to move it to the top of the boot priority order&lt;br /&gt;
* Press F10 to save and exit.&lt;br /&gt;
&lt;br /&gt;
Voilà, the X220 boots the Ubuntu installer.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
I won't describe the Ubuntu installer.&lt;br /&gt;
I'll just mention some little problems I had.&lt;br /&gt;
&lt;br /&gt;
''First'', when it came time to resize the existing (ntfs) partition the partitioner asked what size I would like for &amp;quot;this partition&amp;quot;.  Did it mean the to-be-resized ntfs partition or the new ext4 partition?  &lt;br /&gt;
&lt;br /&gt;
Turns out it meant: the to-be-resized ntfs partition, so the suggested &amp;quot;max&amp;quot; selection was the opposite of what I wanted.&lt;br /&gt;
&lt;br /&gt;
''Second'', when I selected (only) the &amp;quot;Ubuntu desktop&amp;quot; task the installation reported failure without explaining what had gone wrong.&lt;br /&gt;
&lt;br /&gt;
I de-selected all tasks and the installation succeeded.&lt;br /&gt;
&lt;br /&gt;
''Third'', after reboot the screen came up black.&lt;br /&gt;
&lt;br /&gt;
I pressed CTRL-ALT-F1 to get the system console so I could log in.&lt;br /&gt;
&lt;br /&gt;
After logging in I ran &amp;lt;tt&amp;gt;tasksel&amp;lt;/tt&amp;gt; and installed &amp;quot;Ubuntu desktop&amp;quot; and this time no failure was reported.&lt;br /&gt;
&lt;br /&gt;
== Information ==&lt;br /&gt;
&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
&lt;br /&gt;
Originally:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BIOS Version: 8DET46WW (1.16)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
From Windows 7 I ran Lenovo ThinkVantage Tools to upgrade the BIOS.  Now:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BIOS Version: 8DET51WW (1.21)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== dmidecode ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# dmidecode -s system-manufacturer&lt;br /&gt;
LENOVO&lt;br /&gt;
# dmidecode -s system-product-name&lt;br /&gt;
42902WG&lt;br /&gt;
# dmidecode -s system-version&lt;br /&gt;
ThinkPad X220&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== /proc/cpuinfo ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
processor	: 0&lt;br /&gt;
vendor_id	: GenuineIntel&lt;br /&gt;
cpu family	: 6&lt;br /&gt;
model		: 42&lt;br /&gt;
model name	: Intel(R) Core(TM) i5-2540M CPU @ 2.60GHz&lt;br /&gt;
stepping	: 7&lt;br /&gt;
cpu MHz		: 800.000&lt;br /&gt;
cache size	: 3072 KB&lt;br /&gt;
physical id	: 0&lt;br /&gt;
siblings	: 4&lt;br /&gt;
core id		: 0&lt;br /&gt;
cpu cores	: 2&lt;br /&gt;
apicid		: 0&lt;br /&gt;
initial apicid	: 0&lt;br /&gt;
fpu		: yes&lt;br /&gt;
fpu_exception	: yes&lt;br /&gt;
cpuid level	: 13&lt;br /&gt;
wp		: yes&lt;br /&gt;
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 x2apic popcnt aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dts tpr_shadow vnmi flexpriority ept vpid&lt;br /&gt;
bogomips	: 5182.27&lt;br /&gt;
clflush size	: 64&lt;br /&gt;
cache_alignment	: 64&lt;br /&gt;
address sizes	: 36 bits physical, 48 bits virtual&lt;br /&gt;
power management:&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== lspci ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09)&lt;br /&gt;
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)&lt;br /&gt;
00:16.0 Communication controller: Intel Corporation 6 Series Chipset Family MEI Controller #1 (rev 04)&lt;br /&gt;
00:19.0 Ethernet controller: Intel Corporation 82579LM Gigabit Network Connection (rev 04)&lt;br /&gt;
00:1a.0 USB Controller: Intel Corporation 6 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)&lt;br /&gt;
00:1b.0 Audio device: Intel Corporation 6 Series Chipset Family High Definition Audio Controller (rev 04)&lt;br /&gt;
00:1c.0 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 1 (rev b4)&lt;br /&gt;
00:1c.1 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 2 (rev b4)&lt;br /&gt;
00:1c.3 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 4 (rev b4)&lt;br /&gt;
00:1c.4 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 5 (rev b4)&lt;br /&gt;
00:1d.0 USB Controller: Intel Corporation 6 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)&lt;br /&gt;
00:1f.0 ISA bridge: Intel Corporation 6 Series Chipset Family LPC Controller (rev 04)&lt;br /&gt;
00:1f.2 SATA controller: Intel Corporation 6 Series Chipset Family 6 port SATA AHCI Controller (rev 04)&lt;br /&gt;
00:1f.3 SMBus: Intel Corporation 6 Series Chipset Family SMBus Controller (rev 04)&lt;br /&gt;
03:00.0 Network controller: Intel Corporation Centrino Advanced-N 6205 (rev 34)&lt;br /&gt;
0d:00.0 System peripheral: Ricoh Co Ltd Device e823 (rev 04)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== lsusb ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub&lt;br /&gt;
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub&lt;br /&gt;
Bus 001 Device 006: ID 04f2:b217 Chicony Electronics Co., Ltd &lt;br /&gt;
Bus 001 Device 005: ID 0a5c:217f Broadcom Corp. Bluetooth Controller&lt;br /&gt;
Bus 001 Device 004: ID 147e:2016 Upek Biometric Touchchip/Touchstrip Fingerprint Sensor&lt;br /&gt;
Bus 001 Device 003: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub&lt;br /&gt;
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub&lt;br /&gt;
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Key table ===&lt;br /&gt;
This table was prepared ''before'' keys were remapped as discussed elsewhere on this page.&lt;br /&gt;
&lt;br /&gt;
References:&lt;br /&gt;
* [https://wiki.ubuntu.com/Hotkeys Hotkey architecture in Ubuntu]&lt;br /&gt;
* [https://wiki.ubuntu.com/Hotkeys/Troubleshooting Hotkey troubleshooting instructions]&lt;br /&gt;
* &amp;lt;tt&amp;gt;/usr/include/linux/input.h&amp;lt;/tt&amp;gt; -- list of Linux key codes&lt;br /&gt;
* [[Default meanings of special keys]]&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
! Key combination !! Extra function symbol !! ACPI event&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;acpi_listen&amp;lt;/tt&amp;gt;) !! Scan code&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;showkey&amp;amp;nbsp;-s&amp;lt;/tt&amp;gt;)&amp;lt;br&amp;gt;&amp;lt;i&amp;gt;(hex)&amp;lt;/i&amp;gt; !! Linux key code&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;showkey&amp;amp;nbsp;-k&amp;lt;/tt&amp;gt;) !! Input event&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;input-events&amp;lt;/tt&amp;gt;) !! ... on input device(*) !! X KeyCode&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;xev&amp;lt;/tt&amp;gt;) !! Keyboard Shortcuts name&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F4E2;&amp;amp;#x20E5;}} (loudspeaker icon with stroke) || || (none) || down: e0 20&amp;lt;br&amp;gt;up: e0 a0 || 113 || KEY_MIN_INTERESTING (0x71) || 3 || 121 || XF86AudioMute&lt;br /&gt;
|-&lt;br /&gt;
| {{key|−&amp;amp;#x1F4E2;}} (minus sign, loudspeaker icon) || || (none) || down: e0 2e&amp;lt;br&amp;gt;up: e0 ae || 114 || KEY_VOLUMEDOWN (0x72) || 3 ||122 || XF86AudioLowerVolume&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F4E2;+}} (loudspeaker icon, plus sign)  || || (none) || down: e0 30&amp;lt;br&amp;gt;up: e0 b0 || 115 || KEY_VOLUMEUP (0x73) || 3 || 123 || XF86AudioRaiseVolume&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F3A4;&amp;amp;#x20E5;}} (microphone icon with stroke)  || || ibm/hotkey HKEY 00000080 0000101b || (none) || 240 (rop) || KEY_UNKNOWN (0xf0) || 6 || 248 || &amp;quot;∅&amp;quot; (sic)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|ThinkVantage|#495988}}                   || || ibm/hotkey HKEY 00000080 00001018 || down: e0 1f e0 9f || 148 (rop) || KEY_PROG1 (0x94) || 6 || 156 || XF86Launch1&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}                             || || (none) || up: e0 63 e0 e3 || 143 || KEY_WAKEUP (0x8f) || 3 || 151 || XF86WakeUp&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F1|#494949}}       || || ibm/hotkey HKEY 00000080 00001001 || (none) || 466 (rop) || KEY_FN_F1 (0x1d2) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F2|#494949}}       || &amp;amp;#x1F512; (padlock symbol) || ibm/hotkey HKEY 00000080 00001002 || down: e0 12 e0 92 || 152 (rop) || KEY_SCREENLOCK (0x98) || 6 || 160 || XF86ScreenSaver&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F3|#494949}}       || &amp;amp;#x1F50B; (battery symbol) || ibm/hotkey HKEY 00000080 00001003 || down: e0 71 e0 f1 || 236 (rop) || KEY_BATTERY (0xec) || 6 || 244 || XF86Battery&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F4|#494949}}       || ☾ || ibm/hotkey HKEY 00000080 00001004 || down: e0 5f e0 df&amp;lt;br&amp;gt;(but sometimes nothing) || 142 (rop) || KEY_SLEEP (0x8e) || 6 || 150 || XF86Sleep&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F5|#494949}}       || &amp;amp;#x2E28;&amp;amp;#x1F4BB;&amp;amp;#x2E29; (radiating computer symbol) || ibm/hotkey HKEY 00000080 00001005 || down: e0 73 e0 f3 || 238 (rop) || KEY_WLAN (0xee) || 6 || 246 || XF86WLAN&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F6|#494949}}       || (camera, headset) || ibm/hotkey HKEY 00000080 00001006 || down: e0 3b e0 bb || 212 (rop) || KEY_CAMERA (0xd4) || 6 || 220 || XF86WebCam&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F7|#494949}}       || &amp;amp;#x1F4BB;&amp;amp;#x239A; (computer symbol, screen symbol) || ibm/hotkey HKEY 00000080 00001007 || down: e0 56 e0 d6 || 227 (rop) || KEY_SWITCHVIDEOMODE (0xe3) || 6 || 235 || XF86Display&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F8|#494949}}       || (trackpoint symbol, vertical bar, trackpad symbol) || ibm/hotkey HKEY 00000080 00001008 || down: e0 74 e0 f4 || 191 (rop) || KEY_F21 (0xbf) || 6 || 199 || XF86TouchpadToggle&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F9|#494949}}       || || ibm/hotkey HKEY 00000080 00001009 || down: 6f ef || 194 (rop) || KEY_F24 (0xc2) || 6 || 202 || &amp;quot;Ê&amp;quot; (sic)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F10|#494949}}      || || (none) || (none) || || (none) || || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F11|#494949}}      || || ibm/hotkey HKEY 00000080 0000100b || (none) || 476 (rop) || KEY_FN_F11 (0x1dc) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F12|#494949}}      || &amp;amp;#x1F4BB;&amp;amp;nbsp;&amp;amp;#x25B6;&amp;amp;#x274D; (computer symbol, right arrowhead, diskpack symbol) || ibm/hotkey HKEY 00000080 0000100c || down: e0 25 e0 a5&amp;lt;br&amp;gt;(but sometimes nothing) || 205 (rop) || KEY_SUSPEND (0xcd) || 6 || 213 || XF86Suspend&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|Home|#494949}}     || ☀▴ || ibm/hotkey HKEY 00000080 00001010 and video LCD0 00000086 00000000 || down: e0 54 e0 d4 e0 54 e0 d4 || 225 (double) (rop) || KEY_BRIGHTNESSUP (0xe1) || 4, 6 || 233 || XF86MonBrightnessUp&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|End|#494949}}      || ☀▾ || ibm/hotkey HKEY 00000080 00001011 and  video LCD0 00000087 00000000 || down: e0 4c e0 cc e0 4c e0 cc || 224 (double) (rop) || KEY_BRIGHTNESSDOWN (0xe0) || 4, 6 || 232 || XF86MonBrightnessDown&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|PgUp|#494949}}     || (illuminating overhead lamp symbol) || (none) || (none) || (none) || (none) || (none) || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|Space|#494949}}    || [&amp;amp;#x1F50D;+] (screen with magnifying glass symbol and plus sign, i.e., &amp;quot;zoom&amp;quot; symbol) || ibm/hotkey HKEY 00000080 00001014 || (none) || 372 (rop) || KEY_ZOOM (0x174) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|→|#494949}}        || &amp;amp;#x23ED; (barred right arrowhead, i.e., &amp;quot;next&amp;quot; symbol) || (none) || down: e0 19&amp;lt;br&amp;gt;up: e0 99 || 163 || KEY_NEXTSONG (0xa3) || 3 || 171 || XF86AudioNext&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|↓|#494949}}        || &amp;amp;#x23EF; (right arrowhead, double bar, i.e., &amp;quot;play/pause&amp;quot; symbol) || (none) || down: e0 22&amp;lt;br&amp;gt;up: e0 a2 || 164 || KEY_PLAYPAUSE (0xa4) || 3 || 172 || XF86AudioPlay&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|←|#494949}}        || &amp;amp;#x23EE; (barred left arrowhead, i.e., &amp;quot;prev&amp;quot; symbol) || (none) || down: e0 10&amp;lt;br&amp;gt;up: e0 90 || 165 || KEY_PREVIOUSSONG (0xa5) || 3 || 173 || XF86AudioPrev&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|↑|#494949}}        || ∎ (&amp;quot;stop play&amp;quot; symbol) || (none) || down: e0 24&amp;lt;br&amp;gt;up: e0 a4 || 166 || KEY_STOPCD (0xa6) || 3 || 174 || XF86AudioStop&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|◂ ⎗|#494949}} (left arrowhead, page icon) || || (none) || down: e0 6a&amp;lt;br&amp;gt;up: e0 ea || 158 || KEY_BACK (0x9e) || 3 || 166 || XF86Back&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|⎘ ▸|#494949}} (page icon, right arrowhead) || || (none) || down: e0 69&amp;lt;br&amp;gt;up: e0 e9 || 159 || KEY_FORWARD (0x9f) || 3 || 167 || XF86Forward&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
In the Linux key code column, &amp;quot;rop&amp;quot; means &amp;quot;release on press&amp;quot;, i.e., the release event is generated at the same time as the press event.&lt;br /&gt;
&lt;br /&gt;
The button on the UltraBase doesn't seem to generate any events visible to userspace.&lt;br /&gt;
&lt;br /&gt;
Input device numbers and types as reported by &amp;lt;tt&amp;gt;lsinput&amp;lt;/tt&amp;gt;:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
|+ (*) /dev/input/event&amp;lt;i&amp;gt;n&amp;lt;/i&amp;gt;&lt;br /&gt;
! n !! name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || &amp;quot;Lid Switch&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 1 || &amp;quot;Sleep Button&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 2 || &amp;quot;Power Button&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 3 || &amp;quot;AT Translated Set @ keyboard&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 4 || &amp;quot;Video Bus&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 5 || &amp;quot;Integrated Camera&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 6 || &amp;quot;ThinkPad Extra Buttons&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 7 || &amp;quot;SynPS/2 Synaptics TouchPad&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 8 || &amp;quot;TPPS/2 IBM TrackPoint&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Hotkey mask when the above table was compiled:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_mask&lt;br /&gt;
0x078dffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_all_mask&lt;br /&gt;
0x07ffffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_recommended_mask&lt;br /&gt;
0x078dffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_report_mode&lt;br /&gt;
1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Accessories ==&lt;br /&gt;
Accessories I purchased for this laptop:&lt;br /&gt;
* [[ThinkPad UltraBase Series 3]] with built-in [[Serial Ultrabay Slim]]&lt;br /&gt;
* [[Serial Ultrabay Slim DVD Multi IV Drive]]&lt;br /&gt;
* [[ThinkPad Mini Dock Series 3]] 433710U which comes with a 90W power supply&lt;br /&gt;
* 1.95Ah battery 42T4901&lt;br /&gt;
* 8.4Ah battery 42T4942&lt;br /&gt;
&lt;br /&gt;
== Configuration and solved problems ==&lt;br /&gt;
&lt;br /&gt;
=== Fingerprint reader ===&lt;br /&gt;
See [[How to enable integrated fingerprint reader with fprint|how to enable the integrated fingerprint reader with fprint]].&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.freedesktop.org/show_bug.cgi?id=11227 hotkey shortcomings] ===&lt;br /&gt;
(Updated November 2011 for Oneiric.)&lt;br /&gt;
&lt;br /&gt;
By default the &amp;quot;zoom&amp;quot; (Fn-Space) and &amp;quot;microphone-mute&amp;quot; (button next to the ThinkVantage button) hotkeys do nothing.&lt;br /&gt;
&lt;br /&gt;
'''Zoom''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module, kernel and &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; map the zoom key's ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 00001014&amp;lt;/tt&amp;gt;) to input event &amp;lt;tt&amp;gt;KEY_ZOOM&amp;lt;/tt&amp;gt; whose numerical value, 372, is greater than 255, the highest key-event code that X can handle.&lt;br /&gt;
&lt;br /&gt;
'''Micmute''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module and kernel generate an ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 0000101b&amp;lt;/tt&amp;gt;) for the microphone mute button but in releases earlier than precise this is not mapped to anything; in precise it is mapped to 256 which is also greater than 255, the highest that X can handle.&lt;br /&gt;
&lt;br /&gt;
The fault lies with X which can't handle key codes above 255.  But as discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/313514 here], it may be a long time before this gets fixed in X.&lt;br /&gt;
&lt;br /&gt;
There is a fairly easy workaround.&lt;br /&gt;
Install version 175 or later of the &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; package and do the following.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# sudo su&lt;br /&gt;
# mkdir /etc/udev/keymaps&lt;br /&gt;
# cp /lib/udev/keymaps/module-lenovo /etc/udev/keymaps&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now edit &amp;lt;tt&amp;gt;/etc/udev/keymaps/module-lenovo&amp;lt;/tt&amp;gt; so that 0x13 and 0x1A get mapped to &amp;lt;tt&amp;gt;search&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;prog2&amp;lt;/tt&amp;gt;, respectively (instead of &amp;lt;tt&amp;gt;zoom&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;micmute&amp;lt;/tt&amp;gt;, respectively).&lt;br /&gt;
&lt;br /&gt;
Then in System Settings | Keyboard | Shortcuts assign a behavior to the &amp;lt;tt&amp;gt;XF86Search&amp;lt;/tt&amp;gt; event, the X event corresponding to &amp;lt;tt&amp;gt;search&amp;lt;/tt&amp;gt;. This behavior will be invoked by Fn-Space.&lt;br /&gt;
&lt;br /&gt;
There is no built-in function for muting the microphone but it is straightforward to concoct one using &amp;lt;tt&amp;gt;amixer&amp;lt;/tt&amp;gt;.&lt;br /&gt;
In Keyboard | Shortcuts select Custom Shortcuts and press &amp;lt;tt&amp;gt;+&amp;lt;/tt&amp;gt; to create a new shortcut named &amp;quot;Microphone mute&amp;quot; whose command-content is the following.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sh -c &amp;quot;if amixer get Capture,0 | grep -q '\[on\]' ; then amixer -q set Capture,0 nocap ; else amixer -q set Capture,0 cap; fi&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Assign this to &amp;lt;tt&amp;gt;XF86Launch2&amp;lt;/tt&amp;gt; which is the X event corresponding to input event &amp;lt;tt&amp;gt;prog2&amp;lt;/tt&amp;gt;. This behavior will be invoked by the microphone-mute key.&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/486154 the known no-system-beep problem] ===&lt;br /&gt;
As I described in more detail [[Installing Ubuntu 9.10 (Karmic Koala) on a ThinkPad X61#Partially solved problem: No beep|earlier]]:&lt;br /&gt;
* Create &amp;lt;tt&amp;gt;.xprofile&amp;lt;/tt&amp;gt; containing&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and at &amp;lt;tt&amp;gt;desktop | gnome | peripherals | keyboard&amp;lt;/tt&amp;gt; change the value of &amp;lt;tt&amp;gt;bell_mode&amp;lt;/tt&amp;gt; from &amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt; to &amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* If the default bell volume of 50 (percent) is not loud enough, add a line like the following to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
xset b 100&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* To cause terminal bells to ring also in non-X terminals (e.g., the console terminal), comment out the &amp;lt;tt&amp;gt;blacklist pcspkr&amp;lt;/tt&amp;gt; line in &amp;lt;tt&amp;gt;/etc/modprobe.d/blacklist.conf&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Fix for &amp;quot;[drm:i915_hangcheck_ring_idle] *ERROR* Hangcheck timer elapsed... blt ring idle...&amp;quot; problem ===&lt;br /&gt;
To fix [https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/761065 this known problem] upgrade the kernel: install the &amp;lt;tt&amp;gt;linux-image-2.6.38-11-generic&amp;lt;/tt&amp;gt; package and reboot.&lt;br /&gt;
&lt;br /&gt;
=== Fix for [[Tp smapi|tp-smapi]] loading problem ===&lt;br /&gt;
First, it is as usual necessary to add&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tp-smapi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt; so that &amp;lt;tt&amp;gt;modoprobe&amp;lt;/tt&amp;gt; will attempt to load the module at boot time.&lt;br /&gt;
&lt;br /&gt;
But the distributed &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; modules don't load on my X220&lt;br /&gt;
and &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; reports the EC firmware number as &amp;quot;unknown&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The BIOS setup program reports this information about the BIOS:&lt;br /&gt;
* Model 42902WG&lt;br /&gt;
* UEFI BIOS 8DET46WW (1.16) 2011-05-18&lt;br /&gt;
* Embedded Controller 8DHT23WW (1.07)&lt;br /&gt;
&lt;br /&gt;
This problem has been fixed in &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; version 0.41-1.  As of 7 August 2011 &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; is available in Debian unstable (Ubuntu uses Debian &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; packages with no changes) and this is the version in Ubuntu 11.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
Output from &amp;lt;tt&amp;gt;dmesg&amp;lt;/tt&amp;gt; after &amp;lt;tt&amp;gt;modprobe&amp;lt;/tt&amp;gt;ing &amp;lt;tt&amp;gt;thinkpad-ec&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[  714.842090] thinkpad_ec: thinkpad_ec 0.41 loaded.&lt;br /&gt;
[  721.983409] tp_smapi 0.41 loading...&lt;br /&gt;
[  721.984742] tp_smapi successfully loaded (smapi_port=0xb2).&lt;br /&gt;
[  729.462533] hdaps: LENOVO ThinkPad X220 detected, setting orientation 4&lt;br /&gt;
[  729.462894] hdaps: initial mode latch is 0x05&lt;br /&gt;
[  729.463022] hdaps: setting ec_rate=250, filter_order=2&lt;br /&gt;
[  729.463242] hdaps: device successfully initialized.&lt;br /&gt;
[  729.463799] input: ThinkPad HDAPS joystick emulation as /devices/virtual/input/input15&lt;br /&gt;
[  729.464101] input: ThinkPad HDAPS accelerometer data as /devices/virtual/input/input16&lt;br /&gt;
[  729.464342] hdaps: driver successfully loaded.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Modinfo:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ modinfo tp-smapi&lt;br /&gt;
filename:       /lib/modules/2.6.38-11-generic/updates/dkms/tp_smapi.ko&lt;br /&gt;
license:        GPL&lt;br /&gt;
version:        0.41&lt;br /&gt;
description:    ThinkPad SMAPI Support&lt;br /&gt;
author:         Shem Multinymous&lt;br /&gt;
srcversion:     B6841670771B2FF5222BFFD&lt;br /&gt;
depends:        thinkpad_ec&lt;br /&gt;
vermagic:       2.6.38-11-generic SMP mod_unload modversions &lt;br /&gt;
parm:           debug:Debug level (0=off, 1=on) (int)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
Having loaded &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; do:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Result:&lt;br /&gt;
&lt;br /&gt;
[[Image:ThinkPad_X220_running_hdaps-gl.jpg|Tilted ThinkPad X220 running hdaps-gl|300px]]&lt;br /&gt;
&lt;br /&gt;
=== Miscellaneous configuration ===&lt;br /&gt;
* Having installed bare Ubuntu I had to run &amp;lt;tt&amp;gt;tasksel&amp;lt;/tt&amp;gt; and select at least &amp;quot;Ubuntu Desktop&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* In order to allow NetworkManager to manage eth0 I had to comment out the &amp;quot;eth0&amp;quot; stanza in &amp;lt;tt&amp;gt;/etc/network/interfaces&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* I used System Settings | Ubuntu Software Center to install &amp;lt;tt&amp;gt;ccsm&amp;lt;/tt&amp;gt; (&amp;quot;Advanced Desktop Effects Settings&amp;quot;) so I could enable Wobbly Windows and so I can initiate window resize with Alt+Button3 which is easier than the default Alt-Button2 (i.e., Alt-scrollwheelbutton).&lt;br /&gt;
&lt;br /&gt;
* Add PPAs to apt sources list for additional indicators&lt;br /&gt;
&lt;br /&gt;
== Ex-problems ==&lt;br /&gt;
=== Suspend causes kernel panic ===&lt;br /&gt;
&amp;quot;Suspend-to-RAM and brightness control of the display work with kernel &amp;gt;= 3.0-rc6&amp;quot; according to [[Installing Gentoo on a ThinkPad X220|this fellow]].&lt;br /&gt;
&lt;br /&gt;
Since I upgraded to kernel 2.6.38-11-generic I haven't had any kernel panics on suspend.&lt;br /&gt;
&lt;br /&gt;
=== TPM can't be used ===&lt;br /&gt;
To try it out, install &amp;lt;tt&amp;gt;tpm-tools&amp;lt;/tt&amp;gt;.  &lt;br /&gt;
&lt;br /&gt;
When I first tried it, the &amp;lt;tt&amp;gt;tpm_version&amp;lt;/tt&amp;gt; program failed with &amp;quot;Communication failure&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
But now it prints this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  TPM 1.2 Version Info:&lt;br /&gt;
  Chip Version:        1.2.8.32&lt;br /&gt;
  Spec Level:          2&lt;br /&gt;
  Errata Revision:     3&lt;br /&gt;
  TPM Vendor ID:       STM &lt;br /&gt;
  TPM Version:         01010000&lt;br /&gt;
  Manufacturer Info:   53544d20&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Presumably the new kernel fixed this.&lt;br /&gt;
&lt;br /&gt;
=== memtest86+ didn't work ===&lt;br /&gt;
&lt;br /&gt;
Upgrading to the oneiric version, v4.20, fixed this.&lt;br /&gt;
&lt;br /&gt;
=== Multiple monitors ===&lt;br /&gt;
Configuring an extended desktop over two monitors led to malfunction.  Side-by-side worked, one above the other did not.&lt;br /&gt;
&lt;br /&gt;
In natty the solution was just to avoid the layouts that caused the malfunction.&lt;br /&gt;
&lt;br /&gt;
The problems appear to have been completely solved in Ubuntu 11.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
=== Bluetooth-related crashes ===&lt;br /&gt;
Switching bluetooth on or off either using the indicator or Fn-F5 sometimes crashed the machine.&lt;br /&gt;
&lt;br /&gt;
I haven't seen this problem in Ubuntu 10.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
=== Unity automaximizes ===&lt;br /&gt;
To disable this (annoying) behavior, run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
== Remaining problems ==&lt;br /&gt;
&lt;br /&gt;
=== Indicator lamp on microphone mute key doesn't work ===&lt;br /&gt;
The problem has been discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/linux/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
== Comparison with [[Installing Ubuntu 10.10 (Maverick Meerkat) on a ThinkPad X220|a Ubuntu 10.10 user's experience]] ==&lt;br /&gt;
* (improvements)&lt;br /&gt;
** I didn't have to do anything special to have the &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module loaded or use special keys&lt;br /&gt;
** The mute-microphone button can be made to work as described above&lt;br /&gt;
** Both left and right microphones are seen&lt;br /&gt;
** I have no difficulties with the fans&lt;br /&gt;
** I have no difficulties with SD cards&lt;br /&gt;
** The &amp;quot;Hangcheck timer elapsed&amp;quot; problem has been fixed in a new kernel version, as described above&lt;br /&gt;
&lt;br /&gt;
== Things to remember ==&lt;br /&gt;
To get Google Earth to work you have to do&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libgl1-mesa-glx:i386&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Ubuntu 11.04]][[Category:Ubuntu 11.10]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53660</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53660"/>
		<updated>2012-05-16T08:38:58Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu configuration becomes easier.  Here is a summary of what I had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Install and run gconf-editor and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;off&amp;quot; to &amp;quot;on&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;xset b 100&amp;quot; to .bashrc&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install tp-smapi-dkms&lt;br /&gt;
** Add &amp;quot;tp-smapi&amp;quot; to /etc/modules.&lt;br /&gt;
* In /etc/sudoers add &amp;quot;Defaults timestamp_timeout=0&amp;quot;&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
** add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
** apt-get install libpam-fprintd fprintd&lt;br /&gt;
** Run fprintd-enroll&lt;br /&gt;
** Edit /etc/pam.d/lightdm&lt;br /&gt;
* Associate my bluetooth HIDs.&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53659</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53659"/>
		<updated>2012-05-16T08:34:42Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04 and 11.10.&lt;br /&gt;
For this LTS release I decided to do a clean install rather than an upgrade from 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu configuration becomes easier.  Here is a summary of what I had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Install and run gconf-editor and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;off&amp;quot; to &amp;quot;on&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;xset b 100&amp;quot; to .bashrc&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install tp-smapi-dkms&lt;br /&gt;
** Add &amp;quot;tp-smapi&amp;quot; to /etc/modules.&lt;br /&gt;
* In /etc/sudoers add &amp;quot;Defaults timestamp_timeout=0&amp;quot;&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
** add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
** apt-get install libpam-fprintd fprintd&lt;br /&gt;
** Run fprintd-enroll&lt;br /&gt;
** Edit /etc/pam.d/lightdm&lt;br /&gt;
* Associate my bluetooth HIDs.&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_11.04_(Natty_Narwhal)_on_a_ThinkPad_X220&amp;diff=53658</id>
		<title>Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_11.04_(Natty_Narwhal)_on_a_ThinkPad_X220&amp;diff=53658"/>
		<updated>2012-05-16T08:33:09Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 11.04 (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
I have since upgraded to Ubuntu 11.10 (Oneiric Ocelot) and have updated some of the information below accordingly.&lt;br /&gt;
&lt;br /&gt;
== Netboot ==&lt;br /&gt;
As a source of network installation files I made use of another GNU/Linux computer on my home LAN&lt;br /&gt;
which is connected to the Internet through a familiar ADSL-modem/gateway/router/caching nameserver/DHCP server (call it &amp;quot;the gateway&amp;quot;) at address 172.19.3.1.&lt;br /&gt;
The gateway's DHCP server issues leases in the range 172.19.3.2 to 172.19.3.100.&lt;br /&gt;
&lt;br /&gt;
First I set up the &amp;quot;source&amp;quot; machine, in my case one which already also had Ubuntu 11.04 installed.&lt;br /&gt;
It has address 172.19.3.7 (assigned to it by the gateway's DHCP server).&lt;br /&gt;
For the X220 to boot from it the machine needs to run a DHCP server and a TFTP server.&lt;br /&gt;
The DHCP server serves only this special purpose since, as I mentioned, the gateway is the network's main DHCP server.&lt;br /&gt;
The source's DHCP server must be so configured that it doesn't conflict with the existing DHCP server.&lt;br /&gt;
&lt;br /&gt;
Install the &amp;lt;tt&amp;gt;isc-dhcp-server&amp;lt;/tt&amp;gt; package and edit &amp;lt;tt&amp;gt;/etc/dhcp/dhcpd.conf&amp;lt;/tt&amp;gt; using the following as a model.&lt;br /&gt;
I am not sure that every line is needed, but this worked for me.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ddns-update-style none;&lt;br /&gt;
option domain-name-servers 172.19.3.1;  # This is the address of my gateway&lt;br /&gt;
option routers 172.19.3.1;              # This is the address of my gateway&lt;br /&gt;
option subnet-mask 255.255.0.0;         # This is the netmask of my home network&lt;br /&gt;
default-lease-time 600;&lt;br /&gt;
max-lease-time 7200;&lt;br /&gt;
allow booting;&lt;br /&gt;
allow bootp;&lt;br /&gt;
&lt;br /&gt;
subnet 172.19.3.0 netmask 255.255.255.0 {&lt;br /&gt;
  range 172.19.3.220 172.19.3.229;      # This is a range separate from the one used by the gateway and includes the address below&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
group {&lt;br /&gt;
  next-server 172.19.3.7;               # This is the address of the &amp;quot;source&amp;quot;&lt;br /&gt;
  host trawsfynydd {                    # 'trawsfynydd' is the name I chose for my X220&lt;br /&gt;
    hardware ethernet f0:de:f1:6b:22:bf; # This is the Ethernet address of the X220&lt;br /&gt;
    fixed-address 172.19.3.220;         # This is an address in the range as defined above&lt;br /&gt;
    filename &amp;quot;/pxelinux.0&amp;quot;;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now install the &amp;lt;tt&amp;gt;tftpd-hpa&amp;lt;/tt&amp;gt; package, download the network installation tarball and untar it into the location whence &amp;lt;tt&amp;gt;tftpd&amp;lt;/tt&amp;gt; serves files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /tmp&lt;br /&gt;
$ wget http://archive.ubuntu.com/ubuntu/dists/natty/main/installer-amd64/current/images/netboot/netboot.tar.gz&lt;br /&gt;
$ cd /var/lib/tftpboot&lt;br /&gt;
$ sudo tar zxf /tmp/netboot.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second set up the X220 for PXE (Pre-boot eXecution Environment).&lt;br /&gt;
* Switch on the X220 and press F1.  ThinkPad Setup starts.&lt;br /&gt;
* Set Config | Network | Ethernet LAN Option ROM to &amp;quot;Enabled&amp;quot;.&lt;br /&gt;
* Select Startup | Boot; select &amp;quot;PCI LAN IBA GE Slot...&amp;quot; and use the [+] key to move it to the top of the boot priority order&lt;br /&gt;
* Press F10 to save and exit.&lt;br /&gt;
&lt;br /&gt;
Voilà, the X220 boots the Ubuntu installer.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
I won't describe the Ubuntu installer.&lt;br /&gt;
I'll just mention some little problems I had.&lt;br /&gt;
&lt;br /&gt;
''First'', when it came time to resize the existing (ntfs) partition the partitioner asked what size I would like for &amp;quot;this partition&amp;quot;.  Did it mean the to-be-resized ntfs partition or the new ext4 partition?  &lt;br /&gt;
&lt;br /&gt;
Turns out it meant: the to-be-resized ntfs partition, so the suggested &amp;quot;max&amp;quot; selection was the opposite of what I wanted.&lt;br /&gt;
&lt;br /&gt;
''Second'', when I selected (only) the &amp;quot;Ubuntu desktop&amp;quot; task the installation reported failure without explaining what had gone wrong.&lt;br /&gt;
&lt;br /&gt;
I de-selected all tasks and the installation succeeded.&lt;br /&gt;
&lt;br /&gt;
''Third'', after reboot the screen came up black.&lt;br /&gt;
&lt;br /&gt;
I pressed CTRL-ALT-F1 to get the system console so I could log in.&lt;br /&gt;
&lt;br /&gt;
After logging in I ran &amp;lt;tt&amp;gt;tasksel&amp;lt;/tt&amp;gt; and installed &amp;quot;Ubuntu desktop&amp;quot; and this time no failure was reported.&lt;br /&gt;
&lt;br /&gt;
== Information ==&lt;br /&gt;
&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
&lt;br /&gt;
Originally:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BIOS Version: 8DET46WW (1.16)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
From Windows 7 I ran Lenovo ThinkVantage Tools to upgrade the BIOS.  Now:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BIOS Version: 8DET51WW (1.21)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== dmidecode ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# dmidecode -s system-manufacturer&lt;br /&gt;
LENOVO&lt;br /&gt;
# dmidecode -s system-product-name&lt;br /&gt;
42902WG&lt;br /&gt;
# dmidecode -s system-version&lt;br /&gt;
ThinkPad X220&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== /proc/cpuinfo ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
processor	: 0&lt;br /&gt;
vendor_id	: GenuineIntel&lt;br /&gt;
cpu family	: 6&lt;br /&gt;
model		: 42&lt;br /&gt;
model name	: Intel(R) Core(TM) i5-2540M CPU @ 2.60GHz&lt;br /&gt;
stepping	: 7&lt;br /&gt;
cpu MHz		: 800.000&lt;br /&gt;
cache size	: 3072 KB&lt;br /&gt;
physical id	: 0&lt;br /&gt;
siblings	: 4&lt;br /&gt;
core id		: 0&lt;br /&gt;
cpu cores	: 2&lt;br /&gt;
apicid		: 0&lt;br /&gt;
initial apicid	: 0&lt;br /&gt;
fpu		: yes&lt;br /&gt;
fpu_exception	: yes&lt;br /&gt;
cpuid level	: 13&lt;br /&gt;
wp		: yes&lt;br /&gt;
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 x2apic popcnt aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dts tpr_shadow vnmi flexpriority ept vpid&lt;br /&gt;
bogomips	: 5182.27&lt;br /&gt;
clflush size	: 64&lt;br /&gt;
cache_alignment	: 64&lt;br /&gt;
address sizes	: 36 bits physical, 48 bits virtual&lt;br /&gt;
power management:&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== lspci ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09)&lt;br /&gt;
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)&lt;br /&gt;
00:16.0 Communication controller: Intel Corporation 6 Series Chipset Family MEI Controller #1 (rev 04)&lt;br /&gt;
00:19.0 Ethernet controller: Intel Corporation 82579LM Gigabit Network Connection (rev 04)&lt;br /&gt;
00:1a.0 USB Controller: Intel Corporation 6 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)&lt;br /&gt;
00:1b.0 Audio device: Intel Corporation 6 Series Chipset Family High Definition Audio Controller (rev 04)&lt;br /&gt;
00:1c.0 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 1 (rev b4)&lt;br /&gt;
00:1c.1 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 2 (rev b4)&lt;br /&gt;
00:1c.3 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 4 (rev b4)&lt;br /&gt;
00:1c.4 PCI bridge: Intel Corporation 6 Series Chipset Family PCI Express Root Port 5 (rev b4)&lt;br /&gt;
00:1d.0 USB Controller: Intel Corporation 6 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)&lt;br /&gt;
00:1f.0 ISA bridge: Intel Corporation 6 Series Chipset Family LPC Controller (rev 04)&lt;br /&gt;
00:1f.2 SATA controller: Intel Corporation 6 Series Chipset Family 6 port SATA AHCI Controller (rev 04)&lt;br /&gt;
00:1f.3 SMBus: Intel Corporation 6 Series Chipset Family SMBus Controller (rev 04)&lt;br /&gt;
03:00.0 Network controller: Intel Corporation Centrino Advanced-N 6205 (rev 34)&lt;br /&gt;
0d:00.0 System peripheral: Ricoh Co Ltd Device e823 (rev 04)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== lsusb ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub&lt;br /&gt;
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub&lt;br /&gt;
Bus 001 Device 006: ID 04f2:b217 Chicony Electronics Co., Ltd &lt;br /&gt;
Bus 001 Device 005: ID 0a5c:217f Broadcom Corp. Bluetooth Controller&lt;br /&gt;
Bus 001 Device 004: ID 147e:2016 Upek Biometric Touchchip/Touchstrip Fingerprint Sensor&lt;br /&gt;
Bus 001 Device 003: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub&lt;br /&gt;
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub&lt;br /&gt;
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Key table ===&lt;br /&gt;
This table was prepared ''before'' keys were remapped as discussed elsewhere on this page.&lt;br /&gt;
&lt;br /&gt;
References:&lt;br /&gt;
* [https://wiki.ubuntu.com/Hotkeys Hotkey architecture in Ubuntu]&lt;br /&gt;
* [https://wiki.ubuntu.com/Hotkeys/Troubleshooting Hotkey troubleshooting instructions]&lt;br /&gt;
* &amp;lt;tt&amp;gt;/usr/include/linux/input.h&amp;lt;/tt&amp;gt; -- list of Linux key codes&lt;br /&gt;
* [[Default meanings of special keys]]&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
! Key combination !! Extra function symbol !! ACPI event&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;acpi_listen&amp;lt;/tt&amp;gt;) !! Scan code&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;showkey&amp;amp;nbsp;-s&amp;lt;/tt&amp;gt;)&amp;lt;br&amp;gt;&amp;lt;i&amp;gt;(hex)&amp;lt;/i&amp;gt; !! Linux key code&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;showkey&amp;amp;nbsp;-k&amp;lt;/tt&amp;gt;) !! Input event&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;input-events&amp;lt;/tt&amp;gt;) !! ... on input device(*) !! X KeyCode&amp;lt;br&amp;gt;(&amp;lt;tt&amp;gt;xev&amp;lt;/tt&amp;gt;) !! Keyboard Shortcuts name&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F4E2;&amp;amp;#x20E5;}} (loudspeaker icon with stroke) || || (none) || down: e0 20&amp;lt;br&amp;gt;up: e0 a0 || 113 || KEY_MIN_INTERESTING (0x71) || 3 || 121 || XF86AudioMute&lt;br /&gt;
|-&lt;br /&gt;
| {{key|−&amp;amp;#x1F4E2;}} (minus sign, loudspeaker icon) || || (none) || down: e0 2e&amp;lt;br&amp;gt;up: e0 ae || 114 || KEY_VOLUMEDOWN (0x72) || 3 ||122 || XF86AudioLowerVolume&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F4E2;+}} (loudspeaker icon, plus sign)  || || (none) || down: e0 30&amp;lt;br&amp;gt;up: e0 b0 || 115 || KEY_VOLUMEUP (0x73) || 3 || 123 || XF86AudioRaiseVolume&lt;br /&gt;
|-&lt;br /&gt;
| {{key|&amp;amp;#x1F3A4;&amp;amp;#x20E5;}} (microphone icon with stroke)  || || ibm/hotkey HKEY 00000080 0000101b || (none) || 240 (rop) || KEY_UNKNOWN (0xf0) || 6 || 248 || &amp;quot;∅&amp;quot; (sic)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|ThinkVantage|#495988}}                   || || ibm/hotkey HKEY 00000080 00001018 || down: e0 1f e0 9f || 148 (rop) || KEY_PROG1 (0x94) || 6 || 156 || XF86Launch1&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}                             || || (none) || up: e0 63 e0 e3 || 143 || KEY_WAKEUP (0x8f) || 3 || 151 || XF86WakeUp&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F1|#494949}}       || || ibm/hotkey HKEY 00000080 00001001 || (none) || 466 (rop) || KEY_FN_F1 (0x1d2) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F2|#494949}}       || &amp;amp;#x1F512; (padlock symbol) || ibm/hotkey HKEY 00000080 00001002 || down: e0 12 e0 92 || 152 (rop) || KEY_SCREENLOCK (0x98) || 6 || 160 || XF86ScreenSaver&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F3|#494949}}       || &amp;amp;#x1F50B; (battery symbol) || ibm/hotkey HKEY 00000080 00001003 || down: e0 71 e0 f1 || 236 (rop) || KEY_BATTERY (0xec) || 6 || 244 || XF86Battery&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F4|#494949}}       || ☾ || ibm/hotkey HKEY 00000080 00001004 || down: e0 5f e0 df&amp;lt;br&amp;gt;(but sometimes nothing) || 142 (rop) || KEY_SLEEP (0x8e) || 6 || 150 || XF86Sleep&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F5|#494949}}       || &amp;amp;#x2E28;&amp;amp;#x1F4BB;&amp;amp;#x2E29; (radiating computer symbol) || ibm/hotkey HKEY 00000080 00001005 || down: e0 73 e0 f3 || 238 (rop) || KEY_WLAN (0xee) || 6 || 246 || XF86WLAN&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F6|#494949}}       || (camera, headset) || ibm/hotkey HKEY 00000080 00001006 || down: e0 3b e0 bb || 212 (rop) || KEY_CAMERA (0xd4) || 6 || 220 || XF86WebCam&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F7|#494949}}       || &amp;amp;#x1F4BB;&amp;amp;#x239A; (computer symbol, screen symbol) || ibm/hotkey HKEY 00000080 00001007 || down: e0 56 e0 d6 || 227 (rop) || KEY_SWITCHVIDEOMODE (0xe3) || 6 || 235 || XF86Display&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F8|#494949}}       || (trackpoint symbol, vertical bar, trackpad symbol) || ibm/hotkey HKEY 00000080 00001008 || down: e0 74 e0 f4 || 191 (rop) || KEY_F21 (0xbf) || 6 || 199 || XF86TouchpadToggle&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F9|#494949}}       || || ibm/hotkey HKEY 00000080 00001009 || down: 6f ef || 194 (rop) || KEY_F24 (0xc2) || 6 || 202 || &amp;quot;Ê&amp;quot; (sic)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F10|#494949}}      || || (none) || (none) || || (none) || || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F11|#494949}}      || || ibm/hotkey HKEY 00000080 0000100b || (none) || 476 (rop) || KEY_FN_F11 (0x1dc) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|F12|#494949}}      || &amp;amp;#x1F4BB;&amp;amp;nbsp;&amp;amp;#x25B6;&amp;amp;#x274D; (computer symbol, right arrowhead, diskpack symbol) || ibm/hotkey HKEY 00000080 0000100c || down: e0 25 e0 a5&amp;lt;br&amp;gt;(but sometimes nothing) || 205 (rop) || KEY_SUSPEND (0xcd) || 6 || 213 || XF86Suspend&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|Home|#494949}}     || ☀▴ || ibm/hotkey HKEY 00000080 00001010 and video LCD0 00000086 00000000 || down: e0 54 e0 d4 e0 54 e0 d4 || 225 (double) (rop) || KEY_BRIGHTNESSUP (0xe1) || 4, 6 || 233 || XF86MonBrightnessUp&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|End|#494949}}      || ☀▾ || ibm/hotkey HKEY 00000080 00001011 and  video LCD0 00000087 00000000 || down: e0 4c e0 cc e0 4c e0 cc || 224 (double) (rop) || KEY_BRIGHTNESSDOWN (0xe0) || 4, 6 || 232 || XF86MonBrightnessDown&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|PgUp|#494949}}     || (illuminating overhead lamp symbol) || (none) || (none) || (none) || (none) || (none) || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|Space|#494949}}    || [&amp;amp;#x1F50D;+] (screen with magnifying glass symbol and plus sign, i.e., &amp;quot;zoom&amp;quot; symbol) || ibm/hotkey HKEY 00000080 00001014 || (none) || 372 (rop) || KEY_ZOOM (0x174) || 6 || (none) || (none)&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|→|#494949}}        || &amp;amp;#x23ED; (barred right arrowhead, i.e., &amp;quot;next&amp;quot; symbol) || (none) || down: e0 19&amp;lt;br&amp;gt;up: e0 99 || 163 || KEY_NEXTSONG (0xa3) || 3 || 171 || XF86AudioNext&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|↓|#494949}}        || &amp;amp;#x23EF; (right arrowhead, double bar, i.e., &amp;quot;play/pause&amp;quot; symbol) || (none) || down: e0 22&amp;lt;br&amp;gt;up: e0 a2 || 164 || KEY_PLAYPAUSE (0xa4) || 3 || 172 || XF86AudioPlay&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|←|#494949}}        || &amp;amp;#x23EE; (barred left arrowhead, i.e., &amp;quot;prev&amp;quot; symbol) || (none) || down: e0 10&amp;lt;br&amp;gt;up: e0 90 || 165 || KEY_PREVIOUSSONG (0xa5) || 3 || 173 || XF86AudioPrev&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|Fn|#494949}}-{{ibmkey|↑|#494949}}        || ∎ (&amp;quot;stop play&amp;quot; symbol) || (none) || down: e0 24&amp;lt;br&amp;gt;up: e0 a4 || 166 || KEY_STOPCD (0xa6) || 3 || 174 || XF86AudioStop&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|◂ ⎗|#494949}} (left arrowhead, page icon) || || (none) || down: e0 6a&amp;lt;br&amp;gt;up: e0 ea || 158 || KEY_BACK (0x9e) || 3 || 166 || XF86Back&lt;br /&gt;
|-&lt;br /&gt;
| {{ibmkey|⎘ ▸|#494949}} (page icon, right arrowhead) || || (none) || down: e0 69&amp;lt;br&amp;gt;up: e0 e9 || 159 || KEY_FORWARD (0x9f) || 3 || 167 || XF86Forward&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
In the Linux key code column, &amp;quot;rop&amp;quot; means &amp;quot;release on press&amp;quot;, i.e., the release event is generated at the same time as the press event.&lt;br /&gt;
&lt;br /&gt;
The button on the UltraBase doesn't seem to generate any events visible to userspace.&lt;br /&gt;
&lt;br /&gt;
Input device numbers and types as reported by &amp;lt;tt&amp;gt;lsinput&amp;lt;/tt&amp;gt;:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
|+ (*) /dev/input/event&amp;lt;i&amp;gt;n&amp;lt;/i&amp;gt;&lt;br /&gt;
! n !! name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || &amp;quot;Lid Switch&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 1 || &amp;quot;Sleep Button&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 2 || &amp;quot;Power Button&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 3 || &amp;quot;AT Translated Set @ keyboard&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 4 || &amp;quot;Video Bus&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 5 || &amp;quot;Integrated Camera&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 6 || &amp;quot;ThinkPad Extra Buttons&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 7 || &amp;quot;SynPS/2 Synaptics TouchPad&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 8 || &amp;quot;TPPS/2 IBM TrackPoint&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Hotkey mask when the above table was compiled:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_mask&lt;br /&gt;
0x078dffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_all_mask&lt;br /&gt;
0x07ffffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_recommended_mask&lt;br /&gt;
0x078dffff&lt;br /&gt;
$ cat /sys/devices/platform/thinkpad_acpi/hotkey_report_mode&lt;br /&gt;
1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Accessories ==&lt;br /&gt;
Accessories I purchased for this laptop:&lt;br /&gt;
* [[ThinkPad UltraBase Series 3]] with built-in [[Serial Ultrabay Slim]]&lt;br /&gt;
* [[Serial Ultrabay Slim DVD Multi IV Drive]]&lt;br /&gt;
* [[ThinkPad Mini Dock Series 3]] 433710U which comes with a 90W power supply&lt;br /&gt;
* 1.95Ah battery 42T4901&lt;br /&gt;
* 8.4Ah battery 42T4942&lt;br /&gt;
&lt;br /&gt;
== Configuration and solved problems ==&lt;br /&gt;
&lt;br /&gt;
=== Fingerprint reader ===&lt;br /&gt;
See [[How to enable integrated fingerprint reader with fprint|how to enable the integrated fingerprint reader with fprint]].&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.freedesktop.org/show_bug.cgi?id=11227 hotkey shortcomings] ===&lt;br /&gt;
(Updated November 2011 for Oneiric.)&lt;br /&gt;
&lt;br /&gt;
By default the &amp;quot;zoom&amp;quot; (Fn-Space) and &amp;quot;microphone-mute&amp;quot; (button next to the ThinkVantage button) hotkeys do nothing.&lt;br /&gt;
&lt;br /&gt;
'''Zoom''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module, kernel and &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; map the zoom key's ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 00001014&amp;lt;/tt&amp;gt;) to input event &amp;lt;tt&amp;gt;KEY_ZOOM&amp;lt;/tt&amp;gt; whose numerical value, 372, is greater than 255, the highest key-event code that X can handle.&lt;br /&gt;
&lt;br /&gt;
'''Micmute''': The &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module and kernel generate an ACPI event (&amp;lt;tt&amp;gt;ibm/hotkey HKEY 00000080 0000101b&amp;lt;/tt&amp;gt;) for the microphone mute button but in releases earlier than precise this is not mapped to anything; in precise it is mapped to 256 which is also greater than 255, the highest that X can handle.&lt;br /&gt;
&lt;br /&gt;
The fault lies with X which can't handle key codes above 255.  But as discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/313514 here], it may be a long time before this gets fixed in X.&lt;br /&gt;
&lt;br /&gt;
There is a fairly easy workaround.&lt;br /&gt;
Install version 175 or later of the &amp;lt;tt&amp;gt;udev&amp;lt;/tt&amp;gt; package and do the following.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# sudo su&lt;br /&gt;
# mkdir /etc/udev/keymaps&lt;br /&gt;
# cp /lib/udev/keymaps/module-lenovo /etc/udev/keymaps&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now edit &amp;lt;tt&amp;gt;/etc/udev/keymaps/module-lenovo&amp;lt;/tt&amp;gt; so that 0x13 and 0x1A get mapped to &amp;lt;tt&amp;gt;search&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;prog2&amp;lt;/tt&amp;gt;, respectively (instead of &amp;lt;tt&amp;gt;zoom&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;micmute&amp;lt;/tt&amp;gt;, respectively).&lt;br /&gt;
&lt;br /&gt;
Then in System Settings | Keyboard | Shortcuts assign a behavior to the &amp;lt;tt&amp;gt;XF86Search&amp;lt;/tt&amp;gt; event, the X event corresponding to &amp;lt;tt&amp;gt;search&amp;lt;/tt&amp;gt;. This behavior will be invoked by Fn-Space.&lt;br /&gt;
&lt;br /&gt;
There is no built-in function for muting the microphone but it is straightforward to concoct one using &amp;lt;tt&amp;gt;amixer&amp;lt;/tt&amp;gt;.&lt;br /&gt;
In Keyboard | Shortcuts select Custom Shortcuts and press &amp;lt;tt&amp;gt;+&amp;lt;/tt&amp;gt; to create a new shortcut named &amp;quot;Microphone mute&amp;quot; whose command-content is the following.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sh -c &amp;quot;if amixer get Capture,0 | grep -q '\[on\]' ; then amixer -q set Capture,0 nocap ; else amixer -q set Capture,0 cap; fi&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Assign this to &amp;lt;tt&amp;gt;XF86Launch2&amp;lt;/tt&amp;gt; which is the X event corresponding to input event &amp;lt;tt&amp;gt;prog2&amp;lt;/tt&amp;gt;. This behavior will be invoked by the microphone-mute key.&lt;br /&gt;
&lt;br /&gt;
=== Fix for [https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/486154 the known no-system-beep problem] ===&lt;br /&gt;
As I described in more detail [[Installing Ubuntu 9.10 (Karmic Koala) on a ThinkPad X61#Partially solved problem: No beep|earlier]]:&lt;br /&gt;
* Create &amp;lt;tt&amp;gt;.xprofile&amp;lt;/tt&amp;gt; containing&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and at &amp;lt;tt&amp;gt;desktop | gnome | peripherals | keyboard&amp;lt;/tt&amp;gt; change the value of &amp;lt;tt&amp;gt;bell_mode&amp;lt;/tt&amp;gt; from &amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt; to &amp;lt;tt&amp;gt;on&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* If the default bell volume of 50 (percent) is not loud enough, add a line like the following to &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
xset b 100&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* To cause terminal bells to ring also in non-X terminals (e.g., the console terminal), comment out the &amp;lt;tt&amp;gt;blacklist pcspkr&amp;lt;/tt&amp;gt; line in &amp;lt;tt&amp;gt;/etc/modprobe.d/blacklist.conf&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Fix for &amp;quot;[drm:i915_hangcheck_ring_idle] *ERROR* Hangcheck timer elapsed... blt ring idle...&amp;quot; problem ===&lt;br /&gt;
To fix [https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/761065 this known problem] upgrade the kernel: install the &amp;lt;tt&amp;gt;linux-image-2.6.38-11-generic&amp;lt;/tt&amp;gt; package and reboot.&lt;br /&gt;
&lt;br /&gt;
=== Fix for [[Tp smapi|tp-smapi]] loading problem ===&lt;br /&gt;
First, it is as usual necessary to add&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tp-smapi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
to &amp;lt;tt&amp;gt;/etc/modules&amp;lt;/tt&amp;gt; so that &amp;lt;tt&amp;gt;modoprobe&amp;lt;/tt&amp;gt; will attempt to load the module at boot time.&lt;br /&gt;
&lt;br /&gt;
But the distributed &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; modules don't load on my X220&lt;br /&gt;
and &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; reports the EC firmware number as &amp;quot;unknown&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The BIOS setup program reports this information about the BIOS:&lt;br /&gt;
* Model 42902WG&lt;br /&gt;
* UEFI BIOS 8DET46WW (1.16) 2011-05-18&lt;br /&gt;
* Embedded Controller 8DHT23WW (1.07)&lt;br /&gt;
&lt;br /&gt;
This problem has been fixed in &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; version 0.41-1.  As of 7 August 2011 &amp;lt;tt&amp;gt;tp-smapi-dkms&amp;lt;/tt&amp;gt; is available in Debian unstable (Ubuntu uses Debian &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; packages with no changes) and this is the version in Ubuntu 11.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
Output from &amp;lt;tt&amp;gt;dmesg&amp;lt;/tt&amp;gt; after &amp;lt;tt&amp;gt;modprobe&amp;lt;/tt&amp;gt;ing &amp;lt;tt&amp;gt;thinkpad-ec&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;tp-smapi&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[  714.842090] thinkpad_ec: thinkpad_ec 0.41 loaded.&lt;br /&gt;
[  721.983409] tp_smapi 0.41 loading...&lt;br /&gt;
[  721.984742] tp_smapi successfully loaded (smapi_port=0xb2).&lt;br /&gt;
[  729.462533] hdaps: LENOVO ThinkPad X220 detected, setting orientation 4&lt;br /&gt;
[  729.462894] hdaps: initial mode latch is 0x05&lt;br /&gt;
[  729.463022] hdaps: setting ec_rate=250, filter_order=2&lt;br /&gt;
[  729.463242] hdaps: device successfully initialized.&lt;br /&gt;
[  729.463799] input: ThinkPad HDAPS joystick emulation as /devices/virtual/input/input15&lt;br /&gt;
[  729.464101] input: ThinkPad HDAPS accelerometer data as /devices/virtual/input/input16&lt;br /&gt;
[  729.464342] hdaps: driver successfully loaded.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Modinfo:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ modinfo tp-smapi&lt;br /&gt;
filename:       /lib/modules/2.6.38-11-generic/updates/dkms/tp_smapi.ko&lt;br /&gt;
license:        GPL&lt;br /&gt;
version:        0.41&lt;br /&gt;
description:    ThinkPad SMAPI Support&lt;br /&gt;
author:         Shem Multinymous&lt;br /&gt;
srcversion:     B6841670771B2FF5222BFFD&lt;br /&gt;
depends:        thinkpad_ec&lt;br /&gt;
vermagic:       2.6.38-11-generic SMP mod_unload modversions &lt;br /&gt;
parm:           debug:Debug level (0=off, 1=on) (int)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
Having loaded &amp;lt;tt&amp;gt;hdaps&amp;lt;/tt&amp;gt; do:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo add-apt-repository ppa:linrunner/thinkpad-extras&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get install hdaps-utils&lt;br /&gt;
hdaps-gl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Result:&lt;br /&gt;
&lt;br /&gt;
[[Image:ThinkPad_X220_running_hdaps-gl.jpg|Tilted ThinkPad X220 running hdaps-gl|300px]]&lt;br /&gt;
&lt;br /&gt;
=== Miscellaneous configuration ===&lt;br /&gt;
* Having installed bare Ubuntu I had to run &amp;lt;tt&amp;gt;tasksel&amp;lt;/tt&amp;gt; and select at least &amp;quot;Ubuntu Desktop&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* In order to allow NetworkManager to manage eth0 I had to comment out the &amp;quot;eth0&amp;quot; stanza in &amp;lt;tt&amp;gt;/etc/network/interfaces&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* I used System Settings | Ubuntu Software Center to install &amp;lt;tt&amp;gt;ccsm&amp;lt;/tt&amp;gt; (&amp;quot;Advanced Desktop Effects Settings&amp;quot;) so I could enable Wobbly Windows and so I can initiate window resize with Alt+Button3 which is easier than the default Alt-Button2 (i.e., Alt-scrollwheelbutton).&lt;br /&gt;
&lt;br /&gt;
* Add PPAs to apt sources list for additional indicators&lt;br /&gt;
&lt;br /&gt;
== Ex-problems ==&lt;br /&gt;
=== Suspend causes kernel panic ===&lt;br /&gt;
&amp;quot;Suspend-to-RAM and brightness control of the display work with kernel &amp;gt;= 3.0-rc6&amp;quot; according to [[Installing Gentoo on a ThinkPad X220|this fellow]].&lt;br /&gt;
&lt;br /&gt;
Since I upgraded to kernel 2.6.38-11-generic I haven't had any kernel panics on suspend.&lt;br /&gt;
&lt;br /&gt;
=== TPM can't be used ===&lt;br /&gt;
To try it out, install &amp;lt;tt&amp;gt;tpm-tools&amp;lt;/tt&amp;gt;.  &lt;br /&gt;
&lt;br /&gt;
When I first tried it, the &amp;lt;tt&amp;gt;tpm_version&amp;lt;/tt&amp;gt; program failed with &amp;quot;Communication failure&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
But now it prints this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  TPM 1.2 Version Info:&lt;br /&gt;
  Chip Version:        1.2.8.32&lt;br /&gt;
  Spec Level:          2&lt;br /&gt;
  Errata Revision:     3&lt;br /&gt;
  TPM Vendor ID:       STM &lt;br /&gt;
  TPM Version:         01010000&lt;br /&gt;
  Manufacturer Info:   53544d20&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Presumably the new kernel fixed this.&lt;br /&gt;
&lt;br /&gt;
=== memtest86+ didn't work ===&lt;br /&gt;
&lt;br /&gt;
Upgrading to the oneiric version, v4.20, fixed this.&lt;br /&gt;
&lt;br /&gt;
=== Multiple monitors ===&lt;br /&gt;
Configuring an extended desktop over two monitors led to malfunction.  Side-by-side worked, one above the other did not.&lt;br /&gt;
&lt;br /&gt;
In natty the solution was just to avoid the layouts that caused the malfunction.&lt;br /&gt;
&lt;br /&gt;
The problems appear to have been completely solved in Ubuntu 11.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
=== Bluetooth-related crashes ===&lt;br /&gt;
Switching bluetooth on or off either using the indicator or Fn-F5 sometimes crashed the machine.&lt;br /&gt;
&lt;br /&gt;
I haven't seen this problem in Ubuntu 10.10 (Oneiric Ocelot).&lt;br /&gt;
&lt;br /&gt;
=== Unity automaximizes ===&lt;br /&gt;
To disable this (annoying) behavior, run &amp;lt;tt&amp;gt;gconf-editor&amp;lt;/tt&amp;gt; and set &amp;lt;tt&amp;gt;apps|compiz-1|plugins|grid|screen0|options|top_edge_action&amp;lt;/tt&amp;gt; to 0 (originally 10).&lt;br /&gt;
&lt;br /&gt;
== Remaining problems ==&lt;br /&gt;
&lt;br /&gt;
=== Indicator lamp on microphone mute key doesn't work ===&lt;br /&gt;
The problem has been discussed, e.g., [https://bugs.launchpad.net/ubuntu/+source/linux/+bug/408903 here].&lt;br /&gt;
&lt;br /&gt;
== Comparison with [[Installing Ubuntu 10.10 (Maverick Meerkat) on a ThinkPad X220|a Ubuntu 10.10 user's experience]] ==&lt;br /&gt;
* (improvements)&lt;br /&gt;
** I didn't have to do anything special to have the &amp;lt;tt&amp;gt;thinkpad-acpi&amp;lt;/tt&amp;gt; module loaded or use special keys&lt;br /&gt;
** The mute-microphone button can be made to work as described above&lt;br /&gt;
** Both left and right microphones are seen&lt;br /&gt;
** I have no difficulties with the fans&lt;br /&gt;
** I have no difficulties with SD cards&lt;br /&gt;
** The &amp;quot;Hangcheck timer elapsed&amp;quot; problem has been fixed in a new kernel version, as described above&lt;br /&gt;
&lt;br /&gt;
== Things to look into ==&lt;br /&gt;
* Thoroughly test docking and undocking in combination with suspending and resuming&lt;br /&gt;
&lt;br /&gt;
With earlier ThinkPad models and earlier versions of Ubuntu this never worked properly.  Especially annoying, for example: my suspended laptop would wake up while in my briefcase.  Or: after resuming, connecting a different monitor would screw up the GUI.  Consequently I developed the habit of never using suspend and never docking or undocking a running machine.  Before trusting these allegedly working features I will have to very thoroughly test them.&lt;br /&gt;
&lt;br /&gt;
== Things to remember ==&lt;br /&gt;
To get Google Earth to work you have to do&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libgl1-mesa-glx:i386&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Ubuntu 11.04]][[Category:Ubuntu 11.10]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53657</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53657"/>
		<updated>2012-05-16T08:32:35Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04 and 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu configuration becomes easier.  Here is a summary of what I had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Install and run gconf-editor and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;off&amp;quot; to &amp;quot;on&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;xset b 100&amp;quot; to .bashrc&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install tp-smapi-dkms&lt;br /&gt;
** Add &amp;quot;tp-smapi&amp;quot; to /etc/modules.&lt;br /&gt;
* In /etc/sudoers add &amp;quot;Defaults timestamp_timeout=0&amp;quot;&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
** add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
** apt-get install libpam-fprintd fprintd&lt;br /&gt;
** Run fprintd-enroll&lt;br /&gt;
** Edit /etc/pam.d/lightdm&lt;br /&gt;
* Associate my bluetooth HIDs.&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Ubuntu 12.04]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53656</id>
		<title>Installing Ubuntu 12.04 (Precise Pangolin) on a ThinkPad X220</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_12.04_(Precise_Pangolin)_on_a_ThinkPad_X220&amp;diff=53656"/>
		<updated>2012-05-16T08:31:58Z</updated>

		<summary type="html">&lt;p&gt;Jdthood: â†Created page with 'I installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.  This is the same machine on which I [[Installing Ubuntu 11.04 (Nat...'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Jdthood|I]] installed Ubuntu 12.04 LTS (Natty Narwhal) on a ThinkPad {{X220}}, model 42902GW.&lt;br /&gt;
&lt;br /&gt;
This is the same machine on which I [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220|previously]] installed Ubuntu 11.04 and 11.10.&lt;br /&gt;
&lt;br /&gt;
With every release of Ubuntu configuration becomes easier.  Here is a summary of what I had to do to get the machine back to the way I like it.&lt;br /&gt;
&lt;br /&gt;
* Move documents, pictures and other personal files from old to new home directory&lt;br /&gt;
* Adjust display layout&lt;br /&gt;
** Problem: With some layouts the machine hangs!  Will look into this.&lt;br /&gt;
* Adjust touchpad&lt;br /&gt;
** Switch to two-finger scrolling&lt;br /&gt;
** Disable mouse clicks&lt;br /&gt;
* Set desktop background image&lt;br /&gt;
* Install compizconfig-settings-manager and run ccsm:&lt;br /&gt;
** Assign the Resize Windows function to Alt-Button3 which is easier than the default&lt;br /&gt;
* Enable terminal bell:&lt;br /&gt;
** Install and run gconf-editor and use it to change desktop | gnome | peripherals | keyboard | bell_mode from &amp;quot;off&amp;quot; to &amp;quot;on&amp;quot;&lt;br /&gt;
** Add &amp;quot;pactl upload-sample /usr/share/sounds/gnome/default/alerts/glass.ogg bell.ogg&amp;quot; to .xprofile&lt;br /&gt;
** Add &amp;quot;xset b 100&amp;quot; to .bashrc&lt;br /&gt;
* Install tp-smapi module&lt;br /&gt;
** Install tp-smapi-dkms&lt;br /&gt;
** Add &amp;quot;tp-smapi&amp;quot; to /etc/modules.&lt;br /&gt;
* In /etc/sudoers add &amp;quot;Defaults timestamp_timeout=0&amp;quot;&lt;br /&gt;
* Enable fingerprint reader as I described [[How to enable integrated fingerprint reader with fprint|here]]:&lt;br /&gt;
** add-apt-repository ppa:fingerprint/fprint&lt;br /&gt;
** apt-get install libpam-fprintd fprintd&lt;br /&gt;
** Run fprintd-enroll&lt;br /&gt;
** Edit /etc/pam.d/lightdm&lt;br /&gt;
* Associate my bluetooth HIDs.&lt;br /&gt;
* Set up hotkeys (zoom and micmute) as [[Installing Ubuntu 11.04 (Natty Narwhal) on a ThinkPad X220#Fix for hotkey shortcomings|I described earlier]]&lt;/div&gt;</summary>
		<author><name>Jdthood</name></author>
		
	</entry>
</feed>