source: pst/scanning/sane.xml@ 2a2112b4

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 2a2112b4 was 2a2112b4, checked in by Fernando de Oliveira <fernando@…>, 11 years ago

two typos

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

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