source: pst/scanning/sane.xml@ 3ff1723

10.0 10.1 11.0 9.0 9.1 ken/refactor-virt lazarus qt5new trunk xry111/git-date xry111/git-date-for-trunk xry111/git-date-test
Last change on this file since 3ff1723 was 3ff1723, checked in by Bruce Dubbs <bdubbs@…>, 2 years ago

Update to cups-filters-1.25.2.
Various tags.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@22017 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 20.1 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY sane-be-download-http "http://fossies.org/linux/misc/sane-backends-&sane-version;.tar.gz">
8 <!ENTITY sane-be-download-ftp " ">
9 <!ENTITY sane-be-md5sum "b10a08785f92a4c07ad961f4d843c934">
10 <!ENTITY sane-be-size "8.2 MB">
11 <!ENTITY sane-be-buildsize "118 MB (with tests)">
12 <!ENTITY sane-be-time "1.0 SBU (with tests)">
13
14 <!ENTITY sane-fe-download-http "&sources-anduin-http;/sane-frontends/sane-frontends-&sane-fe-version;.tar.gz">
15 <!ENTITY sane-fe-download-ftp " ">
16 <!ENTITY sane-fe-md5sum "c63bf7b0bb5f530cf3c08715db721cd3">
17 <!ENTITY sane-fe-size "231 KB">
18 <!ENTITY sane-fe-buildsize "3.0 MB">
19 <!ENTITY sane-fe-time "less than 0.1 SBU">
20]>
21
22<sect1 id="sane" xreflabel="SANE-&sane-version;">
23 <?dbhtml filename="sane.html"?>
24
25 <sect1info>
26 <othername>$LastChangedBy$</othername>
27 <date>$Date$</date>
28 </sect1info>
29
30 <title>SANE-&sane-version;</title>
31
32 <indexterm zone="sane">
33 <primary sortas="a-SANE">SANE</primary>
34 </indexterm>
35
36 <sect2 role="package">
37 <title>Introduction to SANE</title>
38
39 <para><application>SANE</application> is short for Scanner Access Now Easy.
40 Scanner access, however, is far from easy, since every vendor has their own
41 protocols. The only known protocol that should bring some unity into this
42 chaos is the TWAIN interface, but this is too imprecise to allow a stable
43 scanning framework. Therefore, <application>SANE</application> comes with
44 its own protocol, and the vendor drivers can't be used.</para>
45
46 <para><application>SANE</application> is split into back ends and front
47 ends. The back ends are drivers for the supported scanners and cameras. The
48 front ends are user interfaces to access the backends.</para>
49
50 &lfs90_checked;
51
52 <bridgehead renderas="sect3">Back Ends Package Information</bridgehead>
53 <itemizedlist spacing='compact'>
54 <listitem>
55 <para>Download (HTTP): <ulink url="&sane-be-download-http;"/></para>
56 </listitem>
57 <listitem>
58 <para>Download (FTP): <ulink url="&sane-be-download-ftp;"/></para>
59 </listitem>
60 <listitem>
61 <para>Download MD5 sum: &sane-be-md5sum;</para>
62 </listitem>
63 <listitem>
64 <para>Download size: &sane-be-size;</para>
65 </listitem>
66 <listitem>
67 <para>Estimated disk space required: &sane-be-buildsize;</para>
68 </listitem>
69 <listitem>
70 <para>Estimated build time: &sane-be-time;</para>
71 </listitem>
72 </itemizedlist>
73
74 <bridgehead renderas="sect3">Additional Downloads (Front Ends)</bridgehead>
75 <itemizedlist spacing='compact'>
76 <listitem>
77 <para>Download (HTTP): <ulink url="&sane-fe-download-http;"/></para>
78 </listitem>
79 <listitem>
80 <para>Download (FTP): <ulink url="&sane-fe-download-ftp;"/></para>
81 </listitem>
82 <listitem>
83 <para>Downlaod MD5 sum: &sane-fe-md5sum;</para>
84 </listitem>
85 <listitem>
86 <para>Download size: &sane-fe-size;</para>
87 </listitem>
88 <listitem>
89 <para>Estimated disk space required: &sane-fe-buildsize;</para>
90 </listitem>
91 <listitem>
92 <para>Estimated build time: &sane-fe-time;</para>
93 </listitem>
94 </itemizedlist>
95
96 <bridgehead renderas="sect3">SANE Dependencies</bridgehead>
97
98 <bridgehead renderas="sect4">Optional (Back Ends)</bridgehead>
99 <para role="optional">
100 <xref linkend="avahi"/>,
101 <xref linkend="cups"/>,
102 <xref linkend="libjpeg"/>,
103 <xref linkend="libtiff"/>,
104 <xref linkend="libusb"/>,
105 <xref linkend="v4l-utils"/>,
106 <ulink url="http://www.net-snmp.org/">Net-SNMP</ulink>,
107 <ulink url="http://cyberelk.net/tim/libieee1284/">libieee1284</ulink>,
108 <ulink url="http://www.gphoto.org/">libgphoto2</ulink>, and
109 <xref linkend="texlive"/> (or <xref linkend="tl-installer"/>)
110 </para>
111
112 <bridgehead renderas="sect4">Optional (Front Ends)</bridgehead>
113 <para role="optional">
114 <xref linkend="x-window-system"/>,
115 <xref linkend="gtk2"/>, and
116 <xref linkend="gimp"/>
117 </para>
118
119 <para condition="html" role="usernotes">User Notes:
120 <ulink url="&blfs-wiki;/sane"/></para>
121
122 </sect2>
123
124 <sect2 role="kernel" id='sane-kernel'>
125 <title>Kernel Configuration, Drivers and Additional Packages</title>
126
127 <indexterm zone="sane sane-kernel">
128 <primary sortas="d-Scanning-devices">Scanning devices</primary>
129 </indexterm>
130
131 <para>To access your scanner, you will probably need the related kernel
132 drivers and/or additional support packages. A SCSI scanner will need SCSI
133 drivers, a parallel port scanner needs parallel port support (you should
134 use enhanced EPP modes) and perhaps <ulink
135 url="http://cyberelk.net/tim/libieee1284/">libieee1284</ulink>, and a USB
136 scanner will need the <xref linkend="libusb"/> package. For HP devices, you
137 may need <ulink
138 url="http://sourceforge.net/projects/hplip/files/hplip/">hplip</ulink>.
139 Ensure you have the necessary drivers properly configured to access
140 the devices.</para>
141
142 </sect2>
143
144 <sect2 role="installation">
145 <title>Installation of SANE</title>
146
147 <sect3>
148 <title>Installation of SANE Back Ends</title>
149
150 <para>The <application>SANE</application> daemon should run with its own
151 group. Create this group by issuing the following commands as the
152 <systemitem class="username">root</systemitem> user:</para>
153
154<screen role="root"><userinput>groupadd -g 70 scanner</userinput></screen>
155
156<!-- The following seems to be obsolete: I've built sane several times
157 as user pierre without adding it to the scanner group
158 <note>
159 <para>
160 The user building <application>SANE</application>-backends should be
161 a member of the <systemitem class="groupname">scanner</systemitem>
162 group before proceeding. After you have added the user building the
163 package to the <systemitem class="groupname">scanner</systemitem>
164 group, issue the following command to create a new shell:
165 </para>
166
167<screen><userinput>su $(whoami)</userinput></screen>
168
169 <para>
170 Check the output of the <userinput>groups</userinput> command and
171 ensure the user is a member of the
172 <systemitem class="groupname">scanner</systemitem> group.
173 </para>
174 </note>
175-->
176 <para>For a USB scanner, if you are linking to <xref linkend="libusb"/>,
177 include the configure switch --enable-libusb_1_0. Install
178 <application>SANE</application>-backends by running the following
179 commands:</para>
180
181<screen><userinput>./configure --prefix=/usr \
182 --sysconfdir=/etc \
183 --localstatedir=/var \
184 --with-group=scanner \
185 --with-docdir=/usr/share/doc/sane-backends-&sane-version; &amp;&amp;
186make</userinput></screen>
187
188 <para>To test the results, issue: <command>make check</command>.</para>
189
190 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
191
192<screen role="root"><userinput>make install &amp;&amp;
193install -m 644 -v tools/udev/libsane.rules \
194 /etc/udev/rules.d/65-scanner.rules &amp;&amp;
195chgrp -v scanner /var/lock/sane</userinput></screen>
196
197 <para>With the scanner on, run <command>scanimage -L</command> and the
198 name and location of the device should appear. Of course, you need the
199 device drivers configured, in order to run this test.</para>
200
201 </sect3>
202
203 <sect3>
204 <title>Installation of SANE Front Ends</title>
205
206 <para>The <application>SANE</application>-frontends package
207 includes the graphical frontends <command>xscanimage</command> and
208 <command>xcam</command>, and a command-line frontend
209 <command>scanadf</command>. You don't need this package if you intend
210 to use one of the more advanced graphical frontends like
211 <xref linkend="xsane"/>. For a list of frontend packages, see
212 <ulink url="http://www.sane-project.org/sane-frontends.html"/>.</para>
213
214 <para>To install <application>SANE</application>-frontends,
215 use the following commands:</para>
216
217<screen><userinput>tar -xf ../sane-frontends-&sane-fe-version;.tar.gz &amp;&amp;
218cd sane-frontends-&sane-fe-version; &amp;&amp;
219
220sed -i -e "/SANE_CAP_ALWAYS_SETTABLE/d" src/gtkglue.c &amp;&amp;
221./configure --prefix=/usr --mandir=/usr/share/man &amp;&amp;
222make</userinput></screen>
223
224 <para>This package does not come with a test suite.</para>
225
226 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
227
228<screen role="root"><userinput>make install &amp;&amp;
229install -v -m644 doc/sane.png xscanimage-icon-48x48-2.png \
230 /usr/share/sane</userinput></screen>
231
232 <para>If <application>GIMP</application> was linked into the build and
233 you wish <application>GIMP</application> to use
234 <command>xscanimage</command> as a scanning plugin, issue the following
235 command as the <systemitem class="username">root</systemitem> user:</para>
236
237<screen role="root"><userinput>ln -v -s ../../../../bin/xscanimage /usr/lib/gimp/2.0/plug-ins</userinput></screen>
238
239 <note>
240 <para>
241 If the plugin <command>xscanimage</command> is disabled in
242 <application>GIMP</application>'s menu, in order to enable it,
243 "create" a blank image using the menu or Ctrl-N. After that, it is
244 enabled.
245 </para>
246 </note>
247
248 </sect3>
249
250 </sect2>
251
252 <sect2 role="commands">
253 <title>Command Explanations</title>
254
255 <para><parameter>--sysconfdir=/etc</parameter>: This switch installs the
256 configuration files in <filename class="directory">/etc/sane.d</filename>
257 instead of <filename class="directory">/usr/etc/sane.d</filename>.</para>
258
259 <para><parameter>--with-group=scanner</parameter>: This parameter causes
260 the directory created for the locking files to be group owned by the
261 <systemitem class="groupname">scanner</systemitem> group instead of the
262 default <systemitem class="groupname">uucp</systemitem> group.</para>
263
264 <para><command>exit</command>: This command is used to exit the shell
265 created by the <command>su</command> command.</para>
266 </sect2>
267
268 <sect2 role="configuration">
269 <title>Configuring SANE</title>
270
271 <sect3 id="sane-config">
272 <title>Config Files</title>
273
274 <para><filename>/etc/sane.d/*.conf</filename></para>
275
276 <indexterm zone="sane sane-config">
277 <primary sortas="e-etc-sane.d-conf">/etc/sane.d/*.conf</primary>
278 </indexterm>
279
280 </sect3>
281
282 <sect3>
283 <title>Configuration Information</title>
284
285 <sect4>
286 <title>Backend Configuration</title>
287
288 <para>The backend configuration files are located in
289 <filename class='directory'>/etc/sane.d</filename>. Information
290 for configuring the various backends can be found by using the man(5)
291 page for the desired backend. Run
292 <command>man sane-<replaceable>&lt;backend&gt;</replaceable></command>,
293 substituting the desired backend.</para>
294
295 <para>Add any desired users to the <systemitem
296 class="groupname">scanner</systemitem> group.</para>
297
298 <para>If you want to access a network scanner, include two lines in
299 <filename>net.conf</filename>, as <systemitem class="username">root</systemitem> user
300 (make sure to replace &lt;server_ip&gt; by the actual value, below):</para>
301
302<screen role="root"><userinput>cat &gt;&gt; /etc/sane.d/net.conf &lt;&lt; "EOF"
303<literal>connect_timeout = 60
304&lt;server_ip&gt;</literal>
305EOF</userinput></screen>
306
307 <para>On the server side, include the client ip in the access list of
308 <filename>/etc/sane.d/saned.conf</filename>, restart the
309 <command>saned</command> daemon, and make sure the firewall, if any, is
310 open to the client.</para>
311
312 </sect4>
313
314 <sect4>
315 <title>Frontend Configuration</title>
316 <para>
317 If you use a desktop environment like <application>Gnome</application>
318 or <application>KDE</application> you may wish to create a
319 <filename>xscanimage.desktop</filename> file so that
320 <application>xscanimage</application> appears in the panel's menus.
321 As the <systemitem class="username">root</systemitem> user:
322 </para>
323
324<screen role="root"><userinput>mkdir -pv /usr/share/{applications,pixmaps} &amp;&amp;
325
326cat &gt; /usr/share/applications/xscanimage.desktop &lt;&lt; "EOF" &amp;&amp;
327<literal>[Desktop Entry]
328Encoding=UTF-8
329Name=XScanImage - Scanning
330Comment=Acquire images from a scanner
331Exec=xscanimage
332Icon=xscanimage
333Terminal=false
334Type=Application
335Categories=Application;Graphics</literal>
336EOF
337
338ln -svf ../sane/xscanimage-icon-48x48-2.png /usr/share/pixmaps/xscanimage.png</userinput></screen>
339
340 </sect4>
341
342 <sect4>
343 <title>General Information</title>
344
345 <para>For general information about configuring and using
346 <application>SANE</application>, see <command>man sane</command>.
347 Linux-2.6.x brings some special issues into the picture. See
348 <ulink url="http://www.sane-project.org/README.linux"/> for
349 information about using <application>SANE</application> with the
350 Linux-2.6.x kernel. For information about USB scanning devices,
351 run <command>man sane-usb</command>. For information about SCSI
352 devices, run <command>man sane-scsi</command>.</para>
353
354 </sect4>
355
356 <sect4>
357 <title>Configuration and setup of the 'saned' daemon</title>
358
359 <para>The <command>saned</command> daemon is not meant to be used for
360 untrusted clients. You should provide <xref linkend="fw-firewall"/>
361 protection to ensure only trusted
362 clients access the daemon. Due to the complex security requirements to
363 ensure only trusted clients access the daemon, BLFS does not provide
364 instructions to configure the <command>saned</command> daemon. If you
365 desire to make the daemon available, ensure you provide adequate
366 security, configure your <filename>[x]inetd.conf</filename> file and
367 send a <userinput>SIGHUP</userinput> to the [x]inetd daemon. Some good
368 information for setting up and securing the <command>saned</command>
369 daemon can be found at
370 <ulink url="http://penguin-breeder.org/sane/saned/"/>.</para>
371
372 </sect4>
373
374 </sect3>
375
376 </sect2>
377
378 <sect2 role="content">
379 <title>Contents</title>
380
381 <bridgehead renderas="sect4">Back Ends:</bridgehead>
382 <segmentedlist>
383 <segtitle>Installed Programs</segtitle>
384 <segtitle>Installed Libraries</segtitle>
385 <segtitle>Installed Directories</segtitle>
386
387 <seglistitem>
388 <seg>gamma4scanimage, sane-config, saned, sane-find-scanner,
389 and scanimage</seg>
390 <seg>libsane.so and numerous scanner backend modules</seg>
391 <seg>/etc/sane.d, /usr/{include,lib,share}/sane,
392 and /usr/share/doc/sane-&sane-version;</seg>
393 </seglistitem>
394 </segmentedlist>
395
396 <bridgehead renderas="sect4">Front Ends:</bridgehead>
397 <segmentedlist>
398 <segtitle>Installed Programs</segtitle>
399 <segtitle>Installed Library</segtitle>
400 <segtitle>Installed Directories</segtitle>
401
402 <seglistitem>
403 <seg>scanadf, xcam, and xscanimage</seg>
404 <seg><application>GIMP</application> plugin embedded in
405 <command>xscanimage</command></seg>
406 <seg>None</seg>
407 </seglistitem>
408 </segmentedlist>
409
410 <variablelist>
411 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
412 <?dbfo list-presentation="list"?>
413 <?dbhtml list-presentation="table"?>
414
415 <varlistentry id="gamma4scanimage">
416 <term><command>gamma4scanimage</command></term>
417 <listitem>
418 <para>creates a gamma table in the format expected by
419 <command>scanimage</command>.</para>
420 <indexterm zone="sane gamma4scanimage">
421 <primary sortas="b-gamma4scanimage">gamma4scanimage</primary>
422 </indexterm>
423 </listitem>
424 </varlistentry>
425
426 <varlistentry id="sane-config-prog">
427 <term><command>sane-config</command></term>
428 <listitem>
429 <para>is a tool used to determine the compiler and linker
430 flags that should be used to compile and link
431 <application>SANE</application>.</para>
432 <indexterm zone="sane sane-config-prog">
433 <primary sortas="b-sane-config">sane-config</primary>
434 </indexterm>
435 </listitem>
436 </varlistentry>
437
438 <varlistentry id="saned">
439 <term><command>saned</command></term>
440 <listitem>
441 <para>is the <application>SANE</application> daemon that
442 allows remote clients to access image acquisition devices
443 available on the local host.</para>
444 <indexterm zone="sane saned">
445 <primary sortas="b-saned">saned</primary>
446 </indexterm>
447 </listitem>
448 </varlistentry>
449
450 <varlistentry id="sane-find-scanner">
451 <term><command>sane-find-scanner</command></term>
452 <listitem>
453 <para>is a command-line tool to find SCSI and
454 USB scanners and determine their device files. Its primary
455 purpose is to make sure that scanners can be detected by
456 <application>SANE</application> backends.</para>
457 <indexterm zone="sane sane-find-scanner">
458 <primary sortas="b-sane-find-scanner">sane-find-scanner</primary>
459 </indexterm>
460 </listitem>
461 </varlistentry>
462
463 <varlistentry id="scanadf">
464 <term><command>scanadf</command></term>
465 <listitem>
466 <para>is a command-line interface to control image acquisition
467 devices which are equipped with an automatic document feeder
468 (ADF).</para>
469 <indexterm zone="sane scanadf">
470 <primary sortas="b-scanadf">scanadf</primary>
471 </indexterm>
472 </listitem>
473 </varlistentry>
474
475 <varlistentry id="scanimage">
476 <term><command>scanimage</command></term>
477 <listitem>
478 <para>is a command line interface for scanning from image acquisition
479 devices such as flatbed scanners or cameras. It is also used to list
480 the available backend devices.</para>
481 <indexterm zone="sane scanimage">
482 <primary sortas="b-scanimage">scanimage</primary>
483 </indexterm>
484 </listitem>
485 </varlistentry>
486
487 <varlistentry id="xcam">
488 <term><command>xcam</command></term>
489 <listitem>
490 <para>is a graphical camera front end for
491 <application>SANE</application>.</para>
492 <indexterm zone="sane xcam">
493 <primary sortas="b-xcam">xcam</primary>
494 </indexterm>
495 </listitem>
496 </varlistentry>
497
498 <varlistentry id="xscanimage">
499 <term><command>xscanimage</command></term>
500 <listitem>
501 <para>is a graphical user interface for scanning.</para>
502 <indexterm zone="sane xscanimage">
503 <primary sortas="b-xscanimage">xscanimage</primary>
504 </indexterm>
505 </listitem>
506 </varlistentry>
507
508 <varlistentry id="libsane">
509 <term><filename class='libraryfile'>libsane.so</filename></term>
510 <listitem>
511 <para>is the application programming interface that is used to
512 communicate between frontends and backends.</para>
513 <indexterm zone="sane libsane">
514 <primary sortas="c-libsane">libsane.so</primary>
515 </indexterm>
516 </listitem>
517 </varlistentry>
518
519 <varlistentry id="libsane-module">
520 <term><filename class='libraryfile'>libsane-*.so</filename></term>
521 <listitem>
522 <para>modules are backend scanning library plugins used to interface
523 with scanning devices. See
524 <ulink url="http://www.sane-project.org/sane-supported-devices.html"/>
525 for a list of supported backends.</para>
526 <indexterm zone="sane libsane-module">
527 <primary sortas="c-libsane-module">libsane-*.so</primary>
528 </indexterm>
529 </listitem>
530 </varlistentry>
531
532 </variablelist>
533
534 </sect2>
535
536</sect1>
Note: See TracBrowser for help on using the repository browser.