====== Installare la stampante laser Samsung ML-3050 su Linux ====== Questo breve tutorial descrive come installare la stampante laser [[http://www.samsung.com/|Samsung]] [[http://www.samsung.com/my/consumer/pc-peripherals-printer/printer-multifunction/mono-laser-printer/ML-3050/XSS/index.idx?pagetype=prd_detail|ML-3050]] su una macchina Linux dotata di [[http://www.cups.org/|CUPS]] (Common Unix Printing System). In alternativa a quanto descritto in questo articolo, potete scegliere di scaricare ed installare i driver ufficiali forniti dal produttore. La stampante è dotata di porta parallela e di porta USB 2.0: mi pare ovvio che sceglieremo la seconda per connettere questa periferica al nostro PC. ===== Far riconoscere la periferica a Linux ===== Linux non dovrebbe avere alcun problema nel riconoscere la periferica, perché tutte le stampanti USB sono gestite dal driver usblp. Esso fa parte della distribuzione vanilla del kernel, perciò dovrebbe essere presente in ogni distribuzione Linux precompilata che si rispetti. Gli utenti Gentoo che devono configurare e compilare((in realtà, possono utilizzare [[http://www.gentoo.org/doc/it/genkernel.xml|Genkernel]] per automatizzare la configurazione del kernel)) il kernel, devono assicurarsi che siano presenti le opzioni appropriate. ===== Far riconoscere la periferica a CUPS ===== La programmazione a basso livello di una stampante si fa scrivendo opportune sequenze di byte nel device file presente nella directory ''/dev''. Il formato di tali sequenze dipende dai "linguaggi" riconosciuti dalla stampante. Molte stampanti contengono un interprete [[wp>PostScript]], quindi sono in grado di stampare file ps. Le applicazioni inviano al demone CUPS lavori contenenti i documenti da stampare. Un job può contenere un'immagine raster o un documento qualsiasi che CUPS è in grado di trasformare in PostScript utilizzando un apposito filtro((nella terminologia di CUPS un filtro è un programma che converte un file da un formato in un altro)). I dati in ingresso sono passati attraverso un complesso sistema di filtri, che li converte nel formato di dati della stampante (con un passaggio intermedio in PostScript oppure immagine raster). La stampante ML-3050 riconosce i linguaggi PCL6, SPL((si tratta di una versione recente del linguaggio chiamata internamente QPDL)), IBM ProPrinter, EPSON, quindi non possiede un interprete [[wp>PostScript]]. CUPS ha bisogno di un filtro per la conversione da PostScript in SPL (ed uno per la conversione da immagine raster) in SPL. Quando vogliamo che CUPS gestisca una stampante, è necessario che ne possieda il relativo file PPD (PostScript Printer Description), contenente le informazioni circa le sue capacità((versione di PostScript supportata, risoluzione, dimensione della pagina, font installati,ecc...)), le sue opzioni, i loro valori di default e le procedure per ottenere i valori correnti o impostarne di nuovi. Il file PPD ed i filtri necessari al funzionamento della stampate ML-3050 sono forniti dal progetto [[http://splix.ap2c.org/|SpliX]]. Su Ubuntu 9.10 (Karmic Koala) e 10.4 (Lucid Lynx) la stampante viene riconosciuta ed installata correttamente senza bisogno di alcun intervento manuale, perché il pacchetto ''splix'' risulta essere già presente. ==== Installazione su Debian (Squeeze) ==== # apt-get install splix ==== Installazione su Gentoo ==== $ emerge splix ==== Installazione da sorgenti ==== Per aggiornare la versione di SpliX sul sistema, occorre rimuovere la stampante da CUPS. Questo passo è necessario, perché CUPS fa una copia cache dei file PPD usati dalle stampanti È necessario che siano presenti i pacchetti devel di CUPS e di [[http://www.cl.cam.ac.uk/~mgk25/jbigkit/|jbigkit]] (per il supporto((questo algoritmo è coperto da brevetti e non dovrebbe essere necessario per il corretto funzionamento della stampante ML-3050. Se volete disabilitarlo, compilare SpliX con il comando $ make DISABLE_JBIG=1L'autore di JBIG-KIT offre la sua interpretazione dello [[http://www.cl.cam.ac.uk/~mgk25/jbigkit/patents.html|stato attuale dei brevetti]] riguardanti JBIG1)) all'algoritmo di compressione JBIG1.). * Scaricare i [[http://sourceforge.net/projects/splix/files/|sorgenti]] * Scompattare i sorgenti $ tar xvjf splix-*.tar.bz2 * Compilare i sorgenti $ cd splix* $ make * Installare SpliX $ make install Al termine della installazione riceverete un messaggio che vi avvisa della necessità di procurarsi dai driver ufficiali i profili colore per ottenere risultati migliori con le stampanti a colori((per maggiori informazioni fate riferimento al file INSTALL)) ===== Aggiungere la stampante a CUPS ===== In molti casi è sufficiente attaccare la stampante al PC, accenderla ed aspettare che il sistema la rilevi. Altrimenti, occorre aggiungere la stampante manualmente. Se avete acceso la stampante prima di aver completato la procedura descritta in questo articolo, è probabile che CUPS la abbia aggiunta usando un file PPD scorretto. In questo caso è sufficiente rimuovere la stampante da CUPS: aprite il browser e collegatevi all'indirizzo [[http://localhost:631/printers]], per vedere l'elenco delle stampanti riconosciute. Quando vi viene chiesto nome utente e password, specificate "root" e la relativa password * Aprire la pagina [[http://localhost:631/admin]] {{ :linux:ml-3050-admin.png?500 |Pagina di amministrazione di CUPS}} Premere il pulsante ''Aggiungi stampante'' * Nella pagina {{ :linux:ml-3050-addprinter.png?500 |Pagina per aggiungere una stampante}} assegnare un nome ed una descrizione alla stampante. Premere il pulsante ''continua'' * Nella pagina {{ :linux:ml-3050-disp.png?500 |Pagina per specificare il dispositivo}} selezionare il dispositivo "Samsung ML-3050 (Samsung ML-3050)". Premere il pulsante ''Continua''. * Nella pagina {{ :linux:ml-3050-model.png?500 |Pagina per specificare il modello}} selezionare il modello "Samsung ML-3050 Series (en). Premere il pulsante ''Aggiungi stampante''. Dovrebbe apparire un prompt nel quale dovete inserire la vostra password di root. ===== Fonti ===== * Il file [[http://splix.svn.sourceforge.net/viewvc/splix/splix/INSTALL|INSTALL]] presente nella distribuzione sorgente di SpliX * [[wp>CUPS]] ~~ODT~~ {{tag>Linux ML-3050 CUPS installazione SpliX SPL QPDL}} ~~DISCUSSION~~