<?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=Quartsize</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=Quartsize"/>
	<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/wiki/Special:Contributions/Quartsize"/>
	<updated>2026-05-04T17:42:11Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.12</generator>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=43656</id>
		<title>User:Quartsize</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=43656"/>
		<updated>2009-07-18T17:02:21Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: switched again&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Jaunty on a Thinkpad Z61t.&lt;br /&gt;
&lt;br /&gt;
Removed video driver packages when I was running Fedora 10 (in case anyone would like to do similarly):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
xorg-x11-drv-apm xorg-x11-drv-ast xorg-x11-drv-ati xorg-x11-drv-cirrus&lt;br /&gt;
xorg-x11-drv-glint xorg-x11-drv-i128 xorg-x11-drv-i740 xorg-x11-drv-mach64&lt;br /&gt;
xorg-x11-drv-mga xorg-x11-drv-nouveau xorg-x11-drv-nv xorg-x11-drv-openchrome&lt;br /&gt;
xorg-x11-drv-r128 xorg-x11-drv-rendition xorg-x11-drv-s3virge xorg-x11-drv-savage&lt;br /&gt;
xorg-x11-drv-siliconmotion xorg-x11-drv-sis xorg-x11-drv-sisusb xorg-x11-drv-tdfx&lt;br /&gt;
xorg-x11-drv-trident xorg-x11-drv-vmware xorg-x11-drv-voodoo&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=41064</id>
		<title>User:Quartsize</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=41064"/>
		<updated>2009-02-13T14:14:01Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: switched to Arch&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Arch on a Thinkpad Z61t.&lt;br /&gt;
&lt;br /&gt;
Removed video driver packages when I was running Fedora 10 (in case anyone would like to do similarly):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
xorg-x11-drv-apm xorg-x11-drv-ast xorg-x11-drv-ati xorg-x11-drv-cirrus&lt;br /&gt;
xorg-x11-drv-glint xorg-x11-drv-i128 xorg-x11-drv-i740 xorg-x11-drv-mach64&lt;br /&gt;
xorg-x11-drv-mga xorg-x11-drv-nouveau xorg-x11-drv-nv xorg-x11-drv-openchrome&lt;br /&gt;
xorg-x11-drv-r128 xorg-x11-drv-rendition xorg-x11-drv-s3virge xorg-x11-drv-savage&lt;br /&gt;
xorg-x11-drv-siliconmotion xorg-x11-drv-sis xorg-x11-drv-sisusb xorg-x11-drv-tdfx&lt;br /&gt;
xorg-x11-drv-trident xorg-x11-drv-vmware xorg-x11-drv-voodoo&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=40123</id>
		<title>User:Quartsize</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=40123"/>
		<updated>2008-12-03T21:22:45Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Fedora 10 on a Thinkpad Z61t.&lt;br /&gt;
&lt;br /&gt;
Removed video driver packages (in case anyone would like to do similarly):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
xorg-x11-drv-apm xorg-x11-drv-ast xorg-x11-drv-ati xorg-x11-drv-cirrus&lt;br /&gt;
xorg-x11-drv-glint xorg-x11-drv-i128 xorg-x11-drv-i740 xorg-x11-drv-mach64&lt;br /&gt;
xorg-x11-drv-mga xorg-x11-drv-nouveau xorg-x11-drv-nv xorg-x11-drv-openchrome&lt;br /&gt;
xorg-x11-drv-r128 xorg-x11-drv-rendition xorg-x11-drv-s3virge xorg-x11-drv-savage&lt;br /&gt;
xorg-x11-drv-siliconmotion xorg-x11-drv-sis xorg-x11-drv-sisusb xorg-x11-drv-tdfx&lt;br /&gt;
xorg-x11-drv-trident xorg-x11-drv-vmware xorg-x11-drv-voodoo&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=39593</id>
		<title>How to enable the integrated fingerprint reader with ThinkFinger</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=39593"/>
		<updated>2008-11-07T17:53:29Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: /* Ubuntu */ order by release&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[How to enable the fingerprint reader]] has a good explanation for using the fingerprint reader with the closed-source binary driver. But there is also an opensource project called [http://thinkfinger.sourceforge.net ThinkFinger] which does the same, but open.&lt;br /&gt;
&lt;br /&gt;
However: The fingerprint reader is an INSECURE device and gives a false sense of security! There has been quite a bit of research by a hacker named Starbug, a member of the Chaos Computer Club, Berlin, Germany. He outlined in two very good talks how to forge each and every available fingerprint sensor available at the cost of a few euros, using materials from your local hardware store, a digicam and a laser printer! Here's some links:&lt;br /&gt;
* [http://www.ccc.de/updates/2007/umsonst-im-supermarkt?language=en  Fingerprint recognition in supermarkets]&lt;br /&gt;
* [ftp://ftp.ccc.de/pub/video/Fingerabdruck_Hack/fingerabdruck.mpg?language=en Video tutorial for forging fingerprints]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Installing ==&lt;br /&gt;
=== From source ===&lt;br /&gt;
&lt;br /&gt;
Download thinkfinger-0.3.tar.gz from the [http://thinkfinger.sourceforge.net/ homepage] and unpack it somewhere, make sure you have the gcc compiler, libtool, pkg-config, libusb-dev and libpam0g-dev installed, then:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|cd thinkfinger-0.3}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code style=&amp;quot;white-space:nowrap;color:#495988;background-color:white;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;$&amp;lt;/nowiki&amp;gt; ./configure --prefix=/usr --sysconfdir=/etc --with-securedir=/lib/security --with-birdir=/etc/pam_thinkfinger&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{cmduser|make}}&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|make install}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|/lib/security is the directory, where PAM assumes its modules on Debian and openSUSE, it may vary for your distro!}}&lt;br /&gt;
&lt;br /&gt;
&amp;quot;make install&amp;quot; doesn't create the birdir we specified (where thinkfinger will store users' biometric info), so create it:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|mkdir /etc/pam_thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
If everything went OK assert that you find pam_thinkfinger.so in /lib/security typing:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|ls /lib/security}}&lt;br /&gt;
&lt;br /&gt;
=== From package ===&lt;br /&gt;
&lt;br /&gt;
==== Debian ====&lt;br /&gt;
[http://packages.debian.org/source/experimental/thinkfinger Packages] arrived in Debian experimental on Aug 2nd, 2007 (cf. [http://bugs.debian.org/409563 bug #409563]). To access the experimental packages via apt, add the following lines to your sources.list:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# experimental&lt;br /&gt;
deb ftp://mirrors.kernel.org/debian/ experimental main contrib non-free&lt;br /&gt;
deb-src ftp://mirrors.kernel.org/debian/ experimental main contrib non-free&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
where of course you may replace mirrors.kernel.org with your mirror of choice. Just make sure that it hosts the experimental repositories.&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|aptitude update}}&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|aptitude install libthinkfinger0 libpam-thinkfinger thinkfinger-tools}}&lt;br /&gt;
&lt;br /&gt;
should then get you up and running.&lt;br /&gt;
&lt;br /&gt;
To make everything work you'll have to have permission to work the device ({{cmduser|sudo adduser myself plugdev}} worked for me), and you'll also have to follow instructions below about adding the device to your PAM methods.&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu ====&lt;br /&gt;
&lt;br /&gt;
===== Gutsy =====&lt;br /&gt;
&lt;br /&gt;
From https://wiki.ubuntu.com/ThinkFinger&lt;br /&gt;
&lt;br /&gt;
Add PPA repositories to your sources.list:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb     http://ppa.launchpad.net/jldugger/ubuntu gutsy main restricted universe multiverse&lt;br /&gt;
deb-src http://ppa.launchpad.net/jldugger/ubuntu gutsy main restricted universe multiverse&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install necessary packages:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo apt-get install thinkfinger-tools  libpam-thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
===== Hardy =====&lt;br /&gt;
&lt;br /&gt;
Hardy includes the latest thinkfinger and it is up to date with subversion.  Install packages:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo apt-get install thinkfinger-tools libpam-thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
Update the pam configuration files:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo /usr/lib/pam-thinkfinger/pam-thinkfinger-enable}}&lt;br /&gt;
&lt;br /&gt;
Enroll your fingerprint (creates $HOME/.thinkfinger.bir).  If this gives an error about claiming the USB device then a reboot was claimed to work, but in fact it may just be a permissions problem.  {{NOTE|Do not try to enroll using 'sudo' - it will cause hidden permission problems}}&lt;br /&gt;
&lt;br /&gt;
{{cmduser|tf-tool --acquire}}&lt;br /&gt;
&lt;br /&gt;
Check fingerprint enrollment&lt;br /&gt;
&lt;br /&gt;
{{cmduser|tf-tool --verify}}&lt;br /&gt;
&lt;br /&gt;
You can expect everything to work correctly.  Note that you still have to enter your username if prompted but will be able&lt;br /&gt;
to swipe your finger instead of the password.  The prompt will usually be &amp;quot;Password or swipe finger&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Graphical login&lt;br /&gt;
* Text console login&lt;br /&gt;
* sudo&lt;br /&gt;
* screen lock/screen saver&lt;br /&gt;
* Administrative password prompt (eg for update or package managers).  (Note no &amp;quot;or swipe finger&amp;quot; in prompt).&lt;br /&gt;
&lt;br /&gt;
===== Intrepid =====&lt;br /&gt;
After installing from the normal repositories coming with Ubuntu 8.10, you would have to press enter after sweeping finger. (This bug: [https://bugs.launchpad.net/ubuntu/+source/thinkfinger/+bug/256429 https://bugs.launchpad.net/ubuntu/+source/thinkfinger/+bug/256429])&lt;br /&gt;
Therefore Jon Oberheide made an update that can be found here: &lt;br /&gt;
[https://launchpad.net/~jon-oberheide/+archive https://launchpad.net/~jon-oberheide/+archive]&lt;br /&gt;
&lt;br /&gt;
Add the PPA repositories to your source.list (/etc/apt/source.list):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://ppa.launchpad.net/jon-oberheide/ubuntu intrepid main&lt;br /&gt;
deb-src http://ppa.launchpad.net/jon-oberheide/ubuntu intrepid main&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update installer:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo apt-get update}}&lt;br /&gt;
&lt;br /&gt;
And install:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo apt-get thinkfinger-tools}}&lt;br /&gt;
&lt;br /&gt;
==== Fedora/Fedora Core ====&lt;br /&gt;
{{cmdroot|yum install thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
==== Gentoo ====&lt;br /&gt;
{{cmdroot|emerge sys-auth/thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
==== OpenSUSE ====&lt;br /&gt;
openSUSE 10.2 includes the package &amp;quot;libthinkfinger&amp;quot; (version 0.1-7) - you will find newer packages [http://beta1.suse.com/private/thoenig/10.2/thinkfinger/ here].&lt;br /&gt;
&lt;br /&gt;
== Testing the driver ==&lt;br /&gt;
&lt;br /&gt;
Now the driver is installed and should be working. You can try it (as root) with&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --acquire}}&lt;br /&gt;
&lt;br /&gt;
and&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --verify}}&lt;br /&gt;
&lt;br /&gt;
This will ask you to swipe your finger three times, save the fingerprint to /tmp/test.bir and then verify your fingerprint with the bir-file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Configuring PAM to use ThinkFinger ==&lt;br /&gt;
Now you can configure PAM to use ThinkFinger:&lt;br /&gt;
&lt;br /&gt;
Open {{path|/etc/pam.d/common-auth}} (In FC6, F7, and Gentoo, this file is {{path|/etc/pam.d/system-auth}}):&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|nano -w /etc/pam.d/common-auth}}&lt;br /&gt;
&lt;br /&gt;
Add this line before any pam_unix or pam_unix2 directives:&lt;br /&gt;
 auth     sufficient     pam_thinkfinger.so&lt;br /&gt;
&lt;br /&gt;
If your PAM uses the pam_unix and not the pam_unix2 module, you need to pass a specific argument in&lt;br /&gt;
the /etc/pam.d/common-auth directive to make it consider the password entered at the pam_thinkfinger prompt.&lt;br /&gt;
 auth     required     pam_unix.so try_first_pass&lt;br /&gt;
&lt;br /&gt;
For instance, {{path|/etc/pam.d/common-auth}} looks like this:&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix.so nullok_secure try_first_pass&lt;br /&gt;
&lt;br /&gt;
On openSUSE 10.2, it looks like this now:&lt;br /&gt;
 auth    required        pam_env.so&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix2.so&lt;br /&gt;
&lt;br /&gt;
On Ubuntu 8.10 - Intrepid Ibex you should just add the following line the the /etc/pam.d/common-auth file so it looks like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
....&lt;br /&gt;
# here are the per-package modules (the &amp;quot;Primary&amp;quot; block)&lt;br /&gt;
auth	sufficient	pam_thinkfinger.so&lt;br /&gt;
auth	[success=1 default=ignore]	pam_unix.so try_first_pass nullok_secure&lt;br /&gt;
# here's the fallback if no module succeeds&lt;br /&gt;
....&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we are ready to add users to thinkfinger. You can add a fingerprint for a user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user $USERNAME}}&lt;br /&gt;
&lt;br /&gt;
Now the user should be able to login with his finger instead of the password.&lt;br /&gt;
&lt;br /&gt;
If you would like to use thinkfinger for su, you have to enroll the fingerprint for root user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user root}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|You should see the &amp;quot;Password or swipe finger:&amp;quot; prompt when trying to sudo or su. If you don't, you probably do not have the &amp;quot;User level driver support&amp;quot; compiled into your kernel or the &amp;quot;uinput&amp;quot; module loaded!}}&lt;br /&gt;
&lt;br /&gt;
== xscreensaver/gnome-screensaver ==&lt;br /&gt;
{{NOTE|In Fedora 7, the package has been modified in such a way as to make doing this unnecessary.}}&lt;br /&gt;
&lt;br /&gt;
If you'd like to be able to unlock your screen using the fingerprint reader, you must have current versions of xscreesaver (&amp;gt;~5.03) or gnome-screensaver (&amp;gt;~2.18.2). Then you must give yourself access to the fingerprint reader and your bir-file, because unlike login/gdm/su/sudo, both gnome-screensaver and xscreensaver do not run as root. The following procedure will make the fingerprint reader accessible to members of the &amp;quot;fingerprint&amp;quot; group.&lt;br /&gt;
&lt;br /&gt;
Make the group: {{cmdroot|groupadd fingerprint}}&lt;br /&gt;
&lt;br /&gt;
Save the following as {{path|/etc/udev/rules.d/60-thinkfinger.rules}} and run {{cmdroot|sudo /sbin/udevtrigger}} (you may need to reboot for this to take effect if udev trigger does not work):&lt;br /&gt;
 #&lt;br /&gt;
 # udev rules file for the thinkfinger fingerprint scanner&lt;br /&gt;
 # &lt;br /&gt;
 # gives access to the fingerprint reader to those in the &amp;quot;fingerprint&amp;quot; group&lt;br /&gt;
 #&lt;br /&gt;
 # Taken from:&lt;br /&gt;
 #  http://www.thinkwiki.org/wiki/How_to_enable_the_fingerprint_reader_with_ThinkFinger&lt;br /&gt;
 # which was taken and modified from:&lt;br /&gt;
 #  http://article.gmane.org/gmane.linux.drivers.thinkfinger/329&lt;br /&gt;
 #&lt;br /&gt;
 &lt;br /&gt;
 # SGS Thomson Microelectronics Fingerprint Reader&lt;br /&gt;
 SYSFS{idVendor}==&amp;quot;0483&amp;quot;, SYSFS{idProduct}==&amp;quot;2016&amp;quot;, SYMLINK+=&amp;quot;input/thinkfinger-%k&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 # the also-needed uinput device&lt;br /&gt;
 KERNEL==&amp;quot;uinput&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, edit {{path|/etc/pam.d/gnome-screensaver}} so that it looks like this:&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix.so try_first_pass nullok_secure&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Per user:&lt;br /&gt;
&lt;br /&gt;
# Add him to the group: {{cmdroot|gpasswd -a $USERNAME fingerprint}}&lt;br /&gt;
# Make him owner of his bir-file: {{cmdroot|chown $USERNAME:root /etc/pam_thinkfinger/$USERNAME.bir}}&lt;br /&gt;
# Give him read-only access to his bir-file: {{cmdroot|chmod 400 /etc/pam_thinkfinger/$USERNAME.bir}}&lt;br /&gt;
# Give &amp;quot;execute only&amp;quot; access to everyone for the /etc/pam_thinkfinger/ directory: {{cmdroot|chmod o+x /etc/pam_thinkfinger}} (WARNING: this opens up security a little).&lt;br /&gt;
&lt;br /&gt;
== GNOME ==&lt;br /&gt;
&lt;br /&gt;
{{NOTE|1=This problem should be solved if you're using sudo &amp;gt;= 1.6.9p9. Links: [http://savannah.nongnu.org/bugs/?19132], [http://www.sudo.ws/bugs/show_bug.cgi?id=180], [https://bugs.launchpad.net/ubuntu/+source/gksu/+bug/86843]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
gksu/gksudo doesn't work correctly. It just stays invisible. When starting a su privileged application such as synaptics you will not get prompted for the password. Nevertheless you can swipe your finger and it should authenticate you. Starting synaptics twice makes gksudo visible.&lt;br /&gt;
&lt;br /&gt;
There are two possibilities to solve it:&lt;br /&gt;
* Changing the string &amp;quot;Password or swipe finger:&amp;quot; to a plain &amp;quot;Password:&amp;quot; (like sudo normally would do) in the file pam/pam_thinkfinger.c of the thinkfinger source directory. Of course, in the console you will then only see a &amp;quot;Password:&amp;quot; instead of &amp;quot;Password or swipe finger:&amp;quot; but this is still more usefull than having gksu/gksudo crashing everytime.&lt;br /&gt;
* Patching libgksu with the following patch. This is also a nasty hack until a better solution is implemented.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
--- libgksu-2.0.3/libgksu/libgksu.c.orig	2007-06-17 16:00:24.000000000 +0200&lt;br /&gt;
+++ libgksu-2.0.3/libgksu/libgksu.c		2007-06-17 16:00:47.000000000 +0200&lt;br /&gt;
@@ -2663,7 +2663,7 @@&lt;br /&gt;
        */&lt;br /&gt;
       for (counter = 0; counter &amp;lt; 50; counter++)&lt;br /&gt;
 	{&lt;br /&gt;
-	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp (buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	    break;&lt;br /&gt;
 &lt;br /&gt;
 	  read_line (parent_pipe[0], buffer, 256);&lt;br /&gt;
@@ -2675,7 +2675,7 @@&lt;br /&gt;
       if (context-&amp;gt;debug)&lt;br /&gt;
 	fprintf (stderr, &amp;quot;brute force GNOME_SUDO_PASS ended...\n&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
-      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp(buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	{&lt;br /&gt;
 	  gchar *password = NULL;&lt;br /&gt;
 	  gboolean prompt_grab;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== KDE ==&lt;br /&gt;
&lt;br /&gt;
Integration in KDE and kdm seems not to be easily possible now. There is a filed [https://bugs.kde.org/show_bug.cgi?id=116682 bug] at kde.org where you can vote for this.&lt;br /&gt;
&lt;br /&gt;
Moreover, kdm in openSUSE 10.3 crashes when pam_thinkfinger is enabled. A possible &amp;quot;workaround&amp;quot; is downgrading to thinkfinger 0.2.2.&lt;br /&gt;
&lt;br /&gt;
Another workaround is to use Fprint from [http://www.reactivated.net/fprint/wiki/Main_Page] which works quite nicely on my X61s and Kubuntu Hardy.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Howto was copied from [[Installing Ubuntu 6.06 on a ThinkPad T43#Fingerprint_Reader]] and then slightly modified.&lt;br /&gt;
&lt;br /&gt;
== Fix for the fingerprint reader getting too hot ==&lt;br /&gt;
&lt;br /&gt;
If you notice that your fingerprint reader occasionally gets very hot then you might be interested in this section. Thanks to Tino Keitel, he actually gave me this solution through the linux-thinkpad mailing list.&lt;br /&gt;
&lt;br /&gt;
First we need to determine if the reader is not on autosuspend mode.&lt;br /&gt;
Open a terminal and run:&lt;br /&gt;
&lt;br /&gt;
 for i in `find /sys/devices/*/*/usb* -name level` ; do echo -n &amp;quot;$i: &amp;quot; ; cat $i ; done&lt;br /&gt;
&lt;br /&gt;
We care about the devices that are with &amp;quot;on&amp;quot; state and we need to determine if one of those is the reader. So for each of those run something like:&lt;br /&gt;
&lt;br /&gt;
 cat /sys/devices/pci0000\:00/0000\:00\:1a.0/usb1/1-2/idVendor &lt;br /&gt;
 0483&lt;br /&gt;
 &lt;br /&gt;
 cat /sys/devices/pci0000\:00/0000\:00\:1a.0/usb1/1-2/idProduct &lt;br /&gt;
 2016&lt;br /&gt;
&lt;br /&gt;
Use the corresponding path of the devices that you got with &amp;quot;on&amp;quot; state and then compare the output with the output of the lsusb command. An example:&lt;br /&gt;
&lt;br /&gt;
 lsusb output: Bus 001 Device 004: ID 0483:2016 SGS Thomson Microelectronics Fingerprint Reader&lt;br /&gt;
&lt;br /&gt;
Which matches the output above (0483:2016). Once you have determined the path of your reader then become root with su - and:&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;auto&amp;quot; &amp;gt; /sys/&amp;lt;path-to-device&amp;gt;/power/level&lt;br /&gt;
&lt;br /&gt;
After this, the fingerprint reader should be in &amp;quot;autosuspend&amp;quot; and will not get hot anymore. And it will still work as normal.&lt;br /&gt;
&lt;br /&gt;
This will only work for the current session. If you want to make this change persistent and have [http://linux-diag.sourceforge.net/Sysfsutils.html sysfsutils] installed, edit the file {{path|/etc/sysfs.conf}} and add the line&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;path-to-device&amp;gt;/power/level = auto&lt;br /&gt;
&lt;br /&gt;
Following the above example, that would be &lt;br /&gt;
&lt;br /&gt;
 devices/pci0000\:00/0000\:00\:1a.0/usb1/1-2/power/level = auto&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can install an init script:&lt;br /&gt;
&lt;br /&gt;
 sudo gedit /etc/init.d/ReaderNoMoreHot&lt;br /&gt;
&lt;br /&gt;
Paste the following into it:&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 #&lt;br /&gt;
 echo &amp;quot;auto&amp;quot; &amp;gt; /sys/&amp;lt;path-to-device&amp;gt;/power/level&lt;br /&gt;
&lt;br /&gt;
Save and close. Then:&lt;br /&gt;
&lt;br /&gt;
 sudo chmod 755 /etc/init.d/ReaderNoMoreHot&lt;br /&gt;
 sudo update-rc.d ReaderNoMoreHot defaults 90&lt;br /&gt;
&lt;br /&gt;
--[[User:Lunatico|Lunatico]] 19:19, 1 August 2008 (CEST), extended by --[[User:Michaelthomas h|Michaelthomas h]] 23:36, 9 August 2008 (CEST)&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=39592</id>
		<title>How to enable the integrated fingerprint reader with ThinkFinger</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=39592"/>
		<updated>2008-11-07T17:49:12Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: /* Debian */ pre -&amp;gt; cmdroot template&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[How to enable the fingerprint reader]] has a good explanation for using the fingerprint reader with the closed-source binary driver. But there is also an opensource project called [http://thinkfinger.sourceforge.net ThinkFinger] which does the same, but open.&lt;br /&gt;
&lt;br /&gt;
However: The fingerprint reader is an INSECURE device and gives a false sense of security! There has been quite a bit of research by a hacker named Starbug, a member of the Chaos Computer Club, Berlin, Germany. He outlined in two very good talks how to forge each and every available fingerprint sensor available at the cost of a few euros, using materials from your local hardware store, a digicam and a laser printer! Here's some links:&lt;br /&gt;
* [http://www.ccc.de/updates/2007/umsonst-im-supermarkt?language=en  Fingerprint recognition in supermarkets]&lt;br /&gt;
* [ftp://ftp.ccc.de/pub/video/Fingerabdruck_Hack/fingerabdruck.mpg?language=en Video tutorial for forging fingerprints]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Installing ==&lt;br /&gt;
=== From source ===&lt;br /&gt;
&lt;br /&gt;
Download thinkfinger-0.3.tar.gz from the [http://thinkfinger.sourceforge.net/ homepage] and unpack it somewhere, make sure you have the gcc compiler, libtool, pkg-config, libusb-dev and libpam0g-dev installed, then:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|cd thinkfinger-0.3}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code style=&amp;quot;white-space:nowrap;color:#495988;background-color:white;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;$&amp;lt;/nowiki&amp;gt; ./configure --prefix=/usr --sysconfdir=/etc --with-securedir=/lib/security --with-birdir=/etc/pam_thinkfinger&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{cmduser|make}}&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|make install}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|/lib/security is the directory, where PAM assumes its modules on Debian and openSUSE, it may vary for your distro!}}&lt;br /&gt;
&lt;br /&gt;
&amp;quot;make install&amp;quot; doesn't create the birdir we specified (where thinkfinger will store users' biometric info), so create it:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|mkdir /etc/pam_thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
If everything went OK assert that you find pam_thinkfinger.so in /lib/security typing:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|ls /lib/security}}&lt;br /&gt;
&lt;br /&gt;
=== From package ===&lt;br /&gt;
&lt;br /&gt;
==== Debian ====&lt;br /&gt;
[http://packages.debian.org/source/experimental/thinkfinger Packages] arrived in Debian experimental on Aug 2nd, 2007 (cf. [http://bugs.debian.org/409563 bug #409563]). To access the experimental packages via apt, add the following lines to your sources.list:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# experimental&lt;br /&gt;
deb ftp://mirrors.kernel.org/debian/ experimental main contrib non-free&lt;br /&gt;
deb-src ftp://mirrors.kernel.org/debian/ experimental main contrib non-free&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
where of course you may replace mirrors.kernel.org with your mirror of choice. Just make sure that it hosts the experimental repositories.&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|aptitude update}}&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|aptitude install libthinkfinger0 libpam-thinkfinger thinkfinger-tools}}&lt;br /&gt;
&lt;br /&gt;
should then get you up and running.&lt;br /&gt;
&lt;br /&gt;
To make everything work you'll have to have permission to work the device ({{cmduser|sudo adduser myself plugdev}} worked for me), and you'll also have to follow instructions below about adding the device to your PAM methods.&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu ====&lt;br /&gt;
&lt;br /&gt;
===== Hardy =====&lt;br /&gt;
&lt;br /&gt;
Hardy includes the latest thinkfinger and it is up to date with subversion.  Install packages:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo apt-get install thinkfinger-tools libpam-thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
Update the pam configuration files:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo /usr/lib/pam-thinkfinger/pam-thinkfinger-enable}}&lt;br /&gt;
&lt;br /&gt;
Enroll your fingerprint (creates $HOME/.thinkfinger.bir).  If this gives an error about claiming the USB device then a reboot was claimed to work, but in fact it may just be a permissions problem.  {{NOTE|Do not try to enroll using 'sudo' - it will cause hidden permission problems}}&lt;br /&gt;
&lt;br /&gt;
{{cmduser|tf-tool --acquire}}&lt;br /&gt;
&lt;br /&gt;
Check fingerprint enrollment&lt;br /&gt;
&lt;br /&gt;
{{cmduser|tf-tool --verify}}&lt;br /&gt;
&lt;br /&gt;
You can expect everything to work correctly.  Note that you still have to enter your username if prompted but will be able&lt;br /&gt;
to swipe your finger instead of the password.  The prompt will usually be &amp;quot;Password or swipe finger&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Graphical login&lt;br /&gt;
* Text console login&lt;br /&gt;
* sudo&lt;br /&gt;
* screen lock/screen saver&lt;br /&gt;
* Administrative password prompt (eg for update or package managers).  (Note no &amp;quot;or swipe finger&amp;quot; in prompt).&lt;br /&gt;
&lt;br /&gt;
===== Gutsy =====&lt;br /&gt;
&lt;br /&gt;
From https://wiki.ubuntu.com/ThinkFinger&lt;br /&gt;
&lt;br /&gt;
Add PPA repositories to your sources.list:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb     http://ppa.launchpad.net/jldugger/ubuntu gutsy main restricted universe multiverse&lt;br /&gt;
deb-src http://ppa.launchpad.net/jldugger/ubuntu gutsy main restricted universe multiverse&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install necessary packages:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo apt-get install thinkfinger-tools  libpam-thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
===== Intrepid Ibex =====&lt;br /&gt;
After installing from the normal repositories coming with Ubuntu 8.10, you would have to press enter after sweeping finger. (This bug: [https://bugs.launchpad.net/ubuntu/+source/thinkfinger/+bug/256429 https://bugs.launchpad.net/ubuntu/+source/thinkfinger/+bug/256429])&lt;br /&gt;
Therefore Jon Oberheide made an update that can be found here: &lt;br /&gt;
[https://launchpad.net/~jon-oberheide/+archive https://launchpad.net/~jon-oberheide/+archive]&lt;br /&gt;
&lt;br /&gt;
Add the PPA repositories to your source.list (/etc/apt/source.list):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://ppa.launchpad.net/jon-oberheide/ubuntu intrepid main&lt;br /&gt;
deb-src http://ppa.launchpad.net/jon-oberheide/ubuntu intrepid main&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update installer:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo apt-get update}}&lt;br /&gt;
&lt;br /&gt;
And install:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo apt-get thinkfinger-tools}}&lt;br /&gt;
&lt;br /&gt;
==== Fedora/Fedora Core ====&lt;br /&gt;
{{cmdroot|yum install thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
==== Gentoo ====&lt;br /&gt;
{{cmdroot|emerge sys-auth/thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
==== OpenSUSE ====&lt;br /&gt;
openSUSE 10.2 includes the package &amp;quot;libthinkfinger&amp;quot; (version 0.1-7) - you will find newer packages [http://beta1.suse.com/private/thoenig/10.2/thinkfinger/ here].&lt;br /&gt;
&lt;br /&gt;
== Testing the driver ==&lt;br /&gt;
&lt;br /&gt;
Now the driver is installed and should be working. You can try it (as root) with&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --acquire}}&lt;br /&gt;
&lt;br /&gt;
and&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --verify}}&lt;br /&gt;
&lt;br /&gt;
This will ask you to swipe your finger three times, save the fingerprint to /tmp/test.bir and then verify your fingerprint with the bir-file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Configuring PAM to use ThinkFinger ==&lt;br /&gt;
Now you can configure PAM to use ThinkFinger:&lt;br /&gt;
&lt;br /&gt;
Open {{path|/etc/pam.d/common-auth}} (In FC6, F7, and Gentoo, this file is {{path|/etc/pam.d/system-auth}}):&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|nano -w /etc/pam.d/common-auth}}&lt;br /&gt;
&lt;br /&gt;
Add this line before any pam_unix or pam_unix2 directives:&lt;br /&gt;
 auth     sufficient     pam_thinkfinger.so&lt;br /&gt;
&lt;br /&gt;
If your PAM uses the pam_unix and not the pam_unix2 module, you need to pass a specific argument in&lt;br /&gt;
the /etc/pam.d/common-auth directive to make it consider the password entered at the pam_thinkfinger prompt.&lt;br /&gt;
 auth     required     pam_unix.so try_first_pass&lt;br /&gt;
&lt;br /&gt;
For instance, {{path|/etc/pam.d/common-auth}} looks like this:&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix.so nullok_secure try_first_pass&lt;br /&gt;
&lt;br /&gt;
On openSUSE 10.2, it looks like this now:&lt;br /&gt;
 auth    required        pam_env.so&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix2.so&lt;br /&gt;
&lt;br /&gt;
On Ubuntu 8.10 - Intrepid Ibex you should just add the following line the the /etc/pam.d/common-auth file so it looks like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
....&lt;br /&gt;
# here are the per-package modules (the &amp;quot;Primary&amp;quot; block)&lt;br /&gt;
auth	sufficient	pam_thinkfinger.so&lt;br /&gt;
auth	[success=1 default=ignore]	pam_unix.so try_first_pass nullok_secure&lt;br /&gt;
# here's the fallback if no module succeeds&lt;br /&gt;
....&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we are ready to add users to thinkfinger. You can add a fingerprint for a user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user $USERNAME}}&lt;br /&gt;
&lt;br /&gt;
Now the user should be able to login with his finger instead of the password.&lt;br /&gt;
&lt;br /&gt;
If you would like to use thinkfinger for su, you have to enroll the fingerprint for root user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user root}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|You should see the &amp;quot;Password or swipe finger:&amp;quot; prompt when trying to sudo or su. If you don't, you probably do not have the &amp;quot;User level driver support&amp;quot; compiled into your kernel or the &amp;quot;uinput&amp;quot; module loaded!}}&lt;br /&gt;
&lt;br /&gt;
== xscreensaver/gnome-screensaver ==&lt;br /&gt;
{{NOTE|In Fedora 7, the package has been modified in such a way as to make doing this unnecessary.}}&lt;br /&gt;
&lt;br /&gt;
If you'd like to be able to unlock your screen using the fingerprint reader, you must have current versions of xscreesaver (&amp;gt;~5.03) or gnome-screensaver (&amp;gt;~2.18.2). Then you must give yourself access to the fingerprint reader and your bir-file, because unlike login/gdm/su/sudo, both gnome-screensaver and xscreensaver do not run as root. The following procedure will make the fingerprint reader accessible to members of the &amp;quot;fingerprint&amp;quot; group.&lt;br /&gt;
&lt;br /&gt;
Make the group: {{cmdroot|groupadd fingerprint}}&lt;br /&gt;
&lt;br /&gt;
Save the following as {{path|/etc/udev/rules.d/60-thinkfinger.rules}} and run {{cmdroot|sudo /sbin/udevtrigger}} (you may need to reboot for this to take effect if udev trigger does not work):&lt;br /&gt;
 #&lt;br /&gt;
 # udev rules file for the thinkfinger fingerprint scanner&lt;br /&gt;
 # &lt;br /&gt;
 # gives access to the fingerprint reader to those in the &amp;quot;fingerprint&amp;quot; group&lt;br /&gt;
 #&lt;br /&gt;
 # Taken from:&lt;br /&gt;
 #  http://www.thinkwiki.org/wiki/How_to_enable_the_fingerprint_reader_with_ThinkFinger&lt;br /&gt;
 # which was taken and modified from:&lt;br /&gt;
 #  http://article.gmane.org/gmane.linux.drivers.thinkfinger/329&lt;br /&gt;
 #&lt;br /&gt;
 &lt;br /&gt;
 # SGS Thomson Microelectronics Fingerprint Reader&lt;br /&gt;
 SYSFS{idVendor}==&amp;quot;0483&amp;quot;, SYSFS{idProduct}==&amp;quot;2016&amp;quot;, SYMLINK+=&amp;quot;input/thinkfinger-%k&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 # the also-needed uinput device&lt;br /&gt;
 KERNEL==&amp;quot;uinput&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, edit {{path|/etc/pam.d/gnome-screensaver}} so that it looks like this:&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix.so try_first_pass nullok_secure&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Per user:&lt;br /&gt;
&lt;br /&gt;
# Add him to the group: {{cmdroot|gpasswd -a $USERNAME fingerprint}}&lt;br /&gt;
# Make him owner of his bir-file: {{cmdroot|chown $USERNAME:root /etc/pam_thinkfinger/$USERNAME.bir}}&lt;br /&gt;
# Give him read-only access to his bir-file: {{cmdroot|chmod 400 /etc/pam_thinkfinger/$USERNAME.bir}}&lt;br /&gt;
# Give &amp;quot;execute only&amp;quot; access to everyone for the /etc/pam_thinkfinger/ directory: {{cmdroot|chmod o+x /etc/pam_thinkfinger}} (WARNING: this opens up security a little).&lt;br /&gt;
&lt;br /&gt;
== GNOME ==&lt;br /&gt;
&lt;br /&gt;
{{NOTE|1=This problem should be solved if you're using sudo &amp;gt;= 1.6.9p9. Links: [http://savannah.nongnu.org/bugs/?19132], [http://www.sudo.ws/bugs/show_bug.cgi?id=180], [https://bugs.launchpad.net/ubuntu/+source/gksu/+bug/86843]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
gksu/gksudo doesn't work correctly. It just stays invisible. When starting a su privileged application such as synaptics you will not get prompted for the password. Nevertheless you can swipe your finger and it should authenticate you. Starting synaptics twice makes gksudo visible.&lt;br /&gt;
&lt;br /&gt;
There are two possibilities to solve it:&lt;br /&gt;
* Changing the string &amp;quot;Password or swipe finger:&amp;quot; to a plain &amp;quot;Password:&amp;quot; (like sudo normally would do) in the file pam/pam_thinkfinger.c of the thinkfinger source directory. Of course, in the console you will then only see a &amp;quot;Password:&amp;quot; instead of &amp;quot;Password or swipe finger:&amp;quot; but this is still more usefull than having gksu/gksudo crashing everytime.&lt;br /&gt;
* Patching libgksu with the following patch. This is also a nasty hack until a better solution is implemented.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
--- libgksu-2.0.3/libgksu/libgksu.c.orig	2007-06-17 16:00:24.000000000 +0200&lt;br /&gt;
+++ libgksu-2.0.3/libgksu/libgksu.c		2007-06-17 16:00:47.000000000 +0200&lt;br /&gt;
@@ -2663,7 +2663,7 @@&lt;br /&gt;
        */&lt;br /&gt;
       for (counter = 0; counter &amp;lt; 50; counter++)&lt;br /&gt;
 	{&lt;br /&gt;
-	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp (buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	    break;&lt;br /&gt;
 &lt;br /&gt;
 	  read_line (parent_pipe[0], buffer, 256);&lt;br /&gt;
@@ -2675,7 +2675,7 @@&lt;br /&gt;
       if (context-&amp;gt;debug)&lt;br /&gt;
 	fprintf (stderr, &amp;quot;brute force GNOME_SUDO_PASS ended...\n&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
-      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp(buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	{&lt;br /&gt;
 	  gchar *password = NULL;&lt;br /&gt;
 	  gboolean prompt_grab;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== KDE ==&lt;br /&gt;
&lt;br /&gt;
Integration in KDE and kdm seems not to be easily possible now. There is a filed [https://bugs.kde.org/show_bug.cgi?id=116682 bug] at kde.org where you can vote for this.&lt;br /&gt;
&lt;br /&gt;
Moreover, kdm in openSUSE 10.3 crashes when pam_thinkfinger is enabled. A possible &amp;quot;workaround&amp;quot; is downgrading to thinkfinger 0.2.2.&lt;br /&gt;
&lt;br /&gt;
Another workaround is to use Fprint from [http://www.reactivated.net/fprint/wiki/Main_Page] which works quite nicely on my X61s and Kubuntu Hardy.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Howto was copied from [[Installing Ubuntu 6.06 on a ThinkPad T43#Fingerprint_Reader]] and then slightly modified.&lt;br /&gt;
&lt;br /&gt;
== Fix for the fingerprint reader getting too hot ==&lt;br /&gt;
&lt;br /&gt;
If you notice that your fingerprint reader occasionally gets very hot then you might be interested in this section. Thanks to Tino Keitel, he actually gave me this solution through the linux-thinkpad mailing list.&lt;br /&gt;
&lt;br /&gt;
First we need to determine if the reader is not on autosuspend mode.&lt;br /&gt;
Open a terminal and run:&lt;br /&gt;
&lt;br /&gt;
 for i in `find /sys/devices/*/*/usb* -name level` ; do echo -n &amp;quot;$i: &amp;quot; ; cat $i ; done&lt;br /&gt;
&lt;br /&gt;
We care about the devices that are with &amp;quot;on&amp;quot; state and we need to determine if one of those is the reader. So for each of those run something like:&lt;br /&gt;
&lt;br /&gt;
 cat /sys/devices/pci0000\:00/0000\:00\:1a.0/usb1/1-2/idVendor &lt;br /&gt;
 0483&lt;br /&gt;
 &lt;br /&gt;
 cat /sys/devices/pci0000\:00/0000\:00\:1a.0/usb1/1-2/idProduct &lt;br /&gt;
 2016&lt;br /&gt;
&lt;br /&gt;
Use the corresponding path of the devices that you got with &amp;quot;on&amp;quot; state and then compare the output with the output of the lsusb command. An example:&lt;br /&gt;
&lt;br /&gt;
 lsusb output: Bus 001 Device 004: ID 0483:2016 SGS Thomson Microelectronics Fingerprint Reader&lt;br /&gt;
&lt;br /&gt;
Which matches the output above (0483:2016). Once you have determined the path of your reader then become root with su - and:&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;auto&amp;quot; &amp;gt; /sys/&amp;lt;path-to-device&amp;gt;/power/level&lt;br /&gt;
&lt;br /&gt;
After this, the fingerprint reader should be in &amp;quot;autosuspend&amp;quot; and will not get hot anymore. And it will still work as normal.&lt;br /&gt;
&lt;br /&gt;
This will only work for the current session. If you want to make this change persistent and have [http://linux-diag.sourceforge.net/Sysfsutils.html sysfsutils] installed, edit the file {{path|/etc/sysfs.conf}} and add the line&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;path-to-device&amp;gt;/power/level = auto&lt;br /&gt;
&lt;br /&gt;
Following the above example, that would be &lt;br /&gt;
&lt;br /&gt;
 devices/pci0000\:00/0000\:00\:1a.0/usb1/1-2/power/level = auto&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can install an init script:&lt;br /&gt;
&lt;br /&gt;
 sudo gedit /etc/init.d/ReaderNoMoreHot&lt;br /&gt;
&lt;br /&gt;
Paste the following into it:&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 #&lt;br /&gt;
 echo &amp;quot;auto&amp;quot; &amp;gt; /sys/&amp;lt;path-to-device&amp;gt;/power/level&lt;br /&gt;
&lt;br /&gt;
Save and close. Then:&lt;br /&gt;
&lt;br /&gt;
 sudo chmod 755 /etc/init.d/ReaderNoMoreHot&lt;br /&gt;
 sudo update-rc.d ReaderNoMoreHot defaults 90&lt;br /&gt;
&lt;br /&gt;
--[[User:Lunatico|Lunatico]] 19:19, 1 August 2008 (CEST), extended by --[[User:Michaelthomas h|Michaelthomas h]] 23:36, 9 August 2008 (CEST)&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=39591</id>
		<title>How to enable the integrated fingerprint reader with ThinkFinger</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=39591"/>
		<updated>2008-11-07T17:46:56Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: /* Gentoo */ pre =&amp;gt; cmdroot template&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[How to enable the fingerprint reader]] has a good explanation for using the fingerprint reader with the closed-source binary driver. But there is also an opensource project called [http://thinkfinger.sourceforge.net ThinkFinger] which does the same, but open.&lt;br /&gt;
&lt;br /&gt;
However: The fingerprint reader is an INSECURE device and gives a false sense of security! There has been quite a bit of research by a hacker named Starbug, a member of the Chaos Computer Club, Berlin, Germany. He outlined in two very good talks how to forge each and every available fingerprint sensor available at the cost of a few euros, using materials from your local hardware store, a digicam and a laser printer! Here's some links:&lt;br /&gt;
* [http://www.ccc.de/updates/2007/umsonst-im-supermarkt?language=en  Fingerprint recognition in supermarkets]&lt;br /&gt;
* [ftp://ftp.ccc.de/pub/video/Fingerabdruck_Hack/fingerabdruck.mpg?language=en Video tutorial for forging fingerprints]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Installing ==&lt;br /&gt;
=== From source ===&lt;br /&gt;
&lt;br /&gt;
Download thinkfinger-0.3.tar.gz from the [http://thinkfinger.sourceforge.net/ homepage] and unpack it somewhere, make sure you have the gcc compiler, libtool, pkg-config, libusb-dev and libpam0g-dev installed, then:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|cd thinkfinger-0.3}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code style=&amp;quot;white-space:nowrap;color:#495988;background-color:white;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;$&amp;lt;/nowiki&amp;gt; ./configure --prefix=/usr --sysconfdir=/etc --with-securedir=/lib/security --with-birdir=/etc/pam_thinkfinger&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{cmduser|make}}&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|make install}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|/lib/security is the directory, where PAM assumes its modules on Debian and openSUSE, it may vary for your distro!}}&lt;br /&gt;
&lt;br /&gt;
&amp;quot;make install&amp;quot; doesn't create the birdir we specified (where thinkfinger will store users' biometric info), so create it:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|mkdir /etc/pam_thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
If everything went OK assert that you find pam_thinkfinger.so in /lib/security typing:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|ls /lib/security}}&lt;br /&gt;
&lt;br /&gt;
=== From package ===&lt;br /&gt;
&lt;br /&gt;
==== Debian ====&lt;br /&gt;
[http://packages.debian.org/source/experimental/thinkfinger Packages] arrived in Debian experimental on Aug 2nd, 2007 (cf. [http://bugs.debian.org/409563 bug #409563]). To access the experimental packages via apt, add the following lines to your sources.list:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# experimental&lt;br /&gt;
deb ftp://mirrors.kernel.org/debian/ experimental main contrib non-free&lt;br /&gt;
deb-src ftp://mirrors.kernel.org/debian/ experimental main contrib non-free&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
where of course you may replace mirrors.kernel.org with your mirror of choice. Just make sure that it hosts the experimental repositories.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
aptitude update &lt;br /&gt;
aptitude install libthinkfinger0 libpam-thinkfinger thinkfinger-tools&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
should then get you up and running.&lt;br /&gt;
&lt;br /&gt;
To make everything work you'll have to have permission to work the device ({{cmduser|sudo adduser myself plugdev}} worked for me), and you'll also have to follow instructions below about adding the device to your PAM methods.&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu ====&lt;br /&gt;
&lt;br /&gt;
===== Hardy =====&lt;br /&gt;
&lt;br /&gt;
Hardy includes the latest thinkfinger and it is up to date with subversion.  Install packages:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo apt-get install thinkfinger-tools libpam-thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
Update the pam configuration files:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo /usr/lib/pam-thinkfinger/pam-thinkfinger-enable}}&lt;br /&gt;
&lt;br /&gt;
Enroll your fingerprint (creates $HOME/.thinkfinger.bir).  If this gives an error about claiming the USB device then a reboot was claimed to work, but in fact it may just be a permissions problem.  {{NOTE|Do not try to enroll using 'sudo' - it will cause hidden permission problems}}&lt;br /&gt;
&lt;br /&gt;
{{cmduser|tf-tool --acquire}}&lt;br /&gt;
&lt;br /&gt;
Check fingerprint enrollment&lt;br /&gt;
&lt;br /&gt;
{{cmduser|tf-tool --verify}}&lt;br /&gt;
&lt;br /&gt;
You can expect everything to work correctly.  Note that you still have to enter your username if prompted but will be able&lt;br /&gt;
to swipe your finger instead of the password.  The prompt will usually be &amp;quot;Password or swipe finger&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Graphical login&lt;br /&gt;
* Text console login&lt;br /&gt;
* sudo&lt;br /&gt;
* screen lock/screen saver&lt;br /&gt;
* Administrative password prompt (eg for update or package managers).  (Note no &amp;quot;or swipe finger&amp;quot; in prompt).&lt;br /&gt;
&lt;br /&gt;
===== Gutsy =====&lt;br /&gt;
&lt;br /&gt;
From https://wiki.ubuntu.com/ThinkFinger&lt;br /&gt;
&lt;br /&gt;
Add PPA repositories to your sources.list:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb     http://ppa.launchpad.net/jldugger/ubuntu gutsy main restricted universe multiverse&lt;br /&gt;
deb-src http://ppa.launchpad.net/jldugger/ubuntu gutsy main restricted universe multiverse&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install necessary packages:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo apt-get install thinkfinger-tools  libpam-thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
===== Intrepid Ibex =====&lt;br /&gt;
After installing from the normal repositories coming with Ubuntu 8.10, you would have to press enter after sweeping finger. (This bug: [https://bugs.launchpad.net/ubuntu/+source/thinkfinger/+bug/256429 https://bugs.launchpad.net/ubuntu/+source/thinkfinger/+bug/256429])&lt;br /&gt;
Therefore Jon Oberheide made an update that can be found here: &lt;br /&gt;
[https://launchpad.net/~jon-oberheide/+archive https://launchpad.net/~jon-oberheide/+archive]&lt;br /&gt;
&lt;br /&gt;
Add the PPA repositories to your source.list (/etc/apt/source.list):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://ppa.launchpad.net/jon-oberheide/ubuntu intrepid main&lt;br /&gt;
deb-src http://ppa.launchpad.net/jon-oberheide/ubuntu intrepid main&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update installer:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo apt-get update}}&lt;br /&gt;
&lt;br /&gt;
And install:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo apt-get thinkfinger-tools}}&lt;br /&gt;
&lt;br /&gt;
==== Fedora/Fedora Core ====&lt;br /&gt;
{{cmdroot|yum install thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
==== Gentoo ====&lt;br /&gt;
{{cmdroot|emerge sys-auth/thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
==== OpenSUSE ====&lt;br /&gt;
openSUSE 10.2 includes the package &amp;quot;libthinkfinger&amp;quot; (version 0.1-7) - you will find newer packages [http://beta1.suse.com/private/thoenig/10.2/thinkfinger/ here].&lt;br /&gt;
&lt;br /&gt;
== Testing the driver ==&lt;br /&gt;
&lt;br /&gt;
Now the driver is installed and should be working. You can try it (as root) with&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --acquire}}&lt;br /&gt;
&lt;br /&gt;
and&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --verify}}&lt;br /&gt;
&lt;br /&gt;
This will ask you to swipe your finger three times, save the fingerprint to /tmp/test.bir and then verify your fingerprint with the bir-file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Configuring PAM to use ThinkFinger ==&lt;br /&gt;
Now you can configure PAM to use ThinkFinger:&lt;br /&gt;
&lt;br /&gt;
Open {{path|/etc/pam.d/common-auth}} (In FC6, F7, and Gentoo, this file is {{path|/etc/pam.d/system-auth}}):&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|nano -w /etc/pam.d/common-auth}}&lt;br /&gt;
&lt;br /&gt;
Add this line before any pam_unix or pam_unix2 directives:&lt;br /&gt;
 auth     sufficient     pam_thinkfinger.so&lt;br /&gt;
&lt;br /&gt;
If your PAM uses the pam_unix and not the pam_unix2 module, you need to pass a specific argument in&lt;br /&gt;
the /etc/pam.d/common-auth directive to make it consider the password entered at the pam_thinkfinger prompt.&lt;br /&gt;
 auth     required     pam_unix.so try_first_pass&lt;br /&gt;
&lt;br /&gt;
For instance, {{path|/etc/pam.d/common-auth}} looks like this:&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix.so nullok_secure try_first_pass&lt;br /&gt;
&lt;br /&gt;
On openSUSE 10.2, it looks like this now:&lt;br /&gt;
 auth    required        pam_env.so&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix2.so&lt;br /&gt;
&lt;br /&gt;
On Ubuntu 8.10 - Intrepid Ibex you should just add the following line the the /etc/pam.d/common-auth file so it looks like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
....&lt;br /&gt;
# here are the per-package modules (the &amp;quot;Primary&amp;quot; block)&lt;br /&gt;
auth	sufficient	pam_thinkfinger.so&lt;br /&gt;
auth	[success=1 default=ignore]	pam_unix.so try_first_pass nullok_secure&lt;br /&gt;
# here's the fallback if no module succeeds&lt;br /&gt;
....&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we are ready to add users to thinkfinger. You can add a fingerprint for a user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user $USERNAME}}&lt;br /&gt;
&lt;br /&gt;
Now the user should be able to login with his finger instead of the password.&lt;br /&gt;
&lt;br /&gt;
If you would like to use thinkfinger for su, you have to enroll the fingerprint for root user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user root}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|You should see the &amp;quot;Password or swipe finger:&amp;quot; prompt when trying to sudo or su. If you don't, you probably do not have the &amp;quot;User level driver support&amp;quot; compiled into your kernel or the &amp;quot;uinput&amp;quot; module loaded!}}&lt;br /&gt;
&lt;br /&gt;
== xscreensaver/gnome-screensaver ==&lt;br /&gt;
{{NOTE|In Fedora 7, the package has been modified in such a way as to make doing this unnecessary.}}&lt;br /&gt;
&lt;br /&gt;
If you'd like to be able to unlock your screen using the fingerprint reader, you must have current versions of xscreesaver (&amp;gt;~5.03) or gnome-screensaver (&amp;gt;~2.18.2). Then you must give yourself access to the fingerprint reader and your bir-file, because unlike login/gdm/su/sudo, both gnome-screensaver and xscreensaver do not run as root. The following procedure will make the fingerprint reader accessible to members of the &amp;quot;fingerprint&amp;quot; group.&lt;br /&gt;
&lt;br /&gt;
Make the group: {{cmdroot|groupadd fingerprint}}&lt;br /&gt;
&lt;br /&gt;
Save the following as {{path|/etc/udev/rules.d/60-thinkfinger.rules}} and run {{cmdroot|sudo /sbin/udevtrigger}} (you may need to reboot for this to take effect if udev trigger does not work):&lt;br /&gt;
 #&lt;br /&gt;
 # udev rules file for the thinkfinger fingerprint scanner&lt;br /&gt;
 # &lt;br /&gt;
 # gives access to the fingerprint reader to those in the &amp;quot;fingerprint&amp;quot; group&lt;br /&gt;
 #&lt;br /&gt;
 # Taken from:&lt;br /&gt;
 #  http://www.thinkwiki.org/wiki/How_to_enable_the_fingerprint_reader_with_ThinkFinger&lt;br /&gt;
 # which was taken and modified from:&lt;br /&gt;
 #  http://article.gmane.org/gmane.linux.drivers.thinkfinger/329&lt;br /&gt;
 #&lt;br /&gt;
 &lt;br /&gt;
 # SGS Thomson Microelectronics Fingerprint Reader&lt;br /&gt;
 SYSFS{idVendor}==&amp;quot;0483&amp;quot;, SYSFS{idProduct}==&amp;quot;2016&amp;quot;, SYMLINK+=&amp;quot;input/thinkfinger-%k&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 # the also-needed uinput device&lt;br /&gt;
 KERNEL==&amp;quot;uinput&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, edit {{path|/etc/pam.d/gnome-screensaver}} so that it looks like this:&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix.so try_first_pass nullok_secure&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Per user:&lt;br /&gt;
&lt;br /&gt;
# Add him to the group: {{cmdroot|gpasswd -a $USERNAME fingerprint}}&lt;br /&gt;
# Make him owner of his bir-file: {{cmdroot|chown $USERNAME:root /etc/pam_thinkfinger/$USERNAME.bir}}&lt;br /&gt;
# Give him read-only access to his bir-file: {{cmdroot|chmod 400 /etc/pam_thinkfinger/$USERNAME.bir}}&lt;br /&gt;
# Give &amp;quot;execute only&amp;quot; access to everyone for the /etc/pam_thinkfinger/ directory: {{cmdroot|chmod o+x /etc/pam_thinkfinger}} (WARNING: this opens up security a little).&lt;br /&gt;
&lt;br /&gt;
== GNOME ==&lt;br /&gt;
&lt;br /&gt;
{{NOTE|1=This problem should be solved if you're using sudo &amp;gt;= 1.6.9p9. Links: [http://savannah.nongnu.org/bugs/?19132], [http://www.sudo.ws/bugs/show_bug.cgi?id=180], [https://bugs.launchpad.net/ubuntu/+source/gksu/+bug/86843]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
gksu/gksudo doesn't work correctly. It just stays invisible. When starting a su privileged application such as synaptics you will not get prompted for the password. Nevertheless you can swipe your finger and it should authenticate you. Starting synaptics twice makes gksudo visible.&lt;br /&gt;
&lt;br /&gt;
There are two possibilities to solve it:&lt;br /&gt;
* Changing the string &amp;quot;Password or swipe finger:&amp;quot; to a plain &amp;quot;Password:&amp;quot; (like sudo normally would do) in the file pam/pam_thinkfinger.c of the thinkfinger source directory. Of course, in the console you will then only see a &amp;quot;Password:&amp;quot; instead of &amp;quot;Password or swipe finger:&amp;quot; but this is still more usefull than having gksu/gksudo crashing everytime.&lt;br /&gt;
* Patching libgksu with the following patch. This is also a nasty hack until a better solution is implemented.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
--- libgksu-2.0.3/libgksu/libgksu.c.orig	2007-06-17 16:00:24.000000000 +0200&lt;br /&gt;
+++ libgksu-2.0.3/libgksu/libgksu.c		2007-06-17 16:00:47.000000000 +0200&lt;br /&gt;
@@ -2663,7 +2663,7 @@&lt;br /&gt;
        */&lt;br /&gt;
       for (counter = 0; counter &amp;lt; 50; counter++)&lt;br /&gt;
 	{&lt;br /&gt;
-	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp (buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	    break;&lt;br /&gt;
 &lt;br /&gt;
 	  read_line (parent_pipe[0], buffer, 256);&lt;br /&gt;
@@ -2675,7 +2675,7 @@&lt;br /&gt;
       if (context-&amp;gt;debug)&lt;br /&gt;
 	fprintf (stderr, &amp;quot;brute force GNOME_SUDO_PASS ended...\n&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
-      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp(buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	{&lt;br /&gt;
 	  gchar *password = NULL;&lt;br /&gt;
 	  gboolean prompt_grab;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== KDE ==&lt;br /&gt;
&lt;br /&gt;
Integration in KDE and kdm seems not to be easily possible now. There is a filed [https://bugs.kde.org/show_bug.cgi?id=116682 bug] at kde.org where you can vote for this.&lt;br /&gt;
&lt;br /&gt;
Moreover, kdm in openSUSE 10.3 crashes when pam_thinkfinger is enabled. A possible &amp;quot;workaround&amp;quot; is downgrading to thinkfinger 0.2.2.&lt;br /&gt;
&lt;br /&gt;
Another workaround is to use Fprint from [http://www.reactivated.net/fprint/wiki/Main_Page] which works quite nicely on my X61s and Kubuntu Hardy.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Howto was copied from [[Installing Ubuntu 6.06 on a ThinkPad T43#Fingerprint_Reader]] and then slightly modified.&lt;br /&gt;
&lt;br /&gt;
== Fix for the fingerprint reader getting too hot ==&lt;br /&gt;
&lt;br /&gt;
If you notice that your fingerprint reader occasionally gets very hot then you might be interested in this section. Thanks to Tino Keitel, he actually gave me this solution through the linux-thinkpad mailing list.&lt;br /&gt;
&lt;br /&gt;
First we need to determine if the reader is not on autosuspend mode.&lt;br /&gt;
Open a terminal and run:&lt;br /&gt;
&lt;br /&gt;
 for i in `find /sys/devices/*/*/usb* -name level` ; do echo -n &amp;quot;$i: &amp;quot; ; cat $i ; done&lt;br /&gt;
&lt;br /&gt;
We care about the devices that are with &amp;quot;on&amp;quot; state and we need to determine if one of those is the reader. So for each of those run something like:&lt;br /&gt;
&lt;br /&gt;
 cat /sys/devices/pci0000\:00/0000\:00\:1a.0/usb1/1-2/idVendor &lt;br /&gt;
 0483&lt;br /&gt;
 &lt;br /&gt;
 cat /sys/devices/pci0000\:00/0000\:00\:1a.0/usb1/1-2/idProduct &lt;br /&gt;
 2016&lt;br /&gt;
&lt;br /&gt;
Use the corresponding path of the devices that you got with &amp;quot;on&amp;quot; state and then compare the output with the output of the lsusb command. An example:&lt;br /&gt;
&lt;br /&gt;
 lsusb output: Bus 001 Device 004: ID 0483:2016 SGS Thomson Microelectronics Fingerprint Reader&lt;br /&gt;
&lt;br /&gt;
Which matches the output above (0483:2016). Once you have determined the path of your reader then become root with su - and:&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;auto&amp;quot; &amp;gt; /sys/&amp;lt;path-to-device&amp;gt;/power/level&lt;br /&gt;
&lt;br /&gt;
After this, the fingerprint reader should be in &amp;quot;autosuspend&amp;quot; and will not get hot anymore. And it will still work as normal.&lt;br /&gt;
&lt;br /&gt;
This will only work for the current session. If you want to make this change persistent and have [http://linux-diag.sourceforge.net/Sysfsutils.html sysfsutils] installed, edit the file {{path|/etc/sysfs.conf}} and add the line&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;path-to-device&amp;gt;/power/level = auto&lt;br /&gt;
&lt;br /&gt;
Following the above example, that would be &lt;br /&gt;
&lt;br /&gt;
 devices/pci0000\:00/0000\:00\:1a.0/usb1/1-2/power/level = auto&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can install an init script:&lt;br /&gt;
&lt;br /&gt;
 sudo gedit /etc/init.d/ReaderNoMoreHot&lt;br /&gt;
&lt;br /&gt;
Paste the following into it:&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 #&lt;br /&gt;
 echo &amp;quot;auto&amp;quot; &amp;gt; /sys/&amp;lt;path-to-device&amp;gt;/power/level&lt;br /&gt;
&lt;br /&gt;
Save and close. Then:&lt;br /&gt;
&lt;br /&gt;
 sudo chmod 755 /etc/init.d/ReaderNoMoreHot&lt;br /&gt;
 sudo update-rc.d ReaderNoMoreHot defaults 90&lt;br /&gt;
&lt;br /&gt;
--[[User:Lunatico|Lunatico]] 19:19, 1 August 2008 (CEST), extended by --[[User:Michaelthomas h|Michaelthomas h]] 23:36, 9 August 2008 (CEST)&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=39590</id>
		<title>How to enable the integrated fingerprint reader with ThinkFinger</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=39590"/>
		<updated>2008-11-07T17:42:02Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: /* Fedora/Fedora Core */ merged bullets into the single relevant command&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[How to enable the fingerprint reader]] has a good explanation for using the fingerprint reader with the closed-source binary driver. But there is also an opensource project called [http://thinkfinger.sourceforge.net ThinkFinger] which does the same, but open.&lt;br /&gt;
&lt;br /&gt;
However: The fingerprint reader is an INSECURE device and gives a false sense of security! There has been quite a bit of research by a hacker named Starbug, a member of the Chaos Computer Club, Berlin, Germany. He outlined in two very good talks how to forge each and every available fingerprint sensor available at the cost of a few euros, using materials from your local hardware store, a digicam and a laser printer! Here's some links:&lt;br /&gt;
* [http://www.ccc.de/updates/2007/umsonst-im-supermarkt?language=en  Fingerprint recognition in supermarkets]&lt;br /&gt;
* [ftp://ftp.ccc.de/pub/video/Fingerabdruck_Hack/fingerabdruck.mpg?language=en Video tutorial for forging fingerprints]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Installing ==&lt;br /&gt;
=== From source ===&lt;br /&gt;
&lt;br /&gt;
Download thinkfinger-0.3.tar.gz from the [http://thinkfinger.sourceforge.net/ homepage] and unpack it somewhere, make sure you have the gcc compiler, libtool, pkg-config, libusb-dev and libpam0g-dev installed, then:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|cd thinkfinger-0.3}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code style=&amp;quot;white-space:nowrap;color:#495988;background-color:white;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;$&amp;lt;/nowiki&amp;gt; ./configure --prefix=/usr --sysconfdir=/etc --with-securedir=/lib/security --with-birdir=/etc/pam_thinkfinger&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{cmduser|make}}&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|make install}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|/lib/security is the directory, where PAM assumes its modules on Debian and openSUSE, it may vary for your distro!}}&lt;br /&gt;
&lt;br /&gt;
&amp;quot;make install&amp;quot; doesn't create the birdir we specified (where thinkfinger will store users' biometric info), so create it:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|mkdir /etc/pam_thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
If everything went OK assert that you find pam_thinkfinger.so in /lib/security typing:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|ls /lib/security}}&lt;br /&gt;
&lt;br /&gt;
=== From package ===&lt;br /&gt;
&lt;br /&gt;
==== Debian ====&lt;br /&gt;
[http://packages.debian.org/source/experimental/thinkfinger Packages] arrived in Debian experimental on Aug 2nd, 2007 (cf. [http://bugs.debian.org/409563 bug #409563]). To access the experimental packages via apt, add the following lines to your sources.list:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# experimental&lt;br /&gt;
deb ftp://mirrors.kernel.org/debian/ experimental main contrib non-free&lt;br /&gt;
deb-src ftp://mirrors.kernel.org/debian/ experimental main contrib non-free&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
where of course you may replace mirrors.kernel.org with your mirror of choice. Just make sure that it hosts the experimental repositories.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
aptitude update &lt;br /&gt;
aptitude install libthinkfinger0 libpam-thinkfinger thinkfinger-tools&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
should then get you up and running.&lt;br /&gt;
&lt;br /&gt;
To make everything work you'll have to have permission to work the device ({{cmduser|sudo adduser myself plugdev}} worked for me), and you'll also have to follow instructions below about adding the device to your PAM methods.&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu ====&lt;br /&gt;
&lt;br /&gt;
===== Hardy =====&lt;br /&gt;
&lt;br /&gt;
Hardy includes the latest thinkfinger and it is up to date with subversion.  Install packages:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo apt-get install thinkfinger-tools libpam-thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
Update the pam configuration files:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo /usr/lib/pam-thinkfinger/pam-thinkfinger-enable}}&lt;br /&gt;
&lt;br /&gt;
Enroll your fingerprint (creates $HOME/.thinkfinger.bir).  If this gives an error about claiming the USB device then a reboot was claimed to work, but in fact it may just be a permissions problem.  {{NOTE|Do not try to enroll using 'sudo' - it will cause hidden permission problems}}&lt;br /&gt;
&lt;br /&gt;
{{cmduser|tf-tool --acquire}}&lt;br /&gt;
&lt;br /&gt;
Check fingerprint enrollment&lt;br /&gt;
&lt;br /&gt;
{{cmduser|tf-tool --verify}}&lt;br /&gt;
&lt;br /&gt;
You can expect everything to work correctly.  Note that you still have to enter your username if prompted but will be able&lt;br /&gt;
to swipe your finger instead of the password.  The prompt will usually be &amp;quot;Password or swipe finger&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Graphical login&lt;br /&gt;
* Text console login&lt;br /&gt;
* sudo&lt;br /&gt;
* screen lock/screen saver&lt;br /&gt;
* Administrative password prompt (eg for update or package managers).  (Note no &amp;quot;or swipe finger&amp;quot; in prompt).&lt;br /&gt;
&lt;br /&gt;
===== Gutsy =====&lt;br /&gt;
&lt;br /&gt;
From https://wiki.ubuntu.com/ThinkFinger&lt;br /&gt;
&lt;br /&gt;
Add PPA repositories to your sources.list:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb     http://ppa.launchpad.net/jldugger/ubuntu gutsy main restricted universe multiverse&lt;br /&gt;
deb-src http://ppa.launchpad.net/jldugger/ubuntu gutsy main restricted universe multiverse&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install necessary packages:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo apt-get install thinkfinger-tools  libpam-thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
===== Intrepid Ibex =====&lt;br /&gt;
After installing from the normal repositories coming with Ubuntu 8.10, you would have to press enter after sweeping finger. (This bug: [https://bugs.launchpad.net/ubuntu/+source/thinkfinger/+bug/256429 https://bugs.launchpad.net/ubuntu/+source/thinkfinger/+bug/256429])&lt;br /&gt;
Therefore Jon Oberheide made an update that can be found here: &lt;br /&gt;
[https://launchpad.net/~jon-oberheide/+archive https://launchpad.net/~jon-oberheide/+archive]&lt;br /&gt;
&lt;br /&gt;
Add the PPA repositories to your source.list (/etc/apt/source.list):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://ppa.launchpad.net/jon-oberheide/ubuntu intrepid main&lt;br /&gt;
deb-src http://ppa.launchpad.net/jon-oberheide/ubuntu intrepid main&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update installer:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo apt-get update}}&lt;br /&gt;
&lt;br /&gt;
And install:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|sudo apt-get thinkfinger-tools}}&lt;br /&gt;
&lt;br /&gt;
==== Fedora/Fedora Core ====&lt;br /&gt;
{{cmdroot|yum install thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
==== Gentoo ====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
emerge sys-auth/thinkfinger&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== OpenSUSE ====&lt;br /&gt;
openSUSE 10.2 includes the package &amp;quot;libthinkfinger&amp;quot; (version 0.1-7) - you will find newer packages [http://beta1.suse.com/private/thoenig/10.2/thinkfinger/ here].&lt;br /&gt;
&lt;br /&gt;
== Testing the driver ==&lt;br /&gt;
&lt;br /&gt;
Now the driver is installed and should be working. You can try it (as root) with&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --acquire}}&lt;br /&gt;
&lt;br /&gt;
and&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --verify}}&lt;br /&gt;
&lt;br /&gt;
This will ask you to swipe your finger three times, save the fingerprint to /tmp/test.bir and then verify your fingerprint with the bir-file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Configuring PAM to use ThinkFinger ==&lt;br /&gt;
Now you can configure PAM to use ThinkFinger:&lt;br /&gt;
&lt;br /&gt;
Open {{path|/etc/pam.d/common-auth}} (In FC6, F7, and Gentoo, this file is {{path|/etc/pam.d/system-auth}}):&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|nano -w /etc/pam.d/common-auth}}&lt;br /&gt;
&lt;br /&gt;
Add this line before any pam_unix or pam_unix2 directives:&lt;br /&gt;
 auth     sufficient     pam_thinkfinger.so&lt;br /&gt;
&lt;br /&gt;
If your PAM uses the pam_unix and not the pam_unix2 module, you need to pass a specific argument in&lt;br /&gt;
the /etc/pam.d/common-auth directive to make it consider the password entered at the pam_thinkfinger prompt.&lt;br /&gt;
 auth     required     pam_unix.so try_first_pass&lt;br /&gt;
&lt;br /&gt;
For instance, {{path|/etc/pam.d/common-auth}} looks like this:&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix.so nullok_secure try_first_pass&lt;br /&gt;
&lt;br /&gt;
On openSUSE 10.2, it looks like this now:&lt;br /&gt;
 auth    required        pam_env.so&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix2.so&lt;br /&gt;
&lt;br /&gt;
On Ubuntu 8.10 - Intrepid Ibex you should just add the following line the the /etc/pam.d/common-auth file so it looks like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
....&lt;br /&gt;
# here are the per-package modules (the &amp;quot;Primary&amp;quot; block)&lt;br /&gt;
auth	sufficient	pam_thinkfinger.so&lt;br /&gt;
auth	[success=1 default=ignore]	pam_unix.so try_first_pass nullok_secure&lt;br /&gt;
# here's the fallback if no module succeeds&lt;br /&gt;
....&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we are ready to add users to thinkfinger. You can add a fingerprint for a user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user $USERNAME}}&lt;br /&gt;
&lt;br /&gt;
Now the user should be able to login with his finger instead of the password.&lt;br /&gt;
&lt;br /&gt;
If you would like to use thinkfinger for su, you have to enroll the fingerprint for root user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user root}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|You should see the &amp;quot;Password or swipe finger:&amp;quot; prompt when trying to sudo or su. If you don't, you probably do not have the &amp;quot;User level driver support&amp;quot; compiled into your kernel or the &amp;quot;uinput&amp;quot; module loaded!}}&lt;br /&gt;
&lt;br /&gt;
== xscreensaver/gnome-screensaver ==&lt;br /&gt;
{{NOTE|In Fedora 7, the package has been modified in such a way as to make doing this unnecessary.}}&lt;br /&gt;
&lt;br /&gt;
If you'd like to be able to unlock your screen using the fingerprint reader, you must have current versions of xscreesaver (&amp;gt;~5.03) or gnome-screensaver (&amp;gt;~2.18.2). Then you must give yourself access to the fingerprint reader and your bir-file, because unlike login/gdm/su/sudo, both gnome-screensaver and xscreensaver do not run as root. The following procedure will make the fingerprint reader accessible to members of the &amp;quot;fingerprint&amp;quot; group.&lt;br /&gt;
&lt;br /&gt;
Make the group: {{cmdroot|groupadd fingerprint}}&lt;br /&gt;
&lt;br /&gt;
Save the following as {{path|/etc/udev/rules.d/60-thinkfinger.rules}} and run {{cmdroot|sudo /sbin/udevtrigger}} (you may need to reboot for this to take effect if udev trigger does not work):&lt;br /&gt;
 #&lt;br /&gt;
 # udev rules file for the thinkfinger fingerprint scanner&lt;br /&gt;
 # &lt;br /&gt;
 # gives access to the fingerprint reader to those in the &amp;quot;fingerprint&amp;quot; group&lt;br /&gt;
 #&lt;br /&gt;
 # Taken from:&lt;br /&gt;
 #  http://www.thinkwiki.org/wiki/How_to_enable_the_fingerprint_reader_with_ThinkFinger&lt;br /&gt;
 # which was taken and modified from:&lt;br /&gt;
 #  http://article.gmane.org/gmane.linux.drivers.thinkfinger/329&lt;br /&gt;
 #&lt;br /&gt;
 &lt;br /&gt;
 # SGS Thomson Microelectronics Fingerprint Reader&lt;br /&gt;
 SYSFS{idVendor}==&amp;quot;0483&amp;quot;, SYSFS{idProduct}==&amp;quot;2016&amp;quot;, SYMLINK+=&amp;quot;input/thinkfinger-%k&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 # the also-needed uinput device&lt;br /&gt;
 KERNEL==&amp;quot;uinput&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, edit {{path|/etc/pam.d/gnome-screensaver}} so that it looks like this:&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix.so try_first_pass nullok_secure&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Per user:&lt;br /&gt;
&lt;br /&gt;
# Add him to the group: {{cmdroot|gpasswd -a $USERNAME fingerprint}}&lt;br /&gt;
# Make him owner of his bir-file: {{cmdroot|chown $USERNAME:root /etc/pam_thinkfinger/$USERNAME.bir}}&lt;br /&gt;
# Give him read-only access to his bir-file: {{cmdroot|chmod 400 /etc/pam_thinkfinger/$USERNAME.bir}}&lt;br /&gt;
# Give &amp;quot;execute only&amp;quot; access to everyone for the /etc/pam_thinkfinger/ directory: {{cmdroot|chmod o+x /etc/pam_thinkfinger}} (WARNING: this opens up security a little).&lt;br /&gt;
&lt;br /&gt;
== GNOME ==&lt;br /&gt;
&lt;br /&gt;
{{NOTE|1=This problem should be solved if you're using sudo &amp;gt;= 1.6.9p9. Links: [http://savannah.nongnu.org/bugs/?19132], [http://www.sudo.ws/bugs/show_bug.cgi?id=180], [https://bugs.launchpad.net/ubuntu/+source/gksu/+bug/86843]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
gksu/gksudo doesn't work correctly. It just stays invisible. When starting a su privileged application such as synaptics you will not get prompted for the password. Nevertheless you can swipe your finger and it should authenticate you. Starting synaptics twice makes gksudo visible.&lt;br /&gt;
&lt;br /&gt;
There are two possibilities to solve it:&lt;br /&gt;
* Changing the string &amp;quot;Password or swipe finger:&amp;quot; to a plain &amp;quot;Password:&amp;quot; (like sudo normally would do) in the file pam/pam_thinkfinger.c of the thinkfinger source directory. Of course, in the console you will then only see a &amp;quot;Password:&amp;quot; instead of &amp;quot;Password or swipe finger:&amp;quot; but this is still more usefull than having gksu/gksudo crashing everytime.&lt;br /&gt;
* Patching libgksu with the following patch. This is also a nasty hack until a better solution is implemented.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
--- libgksu-2.0.3/libgksu/libgksu.c.orig	2007-06-17 16:00:24.000000000 +0200&lt;br /&gt;
+++ libgksu-2.0.3/libgksu/libgksu.c		2007-06-17 16:00:47.000000000 +0200&lt;br /&gt;
@@ -2663,7 +2663,7 @@&lt;br /&gt;
        */&lt;br /&gt;
       for (counter = 0; counter &amp;lt; 50; counter++)&lt;br /&gt;
 	{&lt;br /&gt;
-	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp (buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	    break;&lt;br /&gt;
 &lt;br /&gt;
 	  read_line (parent_pipe[0], buffer, 256);&lt;br /&gt;
@@ -2675,7 +2675,7 @@&lt;br /&gt;
       if (context-&amp;gt;debug)&lt;br /&gt;
 	fprintf (stderr, &amp;quot;brute force GNOME_SUDO_PASS ended...\n&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
-      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp(buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	{&lt;br /&gt;
 	  gchar *password = NULL;&lt;br /&gt;
 	  gboolean prompt_grab;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== KDE ==&lt;br /&gt;
&lt;br /&gt;
Integration in KDE and kdm seems not to be easily possible now. There is a filed [https://bugs.kde.org/show_bug.cgi?id=116682 bug] at kde.org where you can vote for this.&lt;br /&gt;
&lt;br /&gt;
Moreover, kdm in openSUSE 10.3 crashes when pam_thinkfinger is enabled. A possible &amp;quot;workaround&amp;quot; is downgrading to thinkfinger 0.2.2.&lt;br /&gt;
&lt;br /&gt;
Another workaround is to use Fprint from [http://www.reactivated.net/fprint/wiki/Main_Page] which works quite nicely on my X61s and Kubuntu Hardy.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Howto was copied from [[Installing Ubuntu 6.06 on a ThinkPad T43#Fingerprint_Reader]] and then slightly modified.&lt;br /&gt;
&lt;br /&gt;
== Fix for the fingerprint reader getting too hot ==&lt;br /&gt;
&lt;br /&gt;
If you notice that your fingerprint reader occasionally gets very hot then you might be interested in this section. Thanks to Tino Keitel, he actually gave me this solution through the linux-thinkpad mailing list.&lt;br /&gt;
&lt;br /&gt;
First we need to determine if the reader is not on autosuspend mode.&lt;br /&gt;
Open a terminal and run:&lt;br /&gt;
&lt;br /&gt;
 for i in `find /sys/devices/*/*/usb* -name level` ; do echo -n &amp;quot;$i: &amp;quot; ; cat $i ; done&lt;br /&gt;
&lt;br /&gt;
We care about the devices that are with &amp;quot;on&amp;quot; state and we need to determine if one of those is the reader. So for each of those run something like:&lt;br /&gt;
&lt;br /&gt;
 cat /sys/devices/pci0000\:00/0000\:00\:1a.0/usb1/1-2/idVendor &lt;br /&gt;
 0483&lt;br /&gt;
 &lt;br /&gt;
 cat /sys/devices/pci0000\:00/0000\:00\:1a.0/usb1/1-2/idProduct &lt;br /&gt;
 2016&lt;br /&gt;
&lt;br /&gt;
Use the corresponding path of the devices that you got with &amp;quot;on&amp;quot; state and then compare the output with the output of the lsusb command. An example:&lt;br /&gt;
&lt;br /&gt;
 lsusb output: Bus 001 Device 004: ID 0483:2016 SGS Thomson Microelectronics Fingerprint Reader&lt;br /&gt;
&lt;br /&gt;
Which matches the output above (0483:2016). Once you have determined the path of your reader then become root with su - and:&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;auto&amp;quot; &amp;gt; /sys/&amp;lt;path-to-device&amp;gt;/power/level&lt;br /&gt;
&lt;br /&gt;
After this, the fingerprint reader should be in &amp;quot;autosuspend&amp;quot; and will not get hot anymore. And it will still work as normal.&lt;br /&gt;
&lt;br /&gt;
This will only work for the current session. If you want to make this change persistent and have [http://linux-diag.sourceforge.net/Sysfsutils.html sysfsutils] installed, edit the file {{path|/etc/sysfs.conf}} and add the line&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;path-to-device&amp;gt;/power/level = auto&lt;br /&gt;
&lt;br /&gt;
Following the above example, that would be &lt;br /&gt;
&lt;br /&gt;
 devices/pci0000\:00/0000\:00\:1a.0/usb1/1-2/power/level = auto&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can install an init script:&lt;br /&gt;
&lt;br /&gt;
 sudo gedit /etc/init.d/ReaderNoMoreHot&lt;br /&gt;
&lt;br /&gt;
Paste the following into it:&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 #&lt;br /&gt;
 echo &amp;quot;auto&amp;quot; &amp;gt; /sys/&amp;lt;path-to-device&amp;gt;/power/level&lt;br /&gt;
&lt;br /&gt;
Save and close. Then:&lt;br /&gt;
&lt;br /&gt;
 sudo chmod 755 /etc/init.d/ReaderNoMoreHot&lt;br /&gt;
 sudo update-rc.d ReaderNoMoreHot defaults 90&lt;br /&gt;
&lt;br /&gt;
--[[User:Lunatico|Lunatico]] 19:19, 1 August 2008 (CEST), extended by --[[User:Michaelthomas h|Michaelthomas h]] 23:36, 9 August 2008 (CEST)&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=39567</id>
		<title>User:Quartsize</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=39567"/>
		<updated>2008-11-06T20:45:00Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Fedora 10 on a Thinkpad Z61t.&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=37454</id>
		<title>User:Quartsize</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=37454"/>
		<updated>2008-04-26T02:12:20Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hardy on a Thinkpad Z61t.&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=36908</id>
		<title>User:Quartsize</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=36908"/>
		<updated>2008-03-09T02:28:04Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: :-)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Arch on a Thinkpad Z61t.&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=35263</id>
		<title>User:Quartsize</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=35263"/>
		<updated>2007-12-22T06:09:12Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Fedora 8 on a Thinkpad Z61t.&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=34853</id>
		<title>How to enable the integrated fingerprint reader with ThinkFinger</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=34853"/>
		<updated>2007-11-24T16:31:52Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: /* xscreensaver/gnome-screensaver */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[How to enable the fingerprint reader]] has a good explanation for using the fingerprint reader with the closed-source binary driver. But there is also an opensource project called [http://thinkfinger.sourceforge.net ThinkFinger] which does the same, but open.&lt;br /&gt;
&lt;br /&gt;
== Installing ==&lt;br /&gt;
=== From source ===&lt;br /&gt;
&lt;br /&gt;
Download thinkfinger-0.3.tar.gz from the [http://thinkfinger.sourceforge.net/ homepage] and unpack it somewhere, make sure you have the gcc compiler, libtool, pkg-config, libusb-dev and libpam0g-dev installed, then:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|cd thinkfinger-0.3}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code style=&amp;quot;white-space:nowrap;color:#495988;background-color:white;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;$&amp;lt;/nowiki&amp;gt; ./configure --prefix=/usr --sysconfdir=/etc --with-securedir=/lib/security --with-birdir=/etc/pam_thinkfinger&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{cmduser|make}}&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|make install}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|/lib/security is the directory, where PAM assumes its modules on Debian and openSUSE, it may vary for your distro!}}&lt;br /&gt;
&lt;br /&gt;
&amp;quot;make install&amp;quot; doesn't create the birdir we specified (where thinkfinger will store users' biometric info), so create it:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|mkdir /etc/pam_thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
If everything went OK assert that you find pam_thinkfinger.so in /lib/security typing:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|ls /lib/security}}&lt;br /&gt;
&lt;br /&gt;
=== From package ===&lt;br /&gt;
&lt;br /&gt;
==== Debian ====&lt;br /&gt;
[http://packages.debian.org/source/experimental/thinkfinger Packages] arrived in Debian experimental on Aug 2nd, 2007 (cf. [http://bugs.debian.org/409563 bug #409563]). To access the experimental packages via apt, add the following lines to your sources.list:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# experimental&lt;br /&gt;
deb ftp://mirrors.kernel.org/debian/ experimental main contrib non-free&lt;br /&gt;
deb-src ftp://mirrors.kernel.org/debian/ experimental main contrib non-free&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
where of course you may replace mirrors.kernel.org with your mirror of choice. Just make sure that it hosts the experimental repositories.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
aptitude update &lt;br /&gt;
aptitude install libthinkfinger0 libpam-thinkfinger thinkfinger-tools&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
should then get you up and running.&lt;br /&gt;
&lt;br /&gt;
==== Fedora/Fedora Core ====&lt;br /&gt;
*Packages for Fedora Core 6 are available in &amp;quot;extras&amp;quot; repository (# yum install thinkfinger).&lt;br /&gt;
*Packages for Fedora 7 are available in the &amp;quot;updates&amp;quot; repository (# yum install thinkfinger).&lt;br /&gt;
&lt;br /&gt;
==== Gentoo ====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
emerge sys-auth/thinkfinger&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== OpenSUSE ====&lt;br /&gt;
openSUSE 10.2 includes the package &amp;quot;libthinkfinger&amp;quot; (version 0.1-7) - you will find newer packages [http://beta1.suse.com/private/thoenig/10.2/thinkfinger/ here].&lt;br /&gt;
&lt;br /&gt;
== Testing the driver ==&lt;br /&gt;
&lt;br /&gt;
Now the driver is installed and should be working. You can try it (as root) with&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --acquire}}&lt;br /&gt;
&lt;br /&gt;
and&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --verify}}&lt;br /&gt;
&lt;br /&gt;
This will ask you to swipe your finger three times, save the fingerprint to /tmp/test.bir and then verify your fingerprint with the bir-file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Configuring PAM to use ThinkFinger ==&lt;br /&gt;
Now you can configure PAM to use ThinkFinger:&lt;br /&gt;
&lt;br /&gt;
Open {{path|/etc/pam.d/common-auth}} (In FC6, F7, and Gentoo, this file is {{path|/etc/pam.d/system-auth}}):&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|nano -w /etc/pam.d/common-auth}}&lt;br /&gt;
&lt;br /&gt;
Add this line before any pam_unix or pam_unix2 directives:&lt;br /&gt;
 auth     sufficient     pam_thinkfinger.so&lt;br /&gt;
&lt;br /&gt;
If your PAM uses the pam_unix and not the pam_unix2 module, you need to pass a specific argument in&lt;br /&gt;
the /etc/pam.d/common-auth directive to make it consider the password entered at the pam_thinkfinger prompt.&lt;br /&gt;
 auth     required     pam_unix.so try_first_pass&lt;br /&gt;
&lt;br /&gt;
For instance, {{path|/etc/pam.d/common-auth}} looks like this:&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix.so nullok_secure try_first_pass&lt;br /&gt;
&lt;br /&gt;
On openSUSE 10.2, it looks like this now:&lt;br /&gt;
 auth    required        pam_env.so&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix2.so&lt;br /&gt;
&lt;br /&gt;
Now we are ready to add users to thinkfinger. You can add a fingerprint for a user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user $USERNAME}}&lt;br /&gt;
&lt;br /&gt;
Now the user should be able to login with his finger instead of the password.&lt;br /&gt;
&lt;br /&gt;
If you would like to use thinkfinger for su, you have to enroll the fingerprint for root user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user root}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|You should see the &amp;quot;Password or swipe finger:&amp;quot; prompt when trying to sudo or su. If you don't, you probably do not have the &amp;quot;User level driver support&amp;quot; compiled into your kernel or the &amp;quot;uinput&amp;quot; module loaded!}}&lt;br /&gt;
&lt;br /&gt;
== xscreensaver/gnome-screensaver ==&lt;br /&gt;
{{NOTE|In Fedora 7, the package has been modified in such a way as to make doing this unnecessary.}}&lt;br /&gt;
&lt;br /&gt;
If you'd like to be able to unlock your screen using the fingerprint reader, you must have current versions of xscreesaver (&amp;gt;~5.03) or gnome-screensaver (&amp;gt;~2.18.2). Then you must give yourself access to the fingerprint reader and your bir-file, because unlike login/gdm/su/sudo, both gnome-screensaver and xscreensaver do not run as root. The following procedure will make the fingerprint reader accessible to members of the &amp;quot;fingerprint&amp;quot; group.&lt;br /&gt;
&lt;br /&gt;
Make the group: {{cmdroot|groupadd fingerprint}}&lt;br /&gt;
&lt;br /&gt;
Save the following as {{path|/etc/udev/rules.d/60-thinkfinger.rules}} (you may need to reboot for this to take effect):&lt;br /&gt;
 #&lt;br /&gt;
 # udev rules file for the thinkfinger fingerprint scanner&lt;br /&gt;
 # &lt;br /&gt;
 # gives access to the fingerprint reader to those in the &amp;quot;fingerprint&amp;quot; group&lt;br /&gt;
 #&lt;br /&gt;
 # Taken from:&lt;br /&gt;
 #  http://www.thinkwiki.org/wiki/How_to_enable_the_fingerprint_reader_with_ThinkFinger&lt;br /&gt;
 # which was taken and modified from:&lt;br /&gt;
 #  http://article.gmane.org/gmane.linux.drivers.thinkfinger/329&lt;br /&gt;
 #&lt;br /&gt;
 &lt;br /&gt;
 # SGS Thomson Microelectronics Fingerprint Reader&lt;br /&gt;
 SYSFS{idVendor}==&amp;quot;0483&amp;quot;, SYSFS{idProduct}==&amp;quot;2016&amp;quot;, SYMLINK+=&amp;quot;input/thinkfinger-%k&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 # the also-needed uinput device&lt;br /&gt;
 KERNEL==&amp;quot;uinput&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Per user:&lt;br /&gt;
&lt;br /&gt;
# Add him to the group: {{cmdroot|gpasswd -a $USERNAME fingerprint}}&lt;br /&gt;
# Make him owner of his bir-file: {{cmdroot|chown $USERNAME:root /etc/pam_thinkfinger/$USERNAME.bir}}&lt;br /&gt;
# Give him read-only access to his bir-file: {{cmdroot|chmod 400 /etc/pam_thinkfinger/$USERNAME.bir}}&lt;br /&gt;
# Give &amp;quot;execute only&amp;quot; access to everyone for the /etc/pam_thinkfinger/ directory: {{cmdroot|chmod o+x /etc/pam_thinkfinger}} (WARNING: this opens up security a little).&lt;br /&gt;
&lt;br /&gt;
== GNOME ==&lt;br /&gt;
&lt;br /&gt;
gksu/gksudo doesn't work correctly. It just stays invisible. When starting a su privileged application such as synaptics you will not get prompted for the password. Nevertheless you can swipe your finger and it should authenticate you. Starting synaptics twice makes gksudo visible.&lt;br /&gt;
&lt;br /&gt;
There are two possibilities to solve it:&lt;br /&gt;
* Changing the string &amp;quot;Password or swipe finger:&amp;quot; to a plain &amp;quot;Password:&amp;quot; (like sudo normally would do) in the file pam/pam_thinkfinger.c of the thinkfinger source directory. Of course, in the console you will then only see a &amp;quot;Password:&amp;quot; instead of &amp;quot;Password or swipe finger:&amp;quot; but this is still more usefull than having gksu/gksudo crashing everytime.&lt;br /&gt;
* Patching libgksu with the following patch. This is also a nasty hack until a better solution is implemented.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
--- libgksu-2.0.3/libgksu/libgksu.c.orig	2007-06-17 16:00:24.000000000 +0200&lt;br /&gt;
+++ libgksu-2.0.3/libgksu/libgksu.c		2007-06-17 16:00:47.000000000 +0200&lt;br /&gt;
@@ -2663,7 +2663,7 @@&lt;br /&gt;
        */&lt;br /&gt;
       for (counter = 0; counter &amp;lt; 50; counter++)&lt;br /&gt;
 	{&lt;br /&gt;
-	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp (buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	    break;&lt;br /&gt;
 &lt;br /&gt;
 	  read_line (parent_pipe[0], buffer, 256);&lt;br /&gt;
@@ -2675,7 +2675,7 @@&lt;br /&gt;
       if (context-&amp;gt;debug)&lt;br /&gt;
 	fprintf (stderr, &amp;quot;brute force GNOME_SUDO_PASS ended...\n&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
-      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp(buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	{&lt;br /&gt;
 	  gchar *password = NULL;&lt;br /&gt;
 	  gboolean prompt_grab;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== KDE ==&lt;br /&gt;
&lt;br /&gt;
Integration in KDE and kdm seems not to be easily possible now. There is a filed [https://bugs.kde.org/show_bug.cgi?id=116682 bug] at kde.org where you can vote for this.&lt;br /&gt;
&lt;br /&gt;
Moreover, kdm in openSUSE 10.3 crashes when pam_thinkfinger is enabled. A possible &amp;quot;workaround&amp;quot; is downgrading to thinkfinger 0.2.2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Howto was copied from [[Installing Ubuntu 6.06 on a ThinkPad T43#Fingerprint_Reader]] and then slightly modified.&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=34770</id>
		<title>User:Quartsize</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=34770"/>
		<updated>2007-11-22T01:13:10Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: It makes encrypted LVM easier. Sue me.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Gutsy on a Thinkpad Z61t.&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=33910</id>
		<title>How to enable the integrated fingerprint reader with ThinkFinger</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=33910"/>
		<updated>2007-10-15T19:16:54Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: /* xscreensaver/gnome-screensaver */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[How to enable the fingerprint reader]] has a good explanation for using the fingerprint reader with the closed-source binary driver. But there is also an opensource project called [http://thinkfinger.sourceforge.net ThinkFinger] which does the same, but open.&lt;br /&gt;
&lt;br /&gt;
== Installing ==&lt;br /&gt;
=== From source ===&lt;br /&gt;
&lt;br /&gt;
Download thinkfinger-0.3.tar.gz from the [http://thinkfinger.sourceforge.net/ homepage] and unpack it somewhere, make sure you have the gcc compiler, libtool, pkg-config, libusb-dev and libpam0g-dev installed, then:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|cd thinkfinger-0.3}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code style=&amp;quot;white-space:nowrap;color:#495988;background-color:white;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;$&amp;lt;/nowiki&amp;gt; ./configure --prefix=/usr --sysconfdir=/etc --with-securedir=/lib/security --with-birdir=/etc/pam_thinkfinger&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{cmduser|make}}&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|make install}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|/lib/security is the directory, where PAM assumes its modules on Debian and openSUSE, it may vary for your distro!}}&lt;br /&gt;
&lt;br /&gt;
&amp;quot;make install&amp;quot; doesn't create the birdir we specified (where thinkfinger will store users' biometric info), so create it:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|mkdir /etc/pam_thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
If everything went OK assert that you find pam_thinkfinger.so in /lib/security typing:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|ls /lib/security}}&lt;br /&gt;
&lt;br /&gt;
=== From package ===&lt;br /&gt;
&lt;br /&gt;
==== Debian ====&lt;br /&gt;
[http://packages.debian.org/source/experimental/thinkfinger Packages] arrived in Debian experimental on Aug 2nd, 2007 (cf. [http://bugs.debian.org/409563 bug #409563]). To access the experimental packages via apt, add the following lines to your sources.list:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# experimental&lt;br /&gt;
deb ftp://mirrors.kernel.org/debian/ experimental main contrib non-free&lt;br /&gt;
deb-src ftp://mirrors.kernel.org/debian/ experimental main contrib non-free&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
where of course you may replace mirrors.kernel.org with your mirror of choice. Just make sure that it hosts the experimental repositories.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
aptitude update &lt;br /&gt;
aptitude install libthinkfinger0 libpam-thinkfinger thinkfinger-tools&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
should then get you up and running.&lt;br /&gt;
&lt;br /&gt;
==== Fedora/Fedora Core ====&lt;br /&gt;
*Packages for Fedora Core 6 are available in &amp;quot;extras&amp;quot; repository (# yum install thinkfinger).&lt;br /&gt;
*Packages for Fedora 7 are available in the &amp;quot;updates&amp;quot; repository (# yum install thinkfinger).&lt;br /&gt;
&lt;br /&gt;
==== Gentoo ====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
emerge sys-auth/thinkfinger&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== OpenSUSE ====&lt;br /&gt;
openSUSE 10.2 includes the package &amp;quot;libthinkfinger&amp;quot; (version 0.1-7) - you will find newer packages [http://beta1.suse.com/private/thoenig/10.2/thinkfinger/ here].&lt;br /&gt;
&lt;br /&gt;
== Testing the driver ==&lt;br /&gt;
&lt;br /&gt;
Now the driver is installed and should be working. You can try it (as root) with&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --acquire}}&lt;br /&gt;
&lt;br /&gt;
and&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --verify}}&lt;br /&gt;
&lt;br /&gt;
This will ask you to swipe your finger three times, save the fingerprint to /tmp/test.bir and then verify your fingerprint with the bir-file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Configuring PAM to use ThinkFinger ==&lt;br /&gt;
Now you can configure PAM to use ThinkFinger:&lt;br /&gt;
&lt;br /&gt;
Open {{path|/etc/pam.d/common-auth}} (In FC6, F7, and Gentoo, this file is {{path|/etc/pam.d/system-auth}}):&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|nano -w /etc/pam.d/common-auth}}&lt;br /&gt;
&lt;br /&gt;
Add this line before any pam_unix or pam_unix2 directives:&lt;br /&gt;
 auth     sufficient     pam_thinkfinger.so&lt;br /&gt;
&lt;br /&gt;
If your PAM uses the pam_unix and not the pam_unix2 module, you need to pass a specific argument in&lt;br /&gt;
the /etc/pam.d/common-auth directive to make it consider the password entered at the pam_thinkfinger prompt.&lt;br /&gt;
 auth     required     pam_unix.so try_first_pass&lt;br /&gt;
&lt;br /&gt;
For instance, {{path|/etc/pam.d/common-auth}} looks like this:&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix.so nullok_secure try_first_pass&lt;br /&gt;
&lt;br /&gt;
On openSUSE 10.2, it looks like this now:&lt;br /&gt;
 auth    required        pam_env.so&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix2.so&lt;br /&gt;
&lt;br /&gt;
Now we are ready to add users to thinkfinger. You can add a fingerprint for a user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user $USERNAME}}&lt;br /&gt;
&lt;br /&gt;
Now the user should be able to login with his finger instead of the password.&lt;br /&gt;
&lt;br /&gt;
If you would like to use thinkfinger for su, you have to enroll the fingerprint for root user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user root}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|You should see the &amp;quot;Password or swipe finger:&amp;quot; prompt when trying to sudo or su. If you don't, you probably do not have the &amp;quot;User level driver support&amp;quot; compiled into your kernel or the &amp;quot;uinput&amp;quot; module loaded!}}&lt;br /&gt;
&lt;br /&gt;
== xscreensaver/gnome-screensaver ==&lt;br /&gt;
{{NOTE|In Fedora 7, the package has been modified in such a way as to make doing this unnecessary.}}&lt;br /&gt;
&lt;br /&gt;
If you'd like to be able to unlock your screen using the fingerprint reader, you must have current versions of xscreesaver (&amp;gt;~5.03) or gnome-screensaver (&amp;gt;~2.18.2). Then you must give yourself access to the fingerprint reader and your bir-file, because unlike login/gdm/su/sudo, both gnome-screensaver and xscreensaver do not run as root. The following procedure will make the fingerprint reader accessible to members of the &amp;quot;fingerprint&amp;quot; group.&lt;br /&gt;
&lt;br /&gt;
Make the group: {{cmdroot|groupadd fingerprint}}&lt;br /&gt;
&lt;br /&gt;
Save the following as {{path|/etc/udev/rules.d/60-thinkfinger.rules}} (you may need to reboot for this to take effect):&lt;br /&gt;
 #&lt;br /&gt;
 # udev rules file for the thinkfinger fingerprint scanner&lt;br /&gt;
 # &lt;br /&gt;
 # gives access to the fingerprint reader to those in the &amp;quot;fingerprint&amp;quot; group&lt;br /&gt;
 #&lt;br /&gt;
 &lt;br /&gt;
 # SGS Thomson Microelectronics Fingerprint Reader&lt;br /&gt;
 SYSFS{idVendor}==&amp;quot;0483&amp;quot;, SYSFS{idProduct}==&amp;quot;2016&amp;quot;, SYMLINK+=&amp;quot;input/thinkfinger-%k&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 # the also-needed uinput device&lt;br /&gt;
 KERNEL==&amp;quot;uinput&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Per user:&lt;br /&gt;
&lt;br /&gt;
# Add him to the group: {{cmdroot|gpasswd -a $USERNAME fingerprint}}&lt;br /&gt;
# Make him owner of his bir-file: {{cmdroot|chown $USERNAME:root /etc/pam_thinkfinger/$USERNAME.bir}}&lt;br /&gt;
# Give him read-only access to his bir-file: {{cmdroot|chmod 400 /etc/pam_thinkfinger/$USERNAME.bir}}&lt;br /&gt;
# Give &amp;quot;execute only&amp;quot; access to everyone for the /etc/pam_thinkfinger/ directory: {{cmdroot|chmod o+x /etc/pam_thinkfinger/$USERNAME.bir}} (WARNING: this opens up security a little).&lt;br /&gt;
&lt;br /&gt;
== GNOME ==&lt;br /&gt;
&lt;br /&gt;
gksu/gksudo doesn't work correctly. It just stays invisible. When starting a su privileged application such as synaptics you will not get prompted for the password. Nevertheless you can swipe your finger and it should authenticate you. Starting synaptics twice makes gksudo visible.&lt;br /&gt;
&lt;br /&gt;
There are two possibilities to solve it:&lt;br /&gt;
* Changing the string &amp;quot;Password or swipe finger:&amp;quot; to a plain &amp;quot;Password:&amp;quot; (like sudo normally would do) in the file pam/pam_thinkfinger.c of the thinkfinger source directory. Of course, in the console you will then only see a &amp;quot;Password:&amp;quot; instead of &amp;quot;Password or swipe finger:&amp;quot; but this is still more usefull than having gksu/gksudo crashing everytime.&lt;br /&gt;
* Patching libgksu with the following patch. This is also a nasty hack until a better solution is implemented.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
--- libgksu-2.0.3/libgksu/libgksu.c.orig	2007-06-17 16:00:24.000000000 +0200&lt;br /&gt;
+++ libgksu-2.0.3/libgksu/libgksu.c		2007-06-17 16:00:47.000000000 +0200&lt;br /&gt;
@@ -2663,7 +2663,7 @@&lt;br /&gt;
        */&lt;br /&gt;
       for (counter = 0; counter &amp;lt; 50; counter++)&lt;br /&gt;
 	{&lt;br /&gt;
-	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp (buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	    break;&lt;br /&gt;
 &lt;br /&gt;
 	  read_line (parent_pipe[0], buffer, 256);&lt;br /&gt;
@@ -2675,7 +2675,7 @@&lt;br /&gt;
       if (context-&amp;gt;debug)&lt;br /&gt;
 	fprintf (stderr, &amp;quot;brute force GNOME_SUDO_PASS ended...\n&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
-      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp(buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	{&lt;br /&gt;
 	  gchar *password = NULL;&lt;br /&gt;
 	  gboolean prompt_grab;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== KDE ==&lt;br /&gt;
&lt;br /&gt;
Integration in KDE and kdm seems not to be easily possible now. There is a filed [https://bugs.kde.org/show_bug.cgi?id=116682 bug] at kde.org where you can vote for this.&lt;br /&gt;
&lt;br /&gt;
Moreover, kdm in openSUSE 10.3 crashes when pam_thinkfinger is enabled. A possible &amp;quot;workaround&amp;quot; is downgrading to thinkfinger 0.2.2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Howto was copied from [[Installing Ubuntu 6.06 on a ThinkPad T43#Fingerprint_Reader]] and then slightly modified.&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=33157</id>
		<title>User:Quartsize</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=User:Quartsize&amp;diff=33157"/>
		<updated>2007-09-16T16:48:54Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: â†Created page with 'Fedora 7 on a Thinkpad Z61t.'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Fedora 7 on a Thinkpad Z61t.&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=33156</id>
		<title>How to enable the integrated fingerprint reader with ThinkFinger</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=33156"/>
		<updated>2007-09-16T15:32:06Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: /* gnome-screensaver */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[How to enable the fingerprint reader]] has a good explanation for using the fingerprint reader with the closed-source binary driver. But there is also an opensource project called [http://thinkfinger.sourceforge.net ThinkFinger] which does the same, but open.&lt;br /&gt;
&lt;br /&gt;
== Installing ==&lt;br /&gt;
=== From source ===&lt;br /&gt;
&lt;br /&gt;
Download thinkfinger-0.3.tar.gz from the [http://thinkfinger.sourceforge.net/ homepage] and unpack it somewhere, make sure you have the gcc compiler, libtool, pkgconfig, libusb-dev and libpam0g-dev installed, then:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|cd thinkfinger-0.3}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code style=&amp;quot;white-space:nowrap;color:#495988;background-color:white;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;$&amp;lt;/nowiki&amp;gt; ./configure --prefix=/usr --sysconfdir=/etc --with-securedir=/lib/security --with-birdir=/etc/pam_thinkfinger&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{cmduser|make}}&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|make install}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|/lib/security is the directory, where PAM assumes its modules on Debian and openSUSE, it may vary for your distro!}}&lt;br /&gt;
&lt;br /&gt;
&amp;quot;make install&amp;quot; doesn't create the birdir we specified (where thinkfinger will store users' biometric info), so create it:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|mkdir /etc/pam_thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
If everything went OK assert that you find pam_thinkfinger.so in /lib/security typing:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|ls /lib/security}}&lt;br /&gt;
&lt;br /&gt;
=== From package ===&lt;br /&gt;
&lt;br /&gt;
* Debian&lt;br /&gt;
** packages for Debian (testing) are available [http://www.rubixlinux.org/debian/thinkfinger/ here].&lt;br /&gt;
** packages arrived in Debian experimental on Aug 2nd, 2007 (cf. [http://bugs.debian.org/409563 bug #409563]).&lt;br /&gt;
* Fedora/Fedora Core&lt;br /&gt;
** packages for Fedora Core 6 are available in &amp;quot;extras&amp;quot; repository (# yum install thinkfinger).&lt;br /&gt;
** packages for Fedora 7 are available in the &amp;quot;updates&amp;quot; repository (# yum install thinkfinger).&lt;br /&gt;
* Gentoo&lt;br /&gt;
** emerge sys-auth/thinkfinger&lt;br /&gt;
* OpenSUSE&lt;br /&gt;
** openSUSE 10.2 includes the package &amp;quot;libthinkfinger&amp;quot; (version 0.1-7) - you will find newer packages [http://beta1.suse.com/private/thoenig/10.2/thinkfinger/ here].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Testing the driver ==&lt;br /&gt;
&lt;br /&gt;
Now the driver is installed and should be working. You can try it (as root) with&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --acquire}}&lt;br /&gt;
&lt;br /&gt;
and&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --verify}}&lt;br /&gt;
&lt;br /&gt;
This will ask you to swipe your finger three times, save the fingerprint to /tmp/test.bir and then verify your fingerprint with the bir-file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Configuring PAM to use ThinkFinger ==&lt;br /&gt;
Now you can configure PAM to use ThinkFinger:&lt;br /&gt;
&lt;br /&gt;
Open {{path|/etc/pam.d/common-auth}} (In FC6 and F7 this file is {{path|/etc/pam.d/system-auth}}):&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|nano -w /etc/pam.d/common-auth}}&lt;br /&gt;
&lt;br /&gt;
Add this line before any pam_unix or pam_unix2 directives:&lt;br /&gt;
 auth     sufficient     pam_thinkfinger.so&lt;br /&gt;
&lt;br /&gt;
If your PAM uses the pam_unix and not the pam_unix2 module, you need to pass a specific argument in&lt;br /&gt;
the /etc/pam.d/common-auth directive to make it consider the password entered at the pam_thinkfinger prompt.&lt;br /&gt;
 auth     required     pam_unix.so try_first_pass&lt;br /&gt;
&lt;br /&gt;
For instance, {{path|/etc/pam.d/common-auth}} looks like this:&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix.so nullok_secure try_first_pass&lt;br /&gt;
&lt;br /&gt;
On openSUSE 10.2, it looks like this now:&lt;br /&gt;
 auth    required        pam_env.so&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix2.so&lt;br /&gt;
&lt;br /&gt;
Now we are ready to add users to thinkfinger. You can add a fingerprint for a user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user $USERNAME}}&lt;br /&gt;
&lt;br /&gt;
Now the user should be able to login with his finger instead of the password.&lt;br /&gt;
&lt;br /&gt;
If you would like to use thinkfinger for su, you have to enroll the fingerprint for root user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user root}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|You should see the &amp;quot;Password or swipe finger:&amp;quot; prompt when trying to sudo or su. If you don't, you probably do not have the &amp;quot;User level driver support&amp;quot; compiled into your kernel or the &amp;quot;uinput&amp;quot; module loaded!}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== GNOME ==&lt;br /&gt;
&lt;br /&gt;
=== gksu/gksudo ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
gksu/gksudo doesn't work correctly. It just stays invisible. When starting a su privileged application such as synaptics you will not get prompted for the password. Nevertheless you can swipe your finger and it should authenticate you. Starting synaptics twice makes gksudo visible.&lt;br /&gt;
&lt;br /&gt;
There are two possibilities to solve it:&lt;br /&gt;
* Changing the string &amp;quot;Password or swipe finger:&amp;quot; to a plain &amp;quot;Password:&amp;quot; (like sudo normally would do) in the file pam/pam_thinkfinger.c of the thinkfinger source directory. Of course, in the console you will then only see a &amp;quot;Password:&amp;quot; instead of &amp;quot;Password or swipe finger:&amp;quot; but this is still more usefull than having gksu/gksudo crashing everytime.&lt;br /&gt;
* Patching libgksu with the following patch. This is also a nasty hack until a better solution is implemented.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
--- libgksu-2.0.3/libgksu/libgksu.c.orig	2007-06-17 16:00:24.000000000 +0200&lt;br /&gt;
+++ libgksu-2.0.3/libgksu/libgksu.c		2007-06-17 16:00:47.000000000 +0200&lt;br /&gt;
@@ -2663,7 +2663,7 @@&lt;br /&gt;
        */&lt;br /&gt;
       for (counter = 0; counter &amp;lt; 50; counter++)&lt;br /&gt;
 	{&lt;br /&gt;
-	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp (buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	    break;&lt;br /&gt;
 &lt;br /&gt;
 	  read_line (parent_pipe[0], buffer, 256);&lt;br /&gt;
@@ -2675,7 +2675,7 @@&lt;br /&gt;
       if (context-&amp;gt;debug)&lt;br /&gt;
 	fprintf (stderr, &amp;quot;brute force GNOME_SUDO_PASS ended...\n&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
-      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp(buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	{&lt;br /&gt;
 	  gchar *password = NULL;&lt;br /&gt;
 	  gboolean prompt_grab;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== gnome-screensaver ===&lt;br /&gt;
&lt;br /&gt;
If you'd like to be able to unlock your screen using the fingerprint reader, you must give yourself access to the fingerprint reader and your bir-file, because unlike login/gdm/su/sudo, gnome-screensaver does not run as root. The following procedure will make the fingerprint reader accessible to members of the &amp;quot;fingerprint&amp;quot; group.&lt;br /&gt;
&lt;br /&gt;
Make the group: {{cmdroot|groupadd fingerprint}}&lt;br /&gt;
&lt;br /&gt;
Save the following as {{path|/etc/udev/rules.d/60-thinkfinger.rules}} (you may need to reboot for this to take effect):&lt;br /&gt;
 #&lt;br /&gt;
 # udev rules file for the thinkfinger fingerprint scanner&lt;br /&gt;
 # &lt;br /&gt;
 # gives access to the fingerprint reader to those in the &amp;quot;fingerprint&amp;quot; group&lt;br /&gt;
 #&lt;br /&gt;
 &lt;br /&gt;
 # SGS Thomson Microelectronics Fingerprint Reader&lt;br /&gt;
 SYSFS{idVendor}==&amp;quot;0483&amp;quot;, SYSFS{idProduct}==&amp;quot;2016&amp;quot;, SYMLINK+=&amp;quot;input/thinkfinger-%k&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 # the also-needed uinput device&lt;br /&gt;
 KERNEL==&amp;quot;uinput&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Per user:&lt;br /&gt;
&lt;br /&gt;
1. Add him to the group: {{cmdroot|gpasswd -a $USERNAME fingerprint}}&lt;br /&gt;
&lt;br /&gt;
2. Give him access to his bir-file (one of the following):&lt;br /&gt;
* Make him owner of his bir-file: {{cmdroot|chown $USERNAME /etc/pam_thinkfinger/$USERNAME.bir}} (any system)&lt;br /&gt;
* Give him read-only access to his bir-file {{cmdroot|setfacl -m u:$USERNAME:r /etc/pam_thinkfinger/$USERNAME.bir}} (for systems with FACLs enabled)&lt;br /&gt;
* Give his private user group read-only access to his bir-file {{cmdroot|chgrp $GROUP /etc/pam_thinkfinger/$USERNAME.bir}} and {{cmdroot|chmod 0640 /etc/pam_thinkfinger/$USERNAME.bir}} (for systems where users have private groups)&lt;br /&gt;
&lt;br /&gt;
== KDE ==&lt;br /&gt;
&lt;br /&gt;
Integration in KDE and kdm seems not to be easily possible now. There is a filed [https://bugs.kde.org/show_bug.cgi?id=116682 bug] at kde.org where you can vote for this.&lt;br /&gt;
&lt;br /&gt;
Moreover, kdm in openSUSE 10.3 crashes when pam_thinkfinger is enabled. A possible &amp;quot;workaround&amp;quot; is downgrading to thinkfinger 0.2.2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Howto was copied from [[Installing Ubuntu 6.06 on a ThinkPad T43#Fingerprint_Reader]] and then slightly modified.&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Integrated_Fingerprint_Reader&amp;diff=33151</id>
		<title>Integrated Fingerprint Reader</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Integrated_Fingerprint_Reader&amp;diff=33151"/>
		<updated>2007-09-16T13:14:06Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: /* Models featuring this Technology */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|style=&amp;quot;vertical-align:top;padding-right:20px;width:10px;&amp;quot; | [[Image:fingerprintreader.jpg|IBM Integrated Fingerprint Reader]] __NOTOC__&lt;br /&gt;
|style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0; margin-right:10px; border: 1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#F8F8FF; align:right;&amp;quot;&amp;gt;&lt;br /&gt;
===Integrated Fingerprint Reader===&lt;br /&gt;
IBM released a second generation of T42 models in Autumn 2004 featuring Intel Pentium M 765 processors and an integrated fingerprint reader.&lt;br /&gt;
&lt;br /&gt;
The fingerprint reader is produced by a company called UPEK, which specializes in the manufacture of fingerprint readers. It is integrated as an USB device, and does all the matching in hardware, making it rather easy to use. Furthermore, IBM states that there's an interface with the [[Embedded Security Subsystem]].  UPEK now sells the fingerprint reader as a USB peripheral bundled with the same underlying software for accessing password-protected online accounts and Windows: [http://www.upek.com/solutions/eikon Eikon Digital Privacy Manager]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Linux Support==&lt;br /&gt;
&lt;br /&gt;
There is a new GPL driver at http://thinkfinger.sourceforge.net; see the [[How to enable the fingerprint reader with ThinkFinger]] for detailed instructions.&lt;br /&gt;
&lt;br /&gt;
A closed source driver from the vendor has been released.  It interfaces to the hardware as a user-space USB driver through {{path|/proc/bus/usb|}} and provides a BioAPI 1.10 device, which can then be interfaced to pam for authentication by user programs.  The driver can be downloaded from http://www.upek.com/support/dl_linux_bsp.asp; see the [[How to enable the fingerprint reader|corresponding HOWTO]] for detailed instructions.&lt;br /&gt;
&lt;br /&gt;
==Related Links==&lt;br /&gt;
* [http://www.trustedreviews.com/article.aspx?page=1643&amp;amp;head=36 Review from TrustedReviews of the fingerprint scanner]&lt;br /&gt;
* [http://biomark.org.ru/en/ A (Russian) project that provides support for a (different model) of fingerprint scanner] (also a USB device, though)&lt;br /&gt;
* [http://www.upek.com/support/pdf/UPEK_flyer_TCS3_TCD4.pdf TouchStrip TCS3/TCD4 spec sheet]&lt;br /&gt;
* [http://www.qrivy.net/~michael/blua/ A branch of the BioAPI reference implementation]&lt;br /&gt;
&lt;br /&gt;
==Models featuring this Technology==&lt;br /&gt;
*ThinkPad {{R52}}, {{R60}}&lt;br /&gt;
*ThinkPad {{T42}}, {{T42p}}, {{T43}}, {{T43p}}, {{T60}}, {{T60p}}, {{T61}}&lt;br /&gt;
*ThinkPad {{X41}}, {{X41T}}, {{X60}}, {{X60s}}, {{X61s}}&lt;br /&gt;
*ThinkPad {{Z60m}}, {{Z60t}}, {{Z61m}}, {{Z61p}}, {{Z61t}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Glossary]]&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=33145</id>
		<title>How to enable the integrated fingerprint reader with ThinkFinger</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=33145"/>
		<updated>2007-09-16T02:52:59Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[How to enable the fingerprint reader]] has a good explanation for using the fingerprint reader with the closed-source binary driver. But there is also an opensource project called [http://thinkfinger.sourceforge.net ThinkFinger] which does the same, but open.&lt;br /&gt;
&lt;br /&gt;
== Installing ==&lt;br /&gt;
=== From source ===&lt;br /&gt;
&lt;br /&gt;
Download thinkfinger-0.3.tar.gz from the [http://thinkfinger.sourceforge.net/ homepage] and unpack it somewhere, make sure you have the gcc compiler, libtool, pkgconfig, libusb-dev and libpam0g-dev installed, then:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|cd thinkfinger-0.3}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code style=&amp;quot;white-space:nowrap;color:#495988;background-color:white;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;$&amp;lt;/nowiki&amp;gt; ./configure --prefix=/usr --sysconfdir=/etc --with-securedir=/lib/security --with-birdir=/etc/pam_thinkfinger&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{cmduser|make}}&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|make install}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|/lib/security is the directory, where PAM assumes its modules on Debian and openSUSE, it may vary for your distro!}}&lt;br /&gt;
&lt;br /&gt;
&amp;quot;make install&amp;quot; doesn't create the birdir we specified (where thinkfinger will store users' biometric info), so create it:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|mkdir /etc/pam_thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
If everything went OK assert that you find pam_thinkfinger.so in /lib/security typing:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|ls /lib/security}}&lt;br /&gt;
&lt;br /&gt;
=== From package ===&lt;br /&gt;
&lt;br /&gt;
* Debian&lt;br /&gt;
** packages for Debian (testing) are available [http://www.rubixlinux.org/debian/thinkfinger/ here].&lt;br /&gt;
** packages arrived in Debian experimental on Aug 2nd, 2007 (cf. [http://bugs.debian.org/409563 bug #409563]).&lt;br /&gt;
* Fedora/Fedora Core&lt;br /&gt;
** packages for Fedora Core 6 are available in &amp;quot;extras&amp;quot; repository (# yum install thinkfinger).&lt;br /&gt;
** packages for Fedora 7 are available in the &amp;quot;updates&amp;quot; repository (# yum install thinkfinger).&lt;br /&gt;
* Gentoo&lt;br /&gt;
** emerge sys-auth/thinkfinger&lt;br /&gt;
* OpenSUSE&lt;br /&gt;
** openSUSE 10.2 includes the package &amp;quot;libthinkfinger&amp;quot; (version 0.1-7) - you will find newer packages [http://beta1.suse.com/private/thoenig/10.2/thinkfinger/ here].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Testing the driver ==&lt;br /&gt;
&lt;br /&gt;
Now the driver is installed and should be working. You can try it (as root) with&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --acquire}}&lt;br /&gt;
&lt;br /&gt;
and&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --verify}}&lt;br /&gt;
&lt;br /&gt;
This will ask you to swipe your finger three times, save the fingerprint to /tmp/test.bir and then verify your fingerprint with the bir-file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Configuring PAM to use ThinkFinger ==&lt;br /&gt;
Now you can configure PAM to use ThinkFinger:&lt;br /&gt;
&lt;br /&gt;
Open {{path|/etc/pam.d/common-auth}} (In FC6 and F7 this file is {{path|/etc/pam.d/system-auth}}):&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|nano -w /etc/pam.d/common-auth}}&lt;br /&gt;
&lt;br /&gt;
Add this line before any pam_unix or pam_unix2 directives:&lt;br /&gt;
 auth     sufficient     pam_thinkfinger.so&lt;br /&gt;
&lt;br /&gt;
If your PAM uses the pam_unix and not the pam_unix2 module, you need to pass a specific argument in&lt;br /&gt;
the /etc/pam.d/common-auth directive to make it consider the password entered at the pam_thinkfinger prompt.&lt;br /&gt;
 auth     required     pam_unix.so try_first_pass&lt;br /&gt;
&lt;br /&gt;
For instance, {{path|/etc/pam.d/common-auth}} looks like this:&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix.so nullok_secure try_first_pass&lt;br /&gt;
&lt;br /&gt;
On openSUSE 10.2, it looks like this now:&lt;br /&gt;
 auth    required        pam_env.so&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix2.so&lt;br /&gt;
&lt;br /&gt;
Now we are ready to add users to thinkfinger. You can add a fingerprint for a user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user $USERNAME}}&lt;br /&gt;
&lt;br /&gt;
Now the user should be able to login with his finger instead of the password.&lt;br /&gt;
&lt;br /&gt;
If you would like to use thinkfinger for su, you have to enroll the fingerprint for root user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user root}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|You should see the &amp;quot;Password or swipe finger:&amp;quot; prompt when trying to sudo or su. If you don't, you probably do not have the &amp;quot;User level driver support&amp;quot; compiled into your kernel or the &amp;quot;uinput&amp;quot; module loaded!}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== GNOME ==&lt;br /&gt;
&lt;br /&gt;
=== gksu/gksudo ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
gksu/gksudo doesn't work correctly. It just stays invisible. When starting a su privileged application such as synaptics you will not get prompted for the password. Nevertheless you can swipe your finger and it should authenticate you. Starting synaptics twice makes gksudo visible.&lt;br /&gt;
&lt;br /&gt;
There are two possibilities to solve it:&lt;br /&gt;
* Changing the string &amp;quot;Password or swipe finger:&amp;quot; to a plain &amp;quot;Password:&amp;quot; (like sudo normally would do) in the file pam/pam_thinkfinger.c of the thinkfinger source directory. Of course, in the console you will then only see a &amp;quot;Password:&amp;quot; instead of &amp;quot;Password or swipe finger:&amp;quot; but this is still more usefull than having gksu/gksudo crashing everytime.&lt;br /&gt;
* Patching libgksu with the following patch. This is also a nasty hack until a better solution is implemented.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
--- libgksu-2.0.3/libgksu/libgksu.c.orig	2007-06-17 16:00:24.000000000 +0200&lt;br /&gt;
+++ libgksu-2.0.3/libgksu/libgksu.c		2007-06-17 16:00:47.000000000 +0200&lt;br /&gt;
@@ -2663,7 +2663,7 @@&lt;br /&gt;
        */&lt;br /&gt;
       for (counter = 0; counter &amp;lt; 50; counter++)&lt;br /&gt;
 	{&lt;br /&gt;
-	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp (buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	    break;&lt;br /&gt;
 &lt;br /&gt;
 	  read_line (parent_pipe[0], buffer, 256);&lt;br /&gt;
@@ -2675,7 +2675,7 @@&lt;br /&gt;
       if (context-&amp;gt;debug)&lt;br /&gt;
 	fprintf (stderr, &amp;quot;brute force GNOME_SUDO_PASS ended...\n&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
-      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp(buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	{&lt;br /&gt;
 	  gchar *password = NULL;&lt;br /&gt;
 	  gboolean prompt_grab;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== gnome-screensaver ===&lt;br /&gt;
&lt;br /&gt;
If you'd like to unlock your screen using the fingerprint reader, you must give yourself access to it, because unlike login/gdm/su/sudo, gnome-screensaver does not run as root. The following will create a group called &amp;quot;fingerprint&amp;quot; and give access to the fingerprint reader to that group. You can then add whatever users need access to the group.&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|groupadd fingerprint}}&lt;br /&gt;
&lt;br /&gt;
Save the following as {{path|/etc/udev/rules.d/60-thinkfinger.rules}}:&lt;br /&gt;
 #&lt;br /&gt;
 # udev rules file for the thinkfinger fingerprint scanner&lt;br /&gt;
 #&lt;br /&gt;
 &lt;br /&gt;
 # SGS Thomson Microelectronics Fingerprint Reader&lt;br /&gt;
 SYSFS{idVendor}==&amp;quot;0483&amp;quot;, SYSFS{idProduct}==&amp;quot;2016&amp;quot;, SYMLINK+=&amp;quot;input/thinkfinger-%k&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 # the also-needed uinput device&lt;br /&gt;
 KERNEL==&amp;quot;uinput&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
&lt;br /&gt;
A reboot might be necessary for the udev rules to take effect.&lt;br /&gt;
&lt;br /&gt;
== KDE ==&lt;br /&gt;
&lt;br /&gt;
Integration in KDE and kdm seems not to be easily possible now. There is a filed [https://bugs.kde.org/show_bug.cgi?id=116682 bug] at kde.org where you can vote for this.&lt;br /&gt;
&lt;br /&gt;
Moreover, kdm in openSUSE 10.3 crashes when pam_thinkfinger is enabled. A possible &amp;quot;workaround&amp;quot; is downgrading to thinkfinger 0.2.2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Howto was copied from [[Installing Ubuntu 6.06 on a ThinkPad T43#Fingerprint_Reader]] and then slightly modified.&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=33144</id>
		<title>How to enable the integrated fingerprint reader with ThinkFinger</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=33144"/>
		<updated>2007-09-16T02:30:22Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[How to enable the fingerprint reader]] has a good explanation for using the fingerprint reader with the closed-source binary driver. But there is also an opensource project called [http://thinkfinger.sourceforge.net ThinkFinger] which does the same, but open.&lt;br /&gt;
&lt;br /&gt;
== Installing from source ==&lt;br /&gt;
&lt;br /&gt;
Download thinkfinger-0.3.tar.gz from the [http://thinkfinger.sourceforge.net/ homepage] and unpack it somewhere, make sure you have the gcc compiler, libtool, pkgconfig, libusb-dev and libpam0g-dev installed, then:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|cd thinkfinger-0.3}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code style=&amp;quot;white-space:nowrap;color:#495988;background-color:white;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;$&amp;lt;/nowiki&amp;gt; ./configure --prefix=/usr --sysconfdir=/etc --with-securedir=/lib/security --with-birdir=/etc/pam_thinkfinger&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{cmduser|make}}&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|make install}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|/lib/security is the directory, where PAM assumes its modules on Debian and openSUSE, it may vary for your distro!}}&lt;br /&gt;
&lt;br /&gt;
&amp;quot;make install&amp;quot; doesn't create the birdir we specified (where thinkfinger will store users' biometric info), so create it:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|mkdir /etc/pam_thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
If everything went OK assert that you find pam_thinkfinger.so in /lib/security typing:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|ls /lib/security}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
* Debian&lt;br /&gt;
** packages for Debian (testing) are available [http://www.rubixlinux.org/debian/thinkfinger/ here].&lt;br /&gt;
** packages arrived in Debian experimental on Aug 2nd, 2007 (cf. [http://bugs.debian.org/409563 bug #409563]).&lt;br /&gt;
* Fedora/Fedora Core&lt;br /&gt;
** packages for Fedora Core 6 are available in &amp;quot;extras&amp;quot; repository (# yum install thinkfinger).&lt;br /&gt;
** packages for Fedora 7 are available in the &amp;quot;updates&amp;quot; repository (# yum install thinkfinger).&lt;br /&gt;
* Gentoo&lt;br /&gt;
** emerge sys-auth/thinkfinger&lt;br /&gt;
* OpenSUSE&lt;br /&gt;
** openSUSE 10.2 includes the package &amp;quot;libthinkfinger&amp;quot; (version 0.1-7) - you will find newer packages [http://beta1.suse.com/private/thoenig/10.2/thinkfinger/ here].&lt;br /&gt;
&lt;br /&gt;
== Testing the driver ==&lt;br /&gt;
&lt;br /&gt;
Now the driver is installed and should be working. You can try it (as root) with&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --acquire}}&lt;br /&gt;
&lt;br /&gt;
and&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --verify}}&lt;br /&gt;
&lt;br /&gt;
This will ask you to swipe your finger three times, save the fingerprint to /tmp/test.bir and then verify your fingerprint with the bir-file.&lt;br /&gt;
&lt;br /&gt;
== Configuring PAM to use ThinkFinger ==&lt;br /&gt;
Now you can configure PAM to use ThinkFinger:&lt;br /&gt;
&lt;br /&gt;
Open /etc/pam.d/common-auth:&lt;br /&gt;
{{NOTE|In FC6 this file is &amp;quot;/etc/pam.d/system-auth&amp;quot;}}&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|nano -w /etc/pam.d/common-auth}}&lt;br /&gt;
&lt;br /&gt;
Add this line before any pam_unix or pam_unix2 directives:&lt;br /&gt;
 auth     sufficient     pam_thinkfinger.so&lt;br /&gt;
&lt;br /&gt;
If your PAM uses the pam_unix and not the pam_unix2 module, you need to pass a specific argument in&lt;br /&gt;
the /etc/pam.d/common-auth directive to make it consider the password entered at the pam_thinkfinger prompt.&lt;br /&gt;
 auth     required     pam_unix.so try_first_pass&lt;br /&gt;
&lt;br /&gt;
For instance, /etc/pam.d/common-auth looks like this:&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix.so nullok_secure try_first_pass&lt;br /&gt;
&lt;br /&gt;
On openSUSE 10.2, it looks like this now:&lt;br /&gt;
 auth    required        pam_env.so&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix2.so&lt;br /&gt;
&lt;br /&gt;
Now we are ready to add users to thinkfinger. You can add a fingerprint for a user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user $USERNAME}}&lt;br /&gt;
&lt;br /&gt;
Now the user should be able to login with his finger instead of the password.&lt;br /&gt;
&lt;br /&gt;
If you would like to use thinkfinger for su, you have to enroll the fingerprint for root user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user root}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|You should see the &amp;quot;Password or swipe finger:&amp;quot; prompt when trying to sudo or su. If you don't, you probably do not have the &amp;quot;User level driver support&amp;quot; compiled into your kernel or the &amp;quot;uinput&amp;quot; module loaded!}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== GNOME ==&lt;br /&gt;
&lt;br /&gt;
=== gksu/gksudo ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
gksu/gksudo doesn't work correctly. It just stays invisible. When starting a su privileged application such as synaptics you will not get prompted for the password. Nevertheless you can swipe your finger and it should authenticate you. Starting synaptics twice makes gksudo visible.&lt;br /&gt;
&lt;br /&gt;
There are two possibilities to solve it:&lt;br /&gt;
* Changing the string &amp;quot;Password or swipe finger:&amp;quot; to a plain &amp;quot;Password:&amp;quot; (like sudo normally would do) in the file pam/pam_thinkfinger.c of the thinkfinger source directory. Of course, in the console you will then only see a &amp;quot;Password:&amp;quot; instead of &amp;quot;Password or swipe finger:&amp;quot; but this is still more usefull than having gksu/gksudo crashing everytime.&lt;br /&gt;
* Patching libgksu with the following patch. This is also a nasty hack until a better solution is implemented.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
--- libgksu-2.0.3/libgksu/libgksu.c.orig	2007-06-17 16:00:24.000000000 +0200&lt;br /&gt;
+++ libgksu-2.0.3/libgksu/libgksu.c		2007-06-17 16:00:47.000000000 +0200&lt;br /&gt;
@@ -2663,7 +2663,7 @@&lt;br /&gt;
        */&lt;br /&gt;
       for (counter = 0; counter &amp;lt; 50; counter++)&lt;br /&gt;
 	{&lt;br /&gt;
-	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp (buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	    break;&lt;br /&gt;
 &lt;br /&gt;
 	  read_line (parent_pipe[0], buffer, 256);&lt;br /&gt;
@@ -2675,7 +2675,7 @@&lt;br /&gt;
       if (context-&amp;gt;debug)&lt;br /&gt;
 	fprintf (stderr, &amp;quot;brute force GNOME_SUDO_PASS ended...\n&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
-      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp(buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	{&lt;br /&gt;
 	  gchar *password = NULL;&lt;br /&gt;
 	  gboolean prompt_grab;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== gnome-screensaver ===&lt;br /&gt;
&lt;br /&gt;
If you'd like to unlock your screen using the fingerprint reader, you must give yourself access to it, because unlike login/gdm/su/sudo, gnome-screensaver does not run as root. The following will create a group called &amp;quot;fingerprint&amp;quot; and give access to the fingerprint reader to that group. You can then add whatever users need access to the group.&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|groupadd fingerprint}}&lt;br /&gt;
&lt;br /&gt;
Saved as {{path|/etc/udev/rules.d/60-thinkfinger.rules}}:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#&lt;br /&gt;
# udev rules file for the thinkfinger fingerprint scanner&lt;br /&gt;
#&lt;br /&gt;
&lt;br /&gt;
# SGS Thomson Microelectronics Fingerprint Reader&lt;br /&gt;
SYSFS{idVendor}==&amp;quot;0483&amp;quot;, SYSFS{idProduct}==&amp;quot;2016&amp;quot;, SYMLINK+=&amp;quot;input/thinkfinger-%k&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# the also-needed uinput device&lt;br /&gt;
KERNEL==&amp;quot;uinput&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A reboot might be necessary for the udev rules to take effect.&lt;br /&gt;
&lt;br /&gt;
== KDE ==&lt;br /&gt;
&lt;br /&gt;
Integration in KDE and kdm seems not to be easily possible now. There is a filed [https://bugs.kde.org/show_bug.cgi?id=116682 bug] at kde.org where you can vote for this.&lt;br /&gt;
&lt;br /&gt;
Moreover, kdm in openSUSE 10.3 crashes when pam_thinkfinger is enabled. A possible &amp;quot;workaround&amp;quot; is downgrading to thinkfinger 0.2.2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Howto was copied from [[Installing Ubuntu 6.06 on a ThinkPad T43#Fingerprint_Reader]] and then slightly modified.&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=33143</id>
		<title>How to enable the integrated fingerprint reader with ThinkFinger</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=33143"/>
		<updated>2007-09-16T02:21:17Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: /* GNOME */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[How to enable the fingerprint reader]] has a good explanation for using the fingerprint reader with the closed-source binary driver. But there is also an opensource project called [http://thinkfinger.sourceforge.net ThinkFinger] which does the same, but open.&lt;br /&gt;
&lt;br /&gt;
== Installing from source ==&lt;br /&gt;
&lt;br /&gt;
Download thinkfinger-0.3.tar.gz from the [http://thinkfinger.sourceforge.net/ homepage] and unpack it somewhere, make sure you have the gcc compiler, libtool, pkgconfig, libusb-dev and libpam0g-dev installed, then:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|cd thinkfinger-0.3}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code style=&amp;quot;white-space:nowrap;color:#495988;background-color:white;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;$&amp;lt;/nowiki&amp;gt; ./configure --prefix=/usr --sysconfdir=/etc --with-securedir=/lib/security --with-birdir=/etc/pam_thinkfinger&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{cmduser|make}}&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|make install}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|/lib/security is the directory, where PAM assumes its modules on Debian and openSUSE, it may vary for your distro!}}&lt;br /&gt;
&lt;br /&gt;
If everything went ok assert that you find pam_thinkfinger.so in /lib/security typing:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|ls /lib/security}}&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
* Debian&lt;br /&gt;
** packages for Debian (testing) are available [http://www.rubixlinux.org/debian/thinkfinger/ here].&lt;br /&gt;
** packages arrived in Debian experimental on Aug 2nd, 2007 (cf. [http://bugs.debian.org/409563 bug #409563]).&lt;br /&gt;
* Fedora/Fedora Core&lt;br /&gt;
** packages for Fedora Core 6 are available in &amp;quot;extras&amp;quot; repository (# yum install thinkfinger).&lt;br /&gt;
** packages for Fedora 7 are available in the &amp;quot;updates&amp;quot; repository (# yum install thinkfinger).&lt;br /&gt;
* Gentoo&lt;br /&gt;
** emerge sys-auth/thinkfinger&lt;br /&gt;
* OpenSUSE&lt;br /&gt;
** openSUSE 10.2 includes the package &amp;quot;libthinkfinger&amp;quot; (version 0.1-7) - you will find newer packages [http://beta1.suse.com/private/thoenig/10.2/thinkfinger/ here].&lt;br /&gt;
&lt;br /&gt;
== Testing the driver ==&lt;br /&gt;
&lt;br /&gt;
Now the driver is installed and should be working. You can try it (as root) with&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --acquire}}&lt;br /&gt;
&lt;br /&gt;
and&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --verify}}&lt;br /&gt;
&lt;br /&gt;
This will ask you to swipe your finger three times, save the fingerprint to /tmp/test.bir and then verify your fingerprint with the bir-file.&lt;br /&gt;
&lt;br /&gt;
== Configuring PAM to use ThinkFinger ==&lt;br /&gt;
Now you can configure pam to use ThinkFinger:&lt;br /&gt;
&lt;br /&gt;
Open /etc/pam.d/common-auth:&lt;br /&gt;
{{NOTE|In FC6 this file is &amp;quot;/etc/pam.d/system-auth&amp;quot;}}&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|nano -w /etc/pam.d/common-auth}}&lt;br /&gt;
&lt;br /&gt;
Add this line before any pam_unix or pam_unix2 directives:&lt;br /&gt;
 auth     sufficient     pam_thinkfinger.so&lt;br /&gt;
&lt;br /&gt;
If your PAM uses the pam_unix and not the pam_unix2 module, you need to pass a specific argument in&lt;br /&gt;
the /etc/pam.d/common-auth directive to make it consider the password entered at the pam_thinkfinger prompt.&lt;br /&gt;
 auth     required     pam_unix.so try_first_pass&lt;br /&gt;
&lt;br /&gt;
For instance, /etc/pam.d/common-auth looks like this:&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix.so nullok_secure try_first_pass&lt;br /&gt;
&lt;br /&gt;
On openSUSE 10.2, it looks like this now:&lt;br /&gt;
 auth    required        pam_env.so&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix2.so&lt;br /&gt;
&lt;br /&gt;
Now we are ready to add users to thinkfinger. As &amp;quot;make install&amp;quot; did not create /etc/pam_thinkfinger, you need to create it now:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|mkdir /etc/pam_thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
And now, you can add a fingerprint for a user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user $USERNAME}}&lt;br /&gt;
&lt;br /&gt;
Now the user should be able to login with his finger instead of the password.&lt;br /&gt;
&lt;br /&gt;
If you would like to use thinkfinger for su, you have to enroll the fingerprint for root user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user root}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|You should see the &amp;quot;Password or swipe finger:&amp;quot; prompt when trying to sudo or su. If you don't, you probably do not have the &amp;quot;User level driver support&amp;quot; compiled into your kernel or the &amp;quot;uinput&amp;quot; module loaded!}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== GNOME ==&lt;br /&gt;
&lt;br /&gt;
=== gksu/gksudo ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
gksu/gksudo doesn't work correctly. It just stays invisible. When starting a su privileged application such as synaptics you will not get prompted for the password. Nevertheless you can swipe your finger and it should authenticate you. Starting synaptics twice makes gksudo visible.&lt;br /&gt;
&lt;br /&gt;
There are two possibilities to solve it:&lt;br /&gt;
* Changing the string &amp;quot;Password or swipe finger:&amp;quot; to a plain &amp;quot;Password:&amp;quot; (like sudo normally would do) in the file pam/pam_thinkfinger.c of the thinkfinger source directory. Of course, in the console you will then only see a &amp;quot;Password:&amp;quot; instead of &amp;quot;Password or swipe finger:&amp;quot; but this is still more usefull than having gksu/gksudo crashing everytime.&lt;br /&gt;
* Patching libgksu with the following patch. This is also a nasty hack until a better solution is implemented.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
--- libgksu-2.0.3/libgksu/libgksu.c.orig	2007-06-17 16:00:24.000000000 +0200&lt;br /&gt;
+++ libgksu-2.0.3/libgksu/libgksu.c		2007-06-17 16:00:47.000000000 +0200&lt;br /&gt;
@@ -2663,7 +2663,7 @@&lt;br /&gt;
        */&lt;br /&gt;
       for (counter = 0; counter &amp;lt; 50; counter++)&lt;br /&gt;
 	{&lt;br /&gt;
-	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp (buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	    break;&lt;br /&gt;
 &lt;br /&gt;
 	  read_line (parent_pipe[0], buffer, 256);&lt;br /&gt;
@@ -2675,7 +2675,7 @@&lt;br /&gt;
       if (context-&amp;gt;debug)&lt;br /&gt;
 	fprintf (stderr, &amp;quot;brute force GNOME_SUDO_PASS ended...\n&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
-      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp(buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	{&lt;br /&gt;
 	  gchar *password = NULL;&lt;br /&gt;
 	  gboolean prompt_grab;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== gnome-screensaver ===&lt;br /&gt;
&lt;br /&gt;
If you'd like to unlock your screen using the fingerprint reader, you must give yourself access to it, because unlike login/gdm/su/sudo, gnome-screensaver does not run as root. The following will create a group called &amp;quot;fingerprint&amp;quot; and give access to the fingerprint reader to that group. You can then add whatever users need access to the group.&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|groupadd fingerprint}}&lt;br /&gt;
&lt;br /&gt;
Saved as {{path|/etc/udev/rules.d/60-thinkfinger.rules}}:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#&lt;br /&gt;
# udev rules file for the thinkfinger fingerprint scanner&lt;br /&gt;
#&lt;br /&gt;
&lt;br /&gt;
# SGS Thomson Microelectronics Fingerprint Reader&lt;br /&gt;
SYSFS{idVendor}==&amp;quot;0483&amp;quot;, SYSFS{idProduct}==&amp;quot;2016&amp;quot;, SYMLINK+=&amp;quot;input/thinkfinger-%k&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# the also-needed uinput device&lt;br /&gt;
KERNEL==&amp;quot;uinput&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;fingerprint&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A reboot might be necessary for the udev rules to take effect.&lt;br /&gt;
&lt;br /&gt;
== KDE ==&lt;br /&gt;
&lt;br /&gt;
Integration in KDE and kdm seems not to be easily possible now. There is a filed [https://bugs.kde.org/show_bug.cgi?id=116682 bug] at kde.org where you can vote for this.&lt;br /&gt;
&lt;br /&gt;
Moreover, kdm in openSUSE 10.3 crashes when pam_thinkfinger is enabled. A possible &amp;quot;workaround&amp;quot; is downgrading to thinkfinger 0.2.2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Howto was copied from [[Installing Ubuntu 6.06 on a ThinkPad T43#Fingerprint_Reader]] and then slightly modified.&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=33142</id>
		<title>How to enable the integrated fingerprint reader with ThinkFinger</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&amp;diff=33142"/>
		<updated>2007-09-16T01:35:14Z</updated>

		<summary type="html">&lt;p&gt;Quartsize: /* Packages */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[How to enable the fingerprint reader]] has a good explanation for using the fingerprint reader with the closed-source binary driver. But there is also an opensource project called [http://thinkfinger.sourceforge.net ThinkFinger] which does the same, but open.&lt;br /&gt;
&lt;br /&gt;
== Installing from source ==&lt;br /&gt;
&lt;br /&gt;
Download thinkfinger-0.3.tar.gz from the [http://thinkfinger.sourceforge.net/ homepage] and unpack it somewhere, make sure you have the gcc compiler, libtool, pkgconfig, libusb-dev and libpam0g-dev installed, then:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|cd thinkfinger-0.3}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code style=&amp;quot;white-space:nowrap;color:#495988;background-color:white;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;$&amp;lt;/nowiki&amp;gt; ./configure --prefix=/usr --sysconfdir=/etc --with-securedir=/lib/security --with-birdir=/etc/pam_thinkfinger&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{cmduser|make}}&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|make install}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|/lib/security is the directory, where PAM assumes its modules on Debian and openSUSE, it may vary for your distro!}}&lt;br /&gt;
&lt;br /&gt;
If everything went ok assert that you find pam_thinkfinger.so in /lib/security typing:&lt;br /&gt;
&lt;br /&gt;
{{cmduser|ls /lib/security}}&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
* Debian&lt;br /&gt;
** packages for Debian (testing) are available [http://www.rubixlinux.org/debian/thinkfinger/ here].&lt;br /&gt;
** packages arrived in Debian experimental on Aug 2nd, 2007 (cf. [http://bugs.debian.org/409563 bug #409563]).&lt;br /&gt;
* Fedora/Fedora Core&lt;br /&gt;
** packages for Fedora Core 6 are available in &amp;quot;extras&amp;quot; repository (# yum install thinkfinger).&lt;br /&gt;
** packages for Fedora 7 are available in the &amp;quot;updates&amp;quot; repository (# yum install thinkfinger).&lt;br /&gt;
* Gentoo&lt;br /&gt;
** emerge sys-auth/thinkfinger&lt;br /&gt;
* OpenSUSE&lt;br /&gt;
** openSUSE 10.2 includes the package &amp;quot;libthinkfinger&amp;quot; (version 0.1-7) - you will find newer packages [http://beta1.suse.com/private/thoenig/10.2/thinkfinger/ here].&lt;br /&gt;
&lt;br /&gt;
== Testing the driver ==&lt;br /&gt;
&lt;br /&gt;
Now the driver is installed and should be working. You can try it (as root) with&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --acquire}}&lt;br /&gt;
&lt;br /&gt;
and&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --verify}}&lt;br /&gt;
&lt;br /&gt;
This will ask you to swipe your finger three times, save the fingerprint to /tmp/test.bir and then verify your fingerprint with the bir-file.&lt;br /&gt;
&lt;br /&gt;
== Configuring PAM to use ThinkFinger ==&lt;br /&gt;
Now you can configure pam to use ThinkFinger:&lt;br /&gt;
&lt;br /&gt;
Open /etc/pam.d/common-auth:&lt;br /&gt;
{{NOTE|In FC6 this file is &amp;quot;/etc/pam.d/system-auth&amp;quot;}}&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|nano -w /etc/pam.d/common-auth}}&lt;br /&gt;
&lt;br /&gt;
Add this line before any pam_unix or pam_unix2 directives:&lt;br /&gt;
 auth     sufficient     pam_thinkfinger.so&lt;br /&gt;
&lt;br /&gt;
If your PAM uses the pam_unix and not the pam_unix2 module, you need to pass a specific argument in&lt;br /&gt;
the /etc/pam.d/common-auth directive to make it consider the password entered at the pam_thinkfinger prompt.&lt;br /&gt;
 auth     required     pam_unix.so try_first_pass&lt;br /&gt;
&lt;br /&gt;
For instance, /etc/pam.d/common-auth looks like this:&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix.so nullok_secure try_first_pass&lt;br /&gt;
&lt;br /&gt;
On openSUSE 10.2, it looks like this now:&lt;br /&gt;
 auth    required        pam_env.so&lt;br /&gt;
 auth    sufficient      pam_thinkfinger.so&lt;br /&gt;
 auth    required        pam_unix2.so&lt;br /&gt;
&lt;br /&gt;
Now we are ready to add users to thinkfinger. As &amp;quot;make install&amp;quot; did not create /etc/pam_thinkfinger, you need to create it now:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|mkdir /etc/pam_thinkfinger}}&lt;br /&gt;
&lt;br /&gt;
And now, you can add a fingerprint for a user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user $USERNAME}}&lt;br /&gt;
&lt;br /&gt;
Now the user should be able to login with his finger instead of the password.&lt;br /&gt;
&lt;br /&gt;
If you would like to use thinkfinger for su, you have to enroll the fingerprint for root user with:&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|tf-tool --add-user root}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|You should see the &amp;quot;Password or swipe finger:&amp;quot; prompt when trying to sudo or su. If you don't, you probably do not have the &amp;quot;User level driver support&amp;quot; compiled into your kernel or the &amp;quot;uinput&amp;quot; module loaded!}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== GNOME ==&lt;br /&gt;
&lt;br /&gt;
=== gksu/gksudo ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
gksu/gksudo doesn't work correctly. It just stays invisible. When starting a su privileged application such as synaptics you will not get prompted for the password. Nevertheless you can swipe your finger and it should authenticate you. Starting synaptics twice makes gksudo visible.&lt;br /&gt;
&lt;br /&gt;
There are two possibilities to solve it:&lt;br /&gt;
* Changing the string &amp;quot;Password or swipe finger:&amp;quot; to a plain &amp;quot;Password:&amp;quot; (like sudo normally would do) in the file pam/pam_thinkfinger.c of the thinkfinger source directory. Of course, in the console you will then only see a &amp;quot;Password:&amp;quot; instead of &amp;quot;Password or swipe finger:&amp;quot; but this is still more usefull than having gksu/gksudo crashing everytime.&lt;br /&gt;
* Patching libgksu with the following patch. This is also a nasty hack until a better solution is implemented.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
--- libgksu-2.0.3/libgksu/libgksu.c.orig	2007-06-17 16:00:24.000000000 +0200&lt;br /&gt;
+++ libgksu-2.0.3/libgksu/libgksu.c		2007-06-17 16:00:47.000000000 +0200&lt;br /&gt;
@@ -2663,7 +2663,7 @@&lt;br /&gt;
        */&lt;br /&gt;
       for (counter = 0; counter &amp;lt; 50; counter++)&lt;br /&gt;
 	{&lt;br /&gt;
-	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+	  if (strncmp (buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp (buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	    break;&lt;br /&gt;
 &lt;br /&gt;
 	  read_line (parent_pipe[0], buffer, 256);&lt;br /&gt;
@@ -2675,7 +2675,7 @@&lt;br /&gt;
       if (context-&amp;gt;debug)&lt;br /&gt;
 	fprintf (stderr, &amp;quot;brute force GNOME_SUDO_PASS ended...\n&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
-      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0)&lt;br /&gt;
+      if (strncmp(buffer, &amp;quot;GNOME_SUDO_PASS&amp;quot;, 15) == 0 || strncmp(buffer, &amp;quot;Password or swi&amp;quot;, 15) == 0)&lt;br /&gt;
 	{&lt;br /&gt;
 	  gchar *password = NULL;&lt;br /&gt;
 	  gboolean prompt_grab;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== KDE ==&lt;br /&gt;
&lt;br /&gt;
Integration in KDE and kdm seems not to be easily possible now. There is a filed [https://bugs.kde.org/show_bug.cgi?id=116682 bug] at kde.org where you can vote for this.&lt;br /&gt;
&lt;br /&gt;
Moreover, kdm in openSUSE 10.3 crashes when pam_thinkfinger is enabled. A possible &amp;quot;workaround&amp;quot; is downgrading to thinkfinger 0.2.2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This Howto was copied from [[Installing Ubuntu 6.06 on a ThinkPad T43#Fingerprint_Reader]] and then slightly modified.&lt;/div&gt;</summary>
		<author><name>Quartsize</name></author>
		
	</entry>
</feed>