Encore une pr�cision (moyennement encourageante) sur le nouveau syst�me
d'impression de la Mdk 7.2 (CUPS) :
la commande lpr de cups (qui est en fait un lien symbolique sur un ex�cutable
lpr-cups) se comporte en partie comme le lpr de l'ancien syst�me, et accepte
notamment une syntaxe de type "lpr nom_de_fichier".
Mais la plupart des applications qui impriment g�n�rent en standard une ligne
de commande en "pipe" du type "cat <xyz> | lpr", dans laquelle lpr n'a pas de
nom de fichier explicite (c'est le fichier stdin qui est imprim�).
Le lpr de cups accepte cette syntaxe comme l'ancien, et tout va bien tant
qu'on utilise une imprimante locale. En revanche, pour une raison que
j'ignore totalement, si on imprime � distance, via samba, la syntaxe en pipe
met le spool en erreur avec le message suivant :
"ERRDOS - Errfileexists (The file named in a Create Directory. Make new file
or Link. � �request already exists.) opening remote file (stdin)"
Exemple : soient les deux commandes suivantes (th�oriquement �quivalentes) :
1) lpr toto
2) cat toto | lpr
la premi�re commande marche sans probl�me
la seconde marche si l'imprimante est locale, et provoque � tout coup
l'erreur indiqu�e ci-dessus si l'imprimante est accessible via un serveur
samba.
Autrement dit, lpr-cups ne semble pas savoir g�n�rer un nom de job accept�
par le serveur quand il doit imprimer un flux <stdin>. C'est du moins mon
interpr�tation. L'ennui, c'est que beaucoup d'applications, pour imprimer,
utilisent une ligne de commande non modifiable et correspondant � la seconde
syntaxe.
Donc je ne vois qu'une solution pour utiliser un client cups sur un serveur
samba : remplacer le lien symbolique lpr par un script qui g�n�re un nom de
job, ou un fichier temporaire � partir de son entr�e standard, et qui g�n�re
un appel explicite de lpr-cups avec param�tres.