[cups.general] RFC: New Driver Rating/Information Attributes
Till Kamppeter
till.kamppeter at gmail.com
Fri Jan 26 11:48:20 PST 2007
I think I will add these data items to te OpenPrinting database so hat
the get into generated PPDs.
I suggest to add the following items, too:
*cupsManufacturerDriver: True
The driver author entry does not necessarily show in a machine-readable
form whether the driver is from the printer's manufacturer or not. With
this flag manufacturer-supplied drivers can get clearly marked.
*cupsDriverLicense: "GPL"
*cupsDriverIsFreeSoftware: True
This can help the distro's printer setup tool to tak into account
non-free drivers or not, especially when we have ditribution-independent
driver packages whic the setup tool can automatically download.
* cupsDriverSupport: "..."
* cupsDriverDescription: "..."
Human-readable fields, the former is for support contacts, like mailing
lists, manufacturer-supplied support, ... The latter is a general
description of the driver, especially telling about driver properties
which cannot be represented by the other suggested keywords. These two
should be provided with translations.
* cupsDriverIsInstalled: "..."
A shell command line which exits with 0 if the driver is locally
installed or with 1 otherwise. So the user can get presented only the
installed drivers by the printer setup tool.
Obtaining all this information for a new printer/driver could be made
part of the OpenPrinting printer certification program. Certification
could be also marked by a keyword:
*cupsDriverOPCertification: None
*cupsDriverOPCertification: PrinterManufacturer
*cupsDriverOPCertification: DriverAuthor
*cupsDriverOPCertification: OSDistribution
*cupsDriverOPCertification: CertificationAuthority
Another thing is whether we should start the keywords with "*cups...",
as this information serves as well for other printing systems, like
Solaris LP. Perhaps we better use "*OpenPrinting...".
See also my comments below.
Till
Michael Sweet wrote:
> cupsDriverAuthor (ppd-author text)
> ----------------------------------
[...]
> Examples:
>
> *% HP PostScript printer driver without filters
> *cupsDriverAuthor: "HP"
>
> *% ALPS printer driver using Foomatic
> *cupsDriverAuthor: "Masakazu Higaki"
>
> *% Gutenprint printer driver
> *cupsDriverAuthor: "Gutenprint"
>
Perhaps we better call it
*cupsDriverSupplier: "Gutenprint"
and use always manufacturer or project names, the same as we use for the
PPD directories in the new FHS extension
(/usr/share/ppd/<supplier>/...). Many drivers, like GutenPrint have very
many persons who worked on them.
> cupsDriverType (ppd-type keyword)
> ---------------------------------
>
> *cupsDriverType: "driver-type"
>
> This string attribute defines the type of driver, currently one of
> the following:
>
> - PostScript; a driver that sends PostScript to the device - this
> is the default for PPD files without cupsFilter attributes
> - CUPS-Raster; a driver that converts CUPS raster data to the
> device's native format - this is the default for PPD files
> listing an application/vnd.cups-raster filter
> - Foomatic; a driver that uses the foomatic-rip wrapper script,
> possibly using a Ghostscript driver, to convert to the device's
> native format
> - OPVP; a driver that uses the Open Printing Vector Protocol to
> send print data to the device
> - Unknown; a driver that uses some other filter technology - this
> is the default if the driver is not PostScript or CUPS-Raster
>
OPVP does not fit very well here, as it does not have a standard CUPS
filter. OPVP is only a communication method between GhostScript and the
driver. It does not provide anything for GhostScript to be called by
CUPS. I have already seen sample drivers using foomatic-rip but also
other drivers which use a simple, custom-made "psto..." or "pdfto..."
CUPS filter. And if we have OPVP listed we would also have to list IJS.
Perhaps we should better use the following:
- PostScript; a driver that sends PostScript to the device - this
is the default for PPD files without cupsFilter attributes
- CUPS-Raster; a driver that converts CUPS raster data to the
device's native format - this is the default for PPD files
listing an application/vnd.cups-raster filter
- OPVP; a driver that uses the Open Printing Vector Protocol to
communicate with the renderer
- IJS: a driver that uses IJS to communicate with the renderer
- Filter: a driver which works as a filter on generic
bitmap output of the renderer (like "pnm2ppa")
- GhostScript-Uniprint: Driver based on GhostScript "uniprint"
output device, using .upp file
- GhostScript-built-in: Driver compiled into GhostScript
- Unknown; a driver that uses some other integration technology -
this is the default if the driver is not PostScript or
CUPS-Raster
The OpenPrinting database has already a driver type entry for each
driver. I can add the extra types.
Till
More information about the cups
mailing list