cupsaddsmb -> No PPD file for printer (yesI know, I have RAW printers!)

Kurt Pfeifle kurt.pfeifle at infotec.com
Wed Sep 24 11:54:13 PDT 2008


> Kurt Pfeifle schrieb:
> >> I have a "full-blown" Samba domain controller running on a small ARM
> >> device (64 MB RAM, 266 MHz XScale CPU).
> >>
> >> Is has several printers connected, and Windows clients print through
> >> Samba/CUPS.
> >>
> >> Because of tiny processing power of this ARM device, it only prints well
> >> to PostScript printers. Anything non-Postscript has to be converted via
> >> Ghostscipt, foomatic and/or other filters, which just take too much time
> >> (sometimes, 20 minutes to print a document).
> >>
> >> Therefore, I set up such printers to use RAW mode, and clients use their
> >> own Windows driver.
> >>
> >> Unfortunately, RAW printers break "cupsaddsmb", i.e.:
> >>
> >>
> >> # cupsadsmb -a -v -H 127.0.0.1 -U Administrator
> >> (...)
> >> cupsaddsmb: No PPD file for printer "BROTHER_HL2070N_2" - Not Found
> >>
> >>
> >> I understand that cupsaddsmb was not intended to be used with RAW
> >> printers, but it makes it uncomfortable to use when one has more
> >> printers, as it's not possible to use the -a switch ("Export all printers").
> >>
> >> Are there any workarounds to that?
> >
> > Yes, there is.
> >
> > Use a "minimal" PPD that passes the "cupstestppd" checks. Make that PPD so that the queue behaves like a raw queue (add the line '*cupsFilter: "application/vnd.cups-postscript 0 -"').
> >
> > A few years ago I created such a PPD because this was the only way to make Samba and CUPS apply a customer's specific CUPS 1.2 operation policies to certain print queues (OpPolicy would not work for raw queues).
> >
> > Unfortunatley right now I don't have access to my repository. But it is rather easy to recreate such a beast. Just use one cupstestppd-compliant PPD, remove all printer specific sections (you may need to keep one default paper size), keep some of the generic lines, and make sure that your stripped down PPD still passes the cupstestppd test....
>
> Won't it somehow break drivers uploaded to Samba by a Windows client?
>
> I.e., you can upload printer drivers to Samba from a Windows client.
>
> If I use "cupsaddsmb" later on (with a minimal, RAW-only PPD), won't it
> overwrite/break drivers uploaded by a Windows client?
>
> It would be great if cupsaddsmb could ignore RAW printers automatically.


Did you even try what I suggested ??

You said about the non-PostScript printers "clients use their own Windows driver", which usually means that you don't upload them to Samba.

Anyway, if you upload the driver to Samba with the Windows "Add Printer Wizard", the driver usually gets a different name (the native Windows name) than the name you're using on the CUPS side....




More information about the cups mailing list