Index: general/general.ent
===================================================================
--- general/general.ent	(revision 5a3b2adde8ec55f262483e2184468c7d4e99b824)
+++ general/general.ent	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
@@ -27,4 +27,5 @@
 <!ENTITY % LZO SYSTEM "genlib/lzo/lzo.ent">
 <!ENTITY % libpcap SYSTEM "genlib/libpcap/libpcap.ent">
+<!ENTITY % libusb SYSTEM "genlib/libusb/libusb.ent">
 %openssl;
 %pcre;
@@ -51,4 +52,5 @@
 %LZO;
 %libpcap;
+%libusb;
 
 <!-- Graphics Libraries -->
Index: general/genlib/genlib.xml
===================================================================
--- general/genlib/genlib.xml	(revision 5a3b2adde8ec55f262483e2184468c7d4e99b824)
+++ general/genlib/genlib.xml	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
@@ -53,3 +53,4 @@
 &LZO;
 &libpcap;
+&libusb;
 </chapter>
Index: general/genlib/libusb.xml
===================================================================
--- general/genlib/libusb.xml	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
+++ general/genlib/libusb.xml	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
@@ -0,0 +1,11 @@
+<sect1 id="libusb" xreflabel="libusb-&libusb-version;">
+<?dbhtml filename="libusb.html"?>
+<title>libusb-&libusb-version;</title>
+
+&libusb-intro;
+&libusb-inst;
+&libusb-exp;
+&libusb-config;
+&libusb-desc;
+
+</sect1>
Index: general/genlib/libusb/libusb-config.xml
===================================================================
--- general/genlib/libusb/libusb-config.xml	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
+++ general/genlib/libusb/libusb-config.xml	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
@@ -0,0 +1,48 @@
+<sect2>
+<title>Configuring <application>libusb</application></title>
+
+<!-- To be reviewed when hotplug enters the LFS book -->
+
+<para>libusb requires the usbfs kernel filesystem to be mounted on
+<filename class="directory">/proc/bus/usb</filename>. Applications
+require the files in this directory to be accessible to the user,
+sometimes for both reading and writing.</para>
+
+<para>To restrict access to <acronym>USB</acronym> devices, create the
+usb group:</para>
+
+<screen><userinput><command>groupadd -g 15 usb</command></userinput></screen>
+
+<para>To get usbfs mounted on boot, we will create a special init script,
+because just putting an extra line into
+<filename>/etc/fstab</filename> does not work for those who compiled
+"USB device filesystem" as a kernel module. To do this,
+execute the following command:</para>
+
+<screen><userinput><command>cat &gt;/etc/rc.d/init.d/usb &lt;&lt;"EOF"</command>
+#!/bin/sh
+# Begin $rc_base/init.d/usb
+
+. /etc/sysconfig/rc
+. $rc_functions
+
+modprobe usbcore 2&gt;/dev/null || true
+# insert a modprobe command for your USB host adapter here, e.g.
+# modprobe ehci-hcd 2&gt;/dev/null
+# Other host adapters are uhci-hcd and ohci-hcd
+# 2.4.x kernels have usb-ehci, usb-uhci, and usb-ohci modules
+if ( grep -q usbfs /proc/filesystems )
+then
+	echo "Mounting USB filesystem"
+	mount -o devgid=15,devmode=0660 -t usbfs usbfs /proc/bus/usb
+	evaluate_retval
+fi
+# End $rc_base/init.d/usb
+<command>EOF</command></userinput></screen>
+
+<para>Give this script the appropriate permissions and
+make a symlink to run it at startup:</para>
+<screen><userinput><command>chmod 755 /etc/rc.d/init.d/usb &amp;&amp;
+ln -s ../init.d/usb /etc/rc.d/rcsysinit.d/S90usb</command></userinput></screen>
+
+</sect2>
Index: general/genlib/libusb/libusb-desc.xml
===================================================================
--- general/genlib/libusb/libusb-desc.xml	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
+++ general/genlib/libusb/libusb-desc.xml	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
@@ -0,0 +1,22 @@
+<sect2>
+<title>Contents</title>
+
+<para>The <application>libusb</application> package contains
+<filename class="libraryfile">libusb</filename> libraries,
+the <filename>/usr/include/usb.h</filename> header,
+and a <command>usb-config</command> script.</para>
+
+</sect2>
+
+<sect2><title>Description</title>
+
+<sect3><title>libusb libraries</title>
+<para><filename class="libraryfile">libusb</filename> libraries contain C functions for
+accessing <acronym>USB</acronym> hardware.</para></sect3>
+
+<sect3><title>usb-config</title>
+<para>The <command>usb-config</command> script provides the right
+compiler and linker flags for programs using
+this library.</para></sect3>
+
+</sect2>
Index: general/genlib/libusb/libusb-exp.xml
===================================================================
--- general/genlib/libusb/libusb-exp.xml	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
+++ general/genlib/libusb/libusb-exp.xml	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
@@ -0,0 +1,7 @@
+<sect2>
+<title>Command explanations</title>
+
+<para><parameter>--disable-build-docs</parameter>: This switch turns off
+by default enabled building of documentation since it requires
+<application>OpenJade</application>.</para>
+</sect2>
Index: general/genlib/libusb/libusb-inst.xml
===================================================================
--- general/genlib/libusb/libusb-inst.xml	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
+++ general/genlib/libusb/libusb-inst.xml	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
@@ -0,0 +1,10 @@
+<sect2>
+<title>Installation of <application>libusb</application></title>
+
+<para>Install <application>libusb</application> by running the following commands:</para>
+
+<screen><userinput><command>./configure --prefix=/usr --disable-build-docs &amp;&amp;
+make &amp;&amp;
+make install</command></userinput></screen>
+
+</sect2>
Index: general/genlib/libusb/libusb-intro.xml
===================================================================
--- general/genlib/libusb/libusb-intro.xml	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
+++ general/genlib/libusb/libusb-intro.xml	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
@@ -0,0 +1,21 @@
+<sect2>
+<title>Introduction to <application>libusb</application></title>
+
+<para>The <application>libusb</application> package contains a library
+used by some applications for <acronym>USB</acronym> device access.</para>
+
+<sect3><title>Package information</title>
+<itemizedlist spacing='compact'>
+<listitem><para>Download (HTTP): <ulink url="&libusb-download-http;"/></para></listitem>
+<listitem><para>Download (FTP): <ulink url="&libusb-download-ftp;"/></para></listitem>
+<listitem><para>Download size: &libusb-size;</para></listitem>
+<listitem><para>Estimated Disk space required: &libusb-buildsize;</para></listitem>
+<listitem><para>Estimated build time: &libusb-time;</para></listitem></itemizedlist>
+</sect3>
+
+<sect3><title><application>libusb</application> dependencies</title>
+<sect4><title>Optional</title>
+<para><xref linkend="openjade"/></para></sect4>
+</sect3>
+
+</sect2>
Index: general/genlib/libusb/libusb.ent
===================================================================
--- general/genlib/libusb/libusb.ent	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
+++ general/genlib/libusb/libusb.ent	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
@@ -0,0 +1,12 @@
+<!ENTITY libusb SYSTEM "../libusb.xml">
+<!ENTITY libusb-intro SYSTEM "libusb-intro.xml">
+<!ENTITY libusb-inst SYSTEM "libusb-inst.xml">
+<!ENTITY libusb-exp SYSTEM "libusb-exp.xml">
+<!ENTITY libusb-config SYSTEM "libusb-config.xml">
+<!ENTITY libusb-desc SYSTEM "libusb-desc.xml">
+<!ENTITY libusb-version "0.1.8">
+<!ENTITY libusb-download-http "http://umn.dl.sourceforge.net/sourceforge/libusb/libusb-&libusb-version;.tar.gz">
+<!ENTITY libusb-download-ftp " ">
+<!ENTITY libusb-size "314 KB">
+<!ENTITY libusb-buildsize "2.1 MB">
+<!ENTITY libusb-time "0.03 SBU">
Index: introduction/welcome/changelog.xml
===================================================================
--- introduction/welcome/changelog.xml	(revision 5a3b2adde8ec55f262483e2184468c7d4e99b824)
+++ introduction/welcome/changelog.xml	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
@@ -11,4 +11,7 @@
 
 <itemizedlist>
+
+<listitem><para>May 10th, 2004 [igor]: Added libusb-0.1.8,
+contributed by Alexander E. Patrakov.</para></listitem>
 
 <listitem><para>May 10th, 2004 [igor]: Updated to XSane-0.93,
Index: introduction/welcome/credits.xml
===================================================================
--- introduction/welcome/credits.xml	(revision 5a3b2adde8ec55f262483e2184468c7d4e99b824)
+++ introduction/welcome/credits.xml	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
@@ -140,5 +140,5 @@
 <listitem><para>PHP: <emphasis>Jeremy Utley</emphasis></para></listitem>
 
-<listitem><para>Gimp-Print: <emphasis>Alexander E. Patrakov</emphasis></para></listitem>
+<listitem><para>Gimp-Print, libusb: <emphasis>Alexander E. Patrakov</emphasis></para></listitem>
 
 <listitem><para>fetchmail and wvdial: <emphasis>Paul Campbell</emphasis></para>
Index: pst/scanning/sane/sane-intro.xml
===================================================================
--- pst/scanning/sane/sane-intro.xml	(revision 5a3b2adde8ec55f262483e2184468c7d4e99b824)
+++ pst/scanning/sane/sane-intro.xml	(revision bdf5806e71b4b8e61f709d88a58ed03d40063bf8)
@@ -33,5 +33,5 @@
 <sect3><title><application><acronym>SANE</acronym></application> dependencies</title>
 <sect4><title>Optional</title>
-<para><ulink url="http://libusb.sourceforge.net/">libusb</ulink>,
+<para><xref linkend="libusb"/>,
 <ulink url="http://cyberelk.net/tim/libieee1284/">libieee1284</ulink>,
 <ulink url="http://www.gphoto.org/">gPhoto2</ulink>,
