source: pst/scanning/sane.xml@ fa3edfef

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since fa3edfef was fa3edfef, checked in by Pierre Labastie <pieere@…>, 4 years ago

Format pst

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

  • Property mode set to 100644
File size: 20.8 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>
40 <application>SANE</application> is short for Scanner Access Now Easy.
41 Scanner access, however, is far from easy, since every vendor has their
42 own protocols. The only known protocol that should bring some unity into
43 this chaos is the TWAIN interface, but this is too imprecise to allow a
44 stable scanning framework. Therefore, <application>SANE</application>
45 comes with its own protocol, and the vendor drivers can't be used.
46 </para>
47
48 <para>
49 <application>SANE</application> is split into back ends and front ends.
50 The back ends are drivers for the supported scanners and cameras. The
51 front ends are user interfaces to access the backends.
52 </para>
53
54 &lfs91_checked;
55
56 <bridgehead renderas="sect3">Back Ends Package Information</bridgehead>
57 <itemizedlist spacing='compact'>
58 <listitem>
59 <para>
60 Download (HTTP): <ulink url="&sane-be-download-http;"/>
61 </para>
62 </listitem>
63 <listitem>
64 <para>
65 Download (FTP): <ulink url="&sane-be-download-ftp;"/>
66 </para>
67 </listitem>
68 <listitem>
69 <para>
70 Download MD5 sum: &sane-be-md5sum;
71 </para>
72 </listitem>
73 <listitem>
74 <para>
75 Download size: &sane-be-size;
76 </para>
77 </listitem>
78 <listitem>
79 <para>
80 Estimated disk space required: &sane-be-buildsize;
81 </para>
82 </listitem>
83 <listitem>
84 <para>
85 Estimated build time: &sane-be-time;
86 </para>
87 </listitem>
88 </itemizedlist>
89
90 <bridgehead renderas="sect3">Additional Downloads (Front Ends)</bridgehead>
91 <itemizedlist spacing='compact'>
92 <listitem>
93 <para>
94 Download (HTTP): <ulink url="&sane-fe-download-http;"/>
95 </para>
96 </listitem>
97 <listitem>
98 <para>
99 Download (FTP): <ulink url="&sane-fe-download-ftp;"/>
100 </para>
101 </listitem>
102 <listitem>
103 <para>
104 Downlaod MD5 sum: &sane-fe-md5sum;
105 </para>
106 </listitem>
107 <listitem>
108 <para>
109 Download size: &sane-fe-size;
110 </para>
111 </listitem>
112 <listitem>
113 <para>
114 Estimated disk space required: &sane-fe-buildsize;
115 </para>
116 </listitem>
117 <listitem>
118 <para>
119 Estimated build time: &sane-fe-time;
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 <xref linkend="v4l-utils"/>,
134 <ulink url="http://www.net-snmp.org/">Net-SNMP</ulink>,
135 <ulink url="http://cyberelk.net/tim/libieee1284/">libieee1284</ulink>,
136 <ulink url="http://www.gphoto.org/">libgphoto2</ulink>, and
137 <xref linkend="texlive"/> (or <xref linkend="tl-installer"/>)
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, Drivers and Additional Packages</title>
154
155 <indexterm zone="sane sane-kernel">
156 <primary sortas="d-Scanning-devices">Scanning devices</primary>
157 </indexterm>
158
159 <para>
160 To access your scanner, you will probably need the related kernel
161 drivers and/or additional support packages. A SCSI scanner will need SCSI
162 drivers, a parallel port scanner needs parallel port support (you should
163 use enhanced EPP modes) and perhaps <ulink
164 url="http://cyberelk.net/tim/libieee1284/">libieee1284</ulink>, and a USB
165 scanner will need the <xref linkend="libusb"/> package. For HP devices,
166 you may need <ulink
167 url="http://sourceforge.net/projects/hplip/files/hplip/">hplip</ulink>.
168 Ensure you have the necessary drivers properly configured to access
169 the devices.
170 </para>
171
172 </sect2>
173
174 <sect2 role="installation">
175 <title>Installation of SANE</title>
176
177 <sect3>
178 <title>Installation of SANE Back Ends</title>
179
180 <para>
181 The <application>SANE</application> daemon should run with its own
182 group. Create this group by issuing the following commands as the
183 <systemitem class="username">root</systemitem> user:
184 </para>
185
186<screen role="root"><userinput>groupadd -g 70 scanner</userinput></screen>
187
188 <note>
189 <para>
190 <command>configure</command> assumes that the user building
191 <application>SANE</application>-backends is a member of the
192 <systemitem class="groupname">scanner</systemitem> group for testing
193 the existence of this group. So the user building the package should
194 be added to the <systemitem class="groupname">scanner</systemitem>
195 group. As the <systemitem class="username">root</systemitem> user:
196 </para>
197
198<screen role="root"><userinput>usermod -G scanner -a <replaceable>username</replaceable></userinput></screen>
199 </note>
200
201 <para>
202 For a USB scanner, if you are linking to <xref linkend="libusb"/>,
203 include the configure switch --enable-libusb_1_0. Install
204 <application>SANE</application>-backends by running the following
205 commands:
206 </para>
207
208<screen><userinput>sg scanner -c " \
209./configure --prefix=/usr \
210 --sysconfdir=/etc \
211 --localstatedir=/var \
212 --with-group=scanner \
213 --with-docdir=/usr/share/doc/sane-backends-&sane-version;" &amp;&amp;
214make</userinput></screen>
215
216 <para>
217 To test the results, issue: <command>make check</command>.
218 </para>
219
220 <para>
221 Now, as the <systemitem class="username">root</systemitem> user:
222 </para>
223
224<screen role="root"><userinput>make install &amp;&amp;
225install -m 644 -v tools/udev/libsane.rules \
226 /etc/udev/rules.d/65-scanner.rules &amp;&amp;
227chgrp -v scanner /var/lock/sane</userinput></screen>
228
229 <para>
230 With the scanner on, run <command>scanimage -L</command> and the
231 name and location of the device should appear. Of course, you need the
232 device drivers configured, in order to run this test.
233 </para>
234
235 </sect3>
236
237 <sect3>
238 <title>Installation of SANE Front Ends</title>
239
240 <para>
241 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"/>.
248 </para>
249
250 <para>
251 To install <application>SANE</application>-frontends,
252 use the following commands:
253 </para>
254
255<screen><userinput>tar -xf ../sane-frontends-&sane-fe-version;.tar.gz &amp;&amp;
256cd sane-frontends-&sane-fe-version; &amp;&amp;
257
258sed -i -e "/SANE_CAP_ALWAYS_SETTABLE/d" src/gtkglue.c &amp;&amp;
259./configure --prefix=/usr --mandir=/usr/share/man &amp;&amp;
260make</userinput></screen>
261
262 <para>
263 This package does not come with a test suite.
264 </para>
265
266 <para>
267 Now, as the <systemitem class="username">root</systemitem> user:
268 </para>
269
270<screen role="root"><userinput>make install &amp;&amp;
271install -v -m644 doc/sane.png xscanimage-icon-48x48-2.png \
272 /usr/share/sane</userinput></screen>
273
274 <para>
275 If <application>GIMP</application> was linked into the build and
276 you wish <application>GIMP</application> to use
277 <command>xscanimage</command> as a scanning plugin, issue the following
278 command as the <systemitem class="username">root</systemitem> user:
279 </para>
280
281<screen role="root"><userinput>ln -v -s ../../../../bin/xscanimage /usr/lib/gimp/2.0/plug-ins</userinput></screen>
282
283 <note>
284 <para>
285 If the plugin <command>xscanimage</command> is disabled in
286 <application>GIMP</application>'s menu, in order to enable it,
287 "create" a blank image using the menu or Ctrl-N. After that, it is
288 enabled.
289 </para>
290 </note>
291
292 </sect3>
293
294 </sect2>
295
296 <sect2 role="commands">
297 <title>Command Explanations</title>
298
299 <para>
300 <command>sg scanner -c "..."</command>: runs the command between double
301 quotes with principal group <systemitem
302 class="groupname">scanner</systemitem>. This may be needed if the user
303 has been newly added to group scanner, and has not looged out and in.
304 </para>
305
306 <para>
307 <parameter>--sysconfdir=/etc</parameter>: This switch installs the
308 configuration files in <filename class="directory">/etc/sane.d</filename>
309 instead of <filename class="directory">/usr/etc/sane.d</filename>.
310 </para>
311
312 <para>
313 <parameter>--with-group=scanner</parameter>: This parameter causes
314 the directory created for the locking files to be group owned by the
315 <systemitem class="groupname">scanner</systemitem> group instead of the
316 default <systemitem class="groupname">uucp</systemitem> group.
317 </para>
318
319 <para>
320 <command>exit</command>: This command is used to exit the shell
321 created by the <command>su</command> command.
322 </para>
323 </sect2>
324
325 <sect2 role="configuration">
326 <title>Configuring SANE</title>
327
328 <sect3 id="sane-config">
329 <title>Config Files</title>
330
331 <para>
332 <filename>/etc/sane.d/*.conf</filename>
333 </para>
334
335 <indexterm zone="sane sane-config">
336 <primary sortas="e-etc-sane.d-conf">/etc/sane.d/*.conf</primary>
337 </indexterm>
338
339 </sect3>
340
341 <sect3>
342 <title>Configuration Information</title>
343
344 <sect4>
345 <title>Backend Configuration</title>
346
347 <para>
348 The backend configuration files are located in
349 <filename class='directory'>/etc/sane.d</filename>. Information
350 for configuring the various backends can be found by using the man(5)
351 page for the desired backend. Run
352 <command>
353 man sane-<replaceable>&lt;backend&gt;</replaceable></command>,
354 substituting the desired backend.
355 </para>
356
357 <para>
358 Add any desired users to the <systemitem
359 class="groupname">scanner</systemitem> group.
360 </para>
361
362 <para>
363 If you want to access a network scanner, include two lines in
364 <filename>net.conf</filename>, as <systemitem
365 class="username">root</systemitem> user (make sure to replace
366 &lt;server_ip&gt; by the actual value, below):
367 </para>
368
369<screen role="root"><userinput>cat &gt;&gt; /etc/sane.d/net.conf &lt;&lt; "EOF"
370<literal>connect_timeout = 60
371&lt;server_ip&gt;</literal>
372EOF</userinput></screen>
373
374 <para>
375 On the server side, include the client ip in the access list of
376 <filename>/etc/sane.d/saned.conf</filename>, restart the
377 <command>saned</command> daemon, and make sure the firewall, if any,
378 is open to the client.
379 </para>
380
381 </sect4>
382
383 <sect4>
384 <title>Frontend Configuration</title>
385 <para>
386 If you use a desktop environment like <application>Gnome</application>
387 or <application>KDE</application> you may wish to create a
388 <filename>xscanimage.desktop</filename> file so that
389 <application>xscanimage</application> appears in the panel's menus.
390 As the <systemitem class="username">root</systemitem> user:
391 </para>
392
393<screen role="root"><userinput>mkdir -pv /usr/share/{applications,pixmaps} &amp;&amp;
394
395cat &gt; /usr/share/applications/xscanimage.desktop &lt;&lt; "EOF" &amp;&amp;
396<literal>[Desktop Entry]
397Encoding=UTF-8
398Name=XScanImage - Scanning
399Comment=Acquire images from a scanner
400Exec=xscanimage
401Icon=xscanimage
402Terminal=false
403Type=Application
404Categories=Application;Graphics</literal>
405EOF
406
407ln -svf ../sane/xscanimage-icon-48x48-2.png /usr/share/pixmaps/xscanimage.png</userinput></screen>
408
409 </sect4>
410
411 <sect4>
412 <title>General Information</title>
413
414 <para>
415 For general information about configuring and using
416 <application>SANE</application>, see <command>man sane</command>.
417 For information about USB scanning devices,
418 run <command>man sane-usb</command>. For information about SCSI
419 devices, run <command>man sane-scsi</command>.
420 </para>
421
422 </sect4>
423
424 <sect4>
425 <title>Configuration and setup of the 'saned' daemon</title>
426
427 <para>
428 The <command>saned</command> daemon is not meant to be used for
429 untrusted clients. You should provide <xref linkend="fw-firewall"/>
430 protection to ensure only trusted clients access the daemon. Due to
431 the complex security requirements to ensure only trusted clients
432 access the daemon, BLFS does not provide
433 instructions to configure the <command>saned</command> daemon.
434 Some good (but outdated)
435 information for setting up and securing the <command>saned</command>
436 daemon can be found at
437 <ulink url="http://penguin-breeder.org/sane/saned/"/>.
438 </para>
439
440 </sect4>
441
442 </sect3>
443
444 </sect2>
445
446 <sect2 role="content">
447 <title>Contents</title>
448
449 <bridgehead renderas="sect4">Back Ends:</bridgehead>
450 <segmentedlist>
451 <segtitle>Installed Programs</segtitle>
452 <segtitle>Installed Libraries</segtitle>
453 <segtitle>Installed Directories</segtitle>
454
455 <seglistitem>
456 <seg>gamma4scanimage, sane-config, saned, sane-find-scanner,
457 and scanimage</seg>
458 <seg>libsane.so and numerous scanner backend modules</seg>
459 <seg>/etc/sane.d, /usr/{include,lib,share}/sane,
460 and /usr/share/doc/sane-&sane-version;</seg>
461 </seglistitem>
462 </segmentedlist>
463
464 <bridgehead renderas="sect4">Front Ends:</bridgehead>
465 <segmentedlist>
466 <segtitle>Installed Programs</segtitle>
467 <segtitle>Installed Library</segtitle>
468 <segtitle>Installed Directories</segtitle>
469
470 <seglistitem>
471 <seg>scanadf, xcam, and xscanimage</seg>
472 <seg><application>GIMP</application> plugin embedded in
473 <command>xscanimage</command></seg>
474 <seg>None</seg>
475 </seglistitem>
476 </segmentedlist>
477
478 <variablelist>
479 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
480 <?dbfo list-presentation="list"?>
481 <?dbhtml list-presentation="table"?>
482
483 <varlistentry id="gamma4scanimage">
484 <term><command>gamma4scanimage</command></term>
485 <listitem>
486 <para>
487 creates a gamma table in the format expected by
488 <command>scanimage</command>.
489 </para>
490 <indexterm zone="sane gamma4scanimage">
491 <primary sortas="b-gamma4scanimage">gamma4scanimage</primary>
492 </indexterm>
493 </listitem>
494 </varlistentry>
495
496 <varlistentry id="sane-config-prog">
497 <term><command>sane-config</command></term>
498 <listitem>
499 <para>
500 is a tool used to determine the compiler and linker
501 flags that should be used to compile and link
502 <application>SANE</application>.
503 </para>
504 <indexterm zone="sane sane-config-prog">
505 <primary sortas="b-sane-config">sane-config</primary>
506 </indexterm>
507 </listitem>
508 </varlistentry>
509
510 <varlistentry id="saned">
511 <term><command>saned</command></term>
512 <listitem>
513 <para>
514 is the <application>SANE</application> daemon that
515 allows remote clients to access image acquisition devices
516 available on the local host.
517 </para>
518 <indexterm zone="sane saned">
519 <primary sortas="b-saned">saned</primary>
520 </indexterm>
521 </listitem>
522 </varlistentry>
523
524 <varlistentry id="sane-find-scanner">
525 <term><command>sane-find-scanner</command></term>
526 <listitem>
527 <para>
528 is a command-line tool to find SCSI and
529 USB scanners and determine their device files. Its primary
530 purpose is to make sure that scanners can be detected by
531 <application>SANE</application> backends.
532 </para>
533 <indexterm zone="sane sane-find-scanner">
534 <primary sortas="b-sane-find-scanner">sane-find-scanner</primary>
535 </indexterm>
536 </listitem>
537 </varlistentry>
538
539 <varlistentry id="scanadf">
540 <term><command>scanadf</command></term>
541 <listitem>
542 <para>
543 is a command-line interface to control image acquisition
544 devices which are equipped with an automatic document feeder (ADF).
545 </para>
546 <indexterm zone="sane scanadf">
547 <primary sortas="b-scanadf">scanadf</primary>
548 </indexterm>
549 </listitem>
550 </varlistentry>
551
552 <varlistentry id="scanimage">
553 <term><command>scanimage</command></term>
554 <listitem>
555 <para>
556 is a command line interface for scanning from image acquisition
557 devices such as flatbed scanners or cameras. It is also used to
558 list the available backend devices.
559 </para>
560 <indexterm zone="sane scanimage">
561 <primary sortas="b-scanimage">scanimage</primary>
562 </indexterm>
563 </listitem>
564 </varlistentry>
565
566 <varlistentry id="xcam">
567 <term><command>xcam</command></term>
568 <listitem>
569 <para>
570 is a graphical camera front end for
571 <application>SANE</application>.
572 </para>
573 <indexterm zone="sane xcam">
574 <primary sortas="b-xcam">xcam</primary>
575 </indexterm>
576 </listitem>
577 </varlistentry>
578
579 <varlistentry id="xscanimage">
580 <term><command>xscanimage</command></term>
581 <listitem>
582 <para>
583 is a graphical user interface for scanning.
584 </para>
585 <indexterm zone="sane xscanimage">
586 <primary sortas="b-xscanimage">xscanimage</primary>
587 </indexterm>
588 </listitem>
589 </varlistentry>
590
591 <varlistentry id="libsane">
592 <term><filename class='libraryfile'>libsane.so</filename></term>
593 <listitem>
594 <para>
595 is the application programming interface that is used to
596 communicate between frontends and backends.
597 </para>
598 <indexterm zone="sane libsane">
599 <primary sortas="c-libsane">libsane.so</primary>
600 </indexterm>
601 </listitem>
602 </varlistentry>
603
604 <varlistentry id="libsane-module">
605 <term><filename class='libraryfile'>libsane-*.so</filename></term>
606 <listitem>
607 <para>
608 modules are backend scanning library plugins used to interface
609 with scanning devices. See <ulink
610 url="http://www.sane-project.org/sane-supported-devices.html"/>
611 for a list of supported backends.
612 </para>
613 <indexterm zone="sane libsane-module">
614 <primary sortas="c-libsane-module">libsane-*.so</primary>
615 </indexterm>
616 </listitem>
617 </varlistentry>
618
619 </variablelist>
620
621 </sect2>
622
623</sect1>
Note: See TracBrowser for help on using the repository browser.