(Mis à jour mai 2016, le nom du paquet pour le scanner a changé.)
Je viens de m'offrir une petite imprimante multifonction laser monochrome Samsung SCX-4300. Voici comment l'installer en deux coups de cuillère à pot sous Debian/Ubuntu :
Pour l'imprimante
$ sudo apt-get install cups splix
Attention il faut utiliser les paquets de Debian squeeze (6) au minimum pour splix. (Mise à jour 2016 : la version courante de Debian est la 8, donc c'est par défaut maintenant.)
Branchez l'imprimante, allumez-la, allez sur http://localhost:631/ avec votre navigateur, onglet "Administration", "Find New Printers", cochez Samsung SCX-4300, ensuite suivez l'assistant et pour le driver choisissez vers la fin de la liste "Samsung SCX-4300 Series" (si vous avez un cups de lenny, un peu vieux donc, et que SCX-4300 n'apparaît pas, vous pouvez prendre SCX-4200 à la place). Et c'est bon, vous pouvez imprimer :)
Pour le scanner
Il faut d'abord ajouter le repository des drivers Samsung à votre /etc/apt/sources.list :
deb http://www.bchemnet.com/suldr/ debian extra
Ensuite :
$ sudo apt-get install suld-driver-4.00.36 xsane
Et voilà, testez avec scanimage -L pour voir si votre scanner apparaît.
S'il n'apparaît pas, vous devez rajouter cela dans /etc/sane.d/xerox_mfp.conf :
#Samsumg SCX 4300
usb 0x04e8 0x342e
Bonus : partager l'imprimante en réseau
Basiquement il suffit de cocher la case "Partager cette imprimante" (Share this printer) quand vous ajoutez l'imprimante dans CUPS (ou quand vous la modifiez), mais si vous voulez ajouter l'imprimante sur une machine qui n'est pas locale (votre serveur local par exemple, comme dans mon cas) vous allez devoir modifier votre /etc/cups/cupsd.conf.
Remplacez ceci :
Listen localhost:631
Par cela :
Listen *:631
Enfin remplacez les lignes suivantes du fichier par ceci :
# Show shared printers on the local network.
Browsing On
BrowseOrder allow,deny
BrowseAllow all
BrowseAddress @LOCAL
# Default authentication type, when authentication is required...
DefaultAuthType Basic
# Restrict access to the server...
<Location />
Order allow,deny
Allow @LOCAL
</Location>
# Restrict access to the admin pages...
<Location /admin>
Order allow,deny
Allow @LOCAL
</Location>
# Restrict access to configuration files...
<Location /admin/conf>
AuthType Default
Require user @SYSTEM
Order allow,deny
Allow @LOCAL
</Location>
Finissez par un :
$ sudo invoke-rc.d cups restart
Bonus : partager le scanner en réseau
Au lieu d'installer xsane à l'installation du scanner, installez sane-utils (n'oubliez pas le package du driver samsung). Ensuite éditez /etc/default/saned et mettez RUN=yes au lieu de RUN=no. Editez ensuite /etc/sane.d/saned.conf et rajoutez les adresses IP qui doivent être autorisées à accéder au scanner. Pour autoriser par exemple toutes les adresses en 192.168.1.* (c'est mon réseau local) mettez 192.168.168.1.0/24. Pour IPv6 des exemples sont fournis au début du fichier.
Lancez saned :
$ sudo invoke-rc.d saned start
Sur chaque machine qui voudra accéder au scanner, il suffira de rajouter l'ip de la machine ayant le scanner branché en bas de /etc/sane.d/net.conf.
MàJ février 2012 : le repository pour le scanner a changé et rajouté une manip à faire pour que le scanner soit reconnu par SANE.