Suite à la mort inopinée de ma précédente imprimante, une HP OfficeJet 6700 Premium qui m’avait inspiré, il y a longtemps, à écrire un billet de blog coup de gueule à propos des pilotes d’imprimante, j’ai été obligé de racheter en catastrophe une nouvelle imprimante multifonction.
J’ai jeté mon dévolu sur une Canon Pixma TR8550, qui est une imprimante plutôt compacte et adaptée à mon usage : des impressions occasionnelles de documents, mais surtout beaucoup de scans.
Puisque faire fonctionner cette machine sous Linux était un peu plus compliqué que prévu, je vous propose donc ce petit retour d’expérience, dans lequel je décris ce qu’il a fallu que je fasse pour profiter pleinement de cette imprimante sous Gentoo.
Installer le pilote d’impression, cnijfilter
Il s’agit malheureusement d’un de ces appareils qui nécessite la compilation et l’installation, depuis les sources, de son pilote, qui est de plus fourni avec une collection de bibliothèques sous forme de « blob » binaire. Bref, donc pour ceux qui abhorrent l’idée de faire tourner des logiciels propriétaires sur leur poste libre, cette imprimante n’est pas pour vous.
Sous Gentoo, le pilote est heureusement déjà disponible dans l’arbre Portage. Pour l’installer, il suffit en théorie de taper :
# emerge cnijfilter2
Sauf qu’au jour où j’écris ces lignes, la version de cnijfilter2 dans l’arbre Portage est trop ancienne : il faut la version 5.50 alors que Portage propose la version 5.40. Cependant, un ebuild à jour a déjà été soumis à Gentoo, donc il suffit en théorie de le télécharger et l’installer :
# mkdir -p /usr/local/portage/net-print
# cd /usr/local/portage/net-print
# cp -r /usr/portage/net-print/cnijfilter2 .
# cd cnijfilter2
Placez ensuite le fichier cnijfilter2-5.50.ebuild
que vous avez
préalablement téléchargé dans /usr/portage/net-print/cnijfilter2
. Puis
tapez la commande :
# ebuild cnijfilter2-5.50.ebuild manifest
Ajoutez dans votre /etc/portage/package.keywords
la ligne suivante :
net-print/cnijfilter2
Enfin, ajoutez /usr/local/portage
à votre PORTDIR_OVERLAY
si ce n’est pas
déjà le cas. Vous pourrez alors installer le pilote avec :
# emerge cnijfilter2
Ajout de l’imprimante dans CUPS
Pour ajouter l’imprimante dans CUPS, c’est heureusement plus facile. Il suffit de visiter l’URL http://localhost:631. Dans l’onglet « Administration », cliquez sur « Add printer » ; si l’imprimante est allumée, elle devrait alors immédiatement apparaître dans la section « Discovered network printers ».
Lorsque CUPS demande le pilote à utiliser, il faudra choisir le pilote « Canon TR8500 series Ver.5.50 » (ils n’ont pas fait de fichier PPD pour le modèle exact, ce qui est étonnant). Le reste est suffisamment simple et pour ma part, la page de test est sortie du premier coup.
Pour scanner, ça se complique
En revanche, ce qui m’a donné de loin le plus de fil à retordre était la partie scanner. Pour l’utiliser, Il faut passer par l’utilitaire propre à Canon, baptisée « ScanGear MP » ; je n’ai pas réussi à faire fonctionner SANE.
La principale raison est qu’un bug s’est glissé dans ScanGear. Après avoir pas mal lutté pour l’installer sur ma machine, j’ai voulu scanner une page de test. Las ! l’outil segfaulte juste après avoir sélectionné l’emplacement lequel écrire le PDF.
Il s’avérait donc que c’était tout simplement la faute d’un pointeur non initialisé à NULL avant sa première utilisation. Il m’a fallu corriger ce petit bug avant que ça marche.
Pour le reste, j’ai écrit un ebuild, que j’ai soumis à Gentoo. Il m’a
fallu environ une soirée pour le mettre au point, et une petite heure de plus
pour le mettre au propre. Mais un jour, peut-être, vous pourrez installer
l’utilitaire de scan avec la commande emerge scangearmp2
.
Pour le reste, rien de vraiment folichon : l’outil se lance avec la commande
scangearmp2
, propose quelques réglages élémentaires et un bouton pour
scanner. La résolution du scan est fixée ; à combien, je l’ignore, mais elle
est égale ou supérieure à 300 ppp, ce qui suffit largement pour mon utilisation.
Conclusion
Je peux m’estimer heureux que le bug de ScanGear se résumait à un simple
pointeur non initialisé, parce qu’en activant les avertissements de
compilation (-Wall
), le résultat fait un peu peur.
Quoi qu’il en soit, je me suis rapproché du service client de Canon, et je leur ai transmis le patch en leur expliquant le problème que j’ai corrigé. J’espère donc que ce correctif finisse par être intégré officiellement.
Bien que je trouve légèrement frustrante la nécessité d’installer des logiciels propriétaires de Canon, je saurai m’en accommoder si cette imprimante s’avère être fiable. On verra bien dans combien de temps il me faudra la changer, mais en attendant, croisons les doigts.
Commentaires
Poster un commentaire
TicTacBoum
Bonjour,
Tout d'abord bravo pour votre travail. Le fait de publier vos bidouilles et donc de les partager est vraiment appréciable. Je me permet de vous contacter car je suis aussi dans votre cas: j'ai eu le "malheur" d'acheter la Tr8550.. et de tourner sous linux.. J'ai lu et relu votre article concernant l'installation de votre scanner. et je n'arrive pas à mes fins! J'y ai passé pas mal d'heures sans résultats.. ou presque. Du coté de l'impression en réseau pas de problème en revanche pour le scanner pas moyen d'installer correctement scangearMp. Souvenez vous de la démarche? voici mon soucis: https://www.forum-francophone-linuxmint.fr/viewtopic.php?f=18&t=11674
ps: je ne veux pas non plus vous prendre trop de votre temps!!
Cordialement
★ x0r
Faut croire que les packages .deb et .rpm précompilés ne valent pas mieux… Le plus simple est peut-être de télécharger les sources de scangearmp2 et de les compiler. Mais je crois me souvenir que les instructions ne sont pas claires ; les ebuilds (qui sont grosso modo des scripts shell indiquant comment compiler et installer un paquet) utilisent une procédure différente de ce qui a été documenté.
On dirait que votre souci est lié à un conflit de fichiers, l’un étant déjà installé par libcanon-proprio-bin et l’autre étant fourni par scangearmp2. Avez-vous essayé votre commande dpkg avec l’option --force-overwrite ? (Ça ne devrait pas être nécessaire en temps normal, mais puisque les .deb de Canon semblent avoir été faits à la tractopelle…)
TicTacBoum
Merci beaucoup pour votre réponse. J'essaye tout ça ce week end!! Cordialement
TicTacBoum
voilà c'est fait cela fonctionne. merci encore pour ton aide. Je met le liens de toue ma démarche si ça peur aider quelqu'un!
https://www.forum-francophone-linuxmint.fr/viewtopic.php?f=18&t=11674
★ x0r
Excellent. Et c’est une bonne chose d’avoir une procédure pour d’autres distributions. Tout le monde n’utilise pas Gentoo, après tout… :)
Poster un commentaire