Iscan software
Benvenuti nella pagina Wiki di Simone Giustetti.
Lingue: English - Italiano
Iscan è la forma abbreviata per Image Scan un programma per l'acquisizione di immagini attraverso scanner che gira sotto Linux. È prodotto da Avasys Corporation e consente di ottenere immagini di buona qualità con scanner o stampanti multifunzione Epson. Molti modelli di scanner Epson possono essere utilizzati con Linux solo attraverso Iscan ed i relativi driver proprietari forniti sempre da Avasys.
L'installazione del prodotto su distribuzioni diverse da quelle supportate ufficialmente, Fedora e Debian, è sempre stata un'avventura. Forse perchè i pacchetti sono forniti gratuitamente, ma non supportati ed in caso di problemi l'utenza è lasciata alle proprie capacità di troubleshooting. Nel corso del presente articolo verrà illustrato come installare e configurare la versione 2.11 di Image Scan su Slackware. Tale versione, sebbene un pò datata, gira egregiamente su qualsiasi versione a 32 bit di Slackware, comprese le più recenti. In un futuro articolo verrà descritta invece l'installazione della versione 2.25 di Image Scan, che meglio si adatta ad essere installata su Slackware 13.0 e 13.1 in quanto è stato introdotto il supporto alle architetture a 64 bit.
I test di funzionamento su cui si basa l'articolo sono stati condotti utilizzando uno scanner Epson "Perfection v200 Photo".
Nel seguito dell'articolo si presuppone che sulla macchina siano installati e girino correttamente i pacchetti sane e xsane.
Iscan versione 2.11 e precendenti
Le versioni 2.11, 2.8 e precedenti di Image Scan sono costituite dai seguenti 3 componenti separati:
- Il programma di scansione Iscan.
- I firmware per gli scanner supportati.
- I driver proprietari, ossia le librerie in grado di pilotare l'apparato una volta caricato il firmware.
Gli ultimi 2 componenti sono forniti da Avasys solo in forma binaria e soltanto per architetture a 32 bit. Chi volesse utilizzare il programma con architetture a 64 bit necessita pertanto di una versione più recente come la 2.25 che verrà illustrata nel corso di un futuro articolo.
Non esistono pacchetti di Iscan precompilati per Slackware Linux, ma chi volesse utilizzare comunque uno scanner Epson con tale distribuzione può eseguire la compilazione sfruttando appositi script forniti dal sito www.slackbuilds.org: Script per Iscan e componenti
Scaricati gli script sarà necessario eseguire i passi dettagliati di seguito:
- Compilazione del software.
- Conversione dell'archivio rpm contenete i firmware in un pacchetto tgz.
- Conversione dell'archivio rpm contenete i driver proprietari in un pacchetto tgz.
- Configurazione degli appositi file.
Compilazione del software
Si supponga di aver scaricato il pacchetto iscan.tar.gz dal sito www.slackbuilds.org e di averlo spostato nella directory /tmp. Si apra una shell con privilegi di root e si proceda a decomprimere l'archivio mediante i comandi:
root@darkstar04:/root# cd /tmp root@darkstar04:/tmp# tar -zxf iscan.tar.gz
Verrà creata una directory "iscan". Dopo essersi spostati nella directory creata se ne elenchi il contenuto:
root@darkstar04:/tmp# cd iscan root@darkstar04:/tmp/iscan# ls -la total 11 drwxr-xr-x 2 1000 users 1024 2008-07-29 01:39 . drwxrwxrwt 13 root root 1024 2010-07-19 19:28 .. -rw-r--r-- 1 1000 users 580 2008-07-30 03:59 README -rw-r--r-- 1 1000 users 114 2008-07-30 03:59 doinst.sh -rwxr-xr-x 1 1000 users 3297 2008-07-30 03:59 iscan.SlackBuild -rw-r--r-- 1 1000 users 221 2008-07-30 03:59 iscan.desktop -rw-r--r-- 1 1000 users 279 2008-07-30 03:59 iscan.info -rw-r--r-- 1 1000 users 753 2008-07-30 03:59 slack-desc
Il file iscan.info contiene l'indirizzo url da cui scaricare il codice sorgente del programma ed un checksum, il parametro MD5SUM, attraverso cui sarà possibile verificare l'integrità dell'archivio.
Si consiglia la lettura del file README prima di procedere. In esso sono contenute alcune istruzioni che verranno poi impiegate per eseguire la configurazione dello scanner.
Si proceda scaricando il file contenente il codice sorgente nella directory /tmp/iscan e se ne verifichi la consistenza:
root@darkstar04:/tmp/iscan# md5sum iscan_2.11.0-1.tar.gz 76991cb47dc8ff1269e47d4bce3d41b5 iscan_2.11.0-1.tar.gz
Se il checksum prodotto non coincidesse con quello riportato nel file iscan.info, l'archivio scaricato è probabilmente corrotto e sarà necessario procurarsene una nuova versione; magari facendo ricorso ad un mirror.
Supponiamo che il controllo sia stato superato con successo. È necessario verificare che i parametri impostati nel file iscan.SlackBuild siano congruenti con l'archivio. Si apra il file con un editor di testo e si verifichi che il parametro VERSION riporti la versione del software scaricata. Le variabili ad inizio script dovrebbero essere impostate come segue:
PRGNAM=iscan VERSION=2.11.0 ARCH=${ARCH:-i486} BUILD=${BUILD:-1} TAG=${TAG:-_SBo}
È possibile ora procedere con la compilazione del pacchetto tgz di installazione lanciando i comandi:
root@darkstar04:/tmp/iscan# chmod a+rx iscan.SlackBuild root@darkstar04:/tmp/iscan# ./iscan.SlackBuild
Ove il primo comando assegna i permessi di esecuzione allo script, mentre il secondo lo esegue. In automatico lo script di shell provvederà ad eseguire tutti i passi necessari alla creazione del pacchetto che potrà essere prelevato nella directory /tmp a procedura ultimata. Per installare il pacchetto, sempre con privilegi di root, si eseguiranno i comandi:
root@darkstar04:/tmp/iscan# cd /tmp root@darkstar04:/tmp# installpkg iscan-2.11.0-i486-1_SBo.tgz
Conversione dell'archivio rpm contenete i firmware
Come anticipato in precedenza, il software Image Scan è disponibile per Linux sotto licenza Gpl, ma i firmware ed i driver per gli scanner no. Il codice sorgente non è disponibile e ciò implica che non sia possibile compilare detti componenti. L'unica soluzione in questi casi consiste nel convertire i pacchetti forniti dal produttore ed inclusi nel repository di un'altra distribuzione. Nel caso in oggetto si andrà ad utilizzare i pacchetti presenti nel repository di Suse che raggruppano in un comodo archivio i binari scaricabili dal sito di Avasys. Opportuni script di conversione sono reperibili presso il sito www.slackbuilds.org.
Si supponga di aver scaricato il file iscan-firmware.tar.gz da www.slackbuilds.org nella directory /tmp come in precedenza. Si avvii una shell come utente root e si decomprima l'archivio con i comandi:
root@darkstar04:/root# cd /tmp root@darkstar04:/tmp# tar -zxf iscan-firmware.tar.gz
Ci si sposti nella directory iscan-firmware appena creata e ne si elenchi il contenuto:
root@darkstar04:/tmp/# cd iscan-firmware root@darkstar04:/tmp/iscan-firmware# ls -la total 11 drwxr-xr-x 2 1000 users 1024 2008-05-01 22:39 . drwxrwxrwt 13 root root 1024 2010-07-19 23:21 .. -rw-r--r-- 1 1000 users 292 2008-03-29 00:59 README -rw-r--r-- 1 1000 users 1062 2008-03-29 00:59 README.Slackware -rw-r--r-- 1 1000 users 187 2008-03-29 00:59 doinst.sh -rwxr-xr-x 1 1000 users 2301 2008-03-29 00:59 iscan-firmware.SlackBuild -rw-r--r-- 1 1000 users 339 2008-05-01 22:39 iscan-firmware.info -rw-r--r-- 1 1000 users 946 2008-03-29 00:59 slack-desc
Come per il pacchetto iscan, anche in questo caso il file con estensione *.info, iscan-firmware.info, conterrà l'indirizzo del repository Suse da cui scaricare i pacchetti ed un checksum con cui controllare la validità di tali archivi. Prima di procedere oltre è consigliata la lettura dei file README e README.Slackware che contengono informazioni inerenti la configurazione del software.
Dopo aver scaricato il file iscan-firmware-2.8.0.1-11.noarch.rpm nella directory /tmp/iscan-firmware si verifichi la bontà dello stesso e si proceda alla creazione del pacchetto per Slackware:
root@darkstar04:/tmp/iscan-firmware# md5sum iscan-firmware-2.8.0.1-11.noarch.rpm a6df3bdd35b12cd784b4439fb0b6524c iscan-firmware-2.8.0.1-11.noarch.rpm
Supponendo che il valore coincida con quello riportato nel file iscan-firmware.info si controlli che i parametri in testa al file iscan-firmware.SlackBuild riportino i seguenti valori:
PRGNAM=iscan-firmware VERSION=2.8.0.1 RPMBUILD=11 # <-- This is the build number used by OpenSuSE in their RPM ARCH=${ARCH:-noarch} BUILD=${BUILD:-2} TAG=${TAG:-_SBo} CWD=$(pwd) TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp}
E si proceda a convertire il pacchetto.
root@darkstar04:/tmp/iscan-firmware# chmod a+rx iscan-firmware.SlackBuild root@darkstar04:/tmp/iscan-firmware# ./iscan-firmware.SlackBuild
Il file verrà prodotto in autonomia dallo script nella directroy /tmp e potrà essere installato eseguendo i comandi:
root@darkstar04:/tmp/iscan-firmware# cd root@darkstar04:/tmp/iscan-firmware# installpkg iscan-firmware-2.8.0.1-noarch-2_SBo.tgz
Conversione dell'archivio rpm contenete i driver proprietari
Siamo giunti all'installazione dell'ultimo componente necessario per utilizzare lo scanner con Linux. Come i firmware anche i driver proprietari sono distribuiti da Avasys Corporation solo in forma binaria e devono pertanto essere estratti da un file rpm. Come nel caso del firmware utilizzeremo come base di partenza i pacchetti per Suse seguendo la procedura sviscerata in precedenza. Si avvii una shell con privilegi di amministratore quindi si eseguano i comandi:
root@darkstar04:/root# cd /tmp root@darkstar04:/root# tar -zxf iscan-proprietary-drivers.tar.gz root@darkstar04:/tmp# cd iscan-proprietary-drivers root@darkstar04:/tmp/iscan-proprietary-drivers# ls -la total 9 drwxr-xr-x 2 root root 1024 2008-08-19 23:22 . drwxrwxrwt 13 root root 1024 2010-07-20 00:14 .. -rw-r--r-- 1 root root 1630 2008-08-19 10:52 README -rw-r--r-- 1 root root 0 2008-08-19 22:55 doinst.sh -rwxr-xr-x 1 root root 2339 2008-08-19 11:36 iscan-proprietary-drivers.SlackBuild -rw-r--r-- 1 root root 354 2008-08-19 23:03 iscan-proprietary-drivers.info -rw-r--r-- 1 root root 951 2008-08-19 23:13 slack-desc
Si esegua una verifica dell'archivio e si controlli che i valori assegnati ai parametri in testa allo script iscan-proprietary-drivers.SlackBuild siano consistenti:
root@darkstar04:/tmp/iscan-proprietary-drivers# md5sum iscan-proprietary-drivers-2.8.0.1-11.i586.rpm 2a87f33b1838ae5baa1652d1ac5d9bfc iscan-proprietary-drivers-2.8.0.1-11.i586.rpm
PRGNAM=iscan-proprietary-drivers VERSION=2.8.0.1 RPMBUILD=11 # <-- This is the build number used by OpenSuSE in their RPM ARCH=${ARCH:-noarch} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} CWD=$(pwd) TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp}
Infine si lanci lo script e si installi il pacchetto ottenuto:
root@darkstar04:/tmp/iscan-proprietary-drivers# chmod a+rx iscan-proprietary-drivers.SlackBuild root@darkstar04:/tmp/iscan-proprietary-drivers# ./iscan-proprietary-drivers.SlackBuild root@darkstar04:/tmp/iscan-proprietary-drivers# cd /tmp root@darkstar04:/tmp/iscan-proprietary-drivers# installpkg iscan-proprietary-drivers-2.8.0.1-noarch-1_SBo.tgz
Configurazione
Terminata l'installazione dei pacchetti è necessario modificare alcuni file correlati al pacchetto Sane (Scanner Access Made Easy) attraverso cui vengono gestiti gli scanner in Linux. I file da modificare si trovano nella directory /etc/sane.d e sono:
- /etc/sane.d/dll.conf
- /etc/sane.d/epkowa.conf
- /etc/sane.d/snapscan.conf
Se non fosse già presente, è necessario aggiungere una riga al file /etc/sane.d/dll.conf. La riga conterrà una singola parola: "epkowa" ossia il nome del back-end necessario a Sane per comunicare con lo scanner collegato attraverso la porta Usb.
Nel file /etc/sane.d/epkowa.conf si specifica se lo scanner sia collegato tramite porta Usb oppure Scsi. Di seguito è riportata la configurazione per lo scanner Epson "Perfection v200 Photo" collegato attraverso la porta Usb:
# epkowa.conf -- sample configuration for the EPKOWA SANE backend # Copyright (C) 2004 Olaf Meeuwissen # # See sane-epkowa(5), sane-scsi(5) and sane-usb(5) for details. # # SCSI scanners can be configured simply by listing the path to the # device. For example, if your system claims to have a /dev/scanner # SCSI device, all you have to do is uncomment the following line: # #/dev/scanner # # In the interest of maintainability, most installations would have # /dev/scanner sym-linked to the real SCSI scanner device node. # # An alternative way that works for many operating systems and is a # little bit more generic, is to have the backend probe for your SCSI # scanner with the following configuration command: # #scsi EPSON # # On systems with libusb, the following line is sufficient to get the # backend to recognise your USB scanners. It presumes, however, that # the scanner---more precisely, it's USB product ID---is known to the # backend. # For all USB scanners that are officially supported by this backend, # this presumption is true. A list of such scanners can be found in # sane-epkowa(5). # usb # # For any USB scanner not known to the backend (yet), you may, at your # own peril(!!), force the backend to recognise and use it via libusb. # You can do so by the following configuration command: # # usb <USB vendor ID> <USB product ID> # # SEIKO EPSON's USB vendor ID is '0x04b8' (without quotes). In order # to find the USB product ID, use lsusb(1) or, on Linux systems, peek # at the information in /proc/bus/usb/devices. # A sample configuration for the Perfection 1650 (GT-8200), which has # a product ID of 0x0110, would look as follows: # #usb 0x04b8 0x0110 # # When not accessing your USB scanner via libusb, you may need to use # one of the configuration commands below or commands that are almost # the same. These commands typically access the scanner via a kernel # scanner module. # #usb /dev/usb/scanner0 #usb /dev/usbscanner0 #usb /dev/uscanner0 # # Linux had a scanner module until version 2.6.2. As of version 2.6.3 # libusb is your only option. Linux' scanner module can be loaded via # the modprobe(8) command like so: # # modprobe scanner vendor=<USB vendor ID> product=<USB product ID> # # If the scanner module already knows the vendor and product IDs, you # do not have to specify them. If you want to have this done automa- # tically every time you boot, you can add the above line, except for # the modprobe command itself, to your /etc/modules file. # # Although not tested with this backend, parallel port scanners should # be usable. You can configure them as shown below, but I do not know # much about the details. Information is welcome. # #pio 0x278 #pio 0x378 #pio 0x3BC
Le opzioni per il back-end dovranno poi essere inserite nel file /etc/sane.d/snapscan.conf. Il file contiene un elenco di scanner corredati del relativo firmware. Dovrà essere rimosso il commento dalla riga contenente il firmware specifico per l'apparato adoperato. È di seguito riportato il contenuto del file configurato per lo scanner Epson "Perfection v200 Photo":
#-------------- EPSON Image Scan! for Linux Scanner-Firmware -------------- # # Perfection 2480/2580 PHOTO (esfw41.bin) #firmware /usr/share/iscan/esfw41.bin # # Perfection 3170 PHOTO (esfw32.bin) #firmware /usr/share/iscan/esfw32.bin # # Perfection 3490/3590 PHOTO (esfw52.bin) #firmware /usr/share/iscan/esfw52.bin # # Perfection 4180 PHOTO (esfw43.bin) #firmware /usr/share/iscan/esfw43.bin # # Perfection 4490 PHOTO (esfw54.bin) #firmware /usr/share/iscan/esfw54.bin # # Perfection V10/V100 PHOTO (esfw66.bin) #firmware /usr/share/iscan/esfw66.bin # # Perfection V350 PHOTO (esfw68.bin) #firmware /usr/share/iscan/esfw68.bin # # Perfection V200 PHOTO (esfw7A.bin) firmware /usr/share/iscan/esfw7A.bin
Avviare il programma
Una volta ultimata la configurazione dei file, sarà possibile lanciare il programma di scansione da riga di comando:
root@darkstar04:/root# iscan
in modo da caricare l'interfaccia grafica. Molti Window Manager, tra cui Kde e Xfce, integrano una icona che consente il lancio del programma dal menù principale. Se supportata l'icona sarà reperibile nel sottomenù Graphics.
Di seguito sono allegate alcune immagini del programma che gira sulla versione a 32 bit di Slackware 13.1.
Conclusione
Nel corso del presente articolo è stato illustrato come installare il software Image Scan per Linux e come configurare Sane ed il suo back-end, epkowa, perchè piloti uno scanner collegato tramite porta Usb. In futuro ci occuperemo di ottenere i medesimi risultati su sistemi a 64 bit facendo ricorso ad una versione aggiornata di Iscan.
Si allega il link al pacchetto Image Scan 2.11 compilato per architettura i486 nella speranza che possa essere utile: Image Scan 2.11. Il firmware ed i driver proprietari sono distribuiti con una licenza diversa dalla GPL pertanto si rimanda al sito di Avasys per effettuare il download.
Per commenti, consigli, domande inviate una e-mail all'indirizzo studiosg [chiocciola] giustetti [punto] net.
Link esterni
- Slackware home page
- Slackbuilds.org
- Suse home page
- Sane home page
- Avasys Corporation
- Avasys Corporation download page
Lingue: English - Italiano