]> git.ipfire.org Git - thirdparty/cups.git/blob - doc/help/man-cups-driverd.html
0fc9183a67f075d7c1a2e97a0178750976174e4f
[thirdparty/cups.git] / doc / help / man-cups-driverd.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2 <html>
3 <!-- SECTION: Man Pages -->
4 <head>
5 <link rel="stylesheet" type="text/css" href="../cups-printable.css">
6 <title>cups-driverd(8)</title>
7 </head>
8 <body>
9 <h1 class="title">cups-driverd(8)</h1>
10 <h2 class="title"><a name="NAME">Name</a></h2>
11 cups-driverd - cups driver daemon
12 <h2 class="title"><a name="SYNOPSIS">Synopsis</a></h2>
13 <b>cups-driverd
14 </b>cat
15 <i>ppd-name
16 </i><br>
17 <b>cups-driverd
18 </b>list
19 <i>request_id limit options
20 </i><h2 class="title"><a name="DESCRIPTION">Description</a></h2>
21 <i>cups-driverd</i> shows or lists PPD files. It is run in
22 response to CUPS-Add-Modify-Printer or CUPS-Get-Devices requests.
23 The first form ("cups-driverd cat ppd-name") writes the named PPD
24 file to stdout. The output format is an uncompressed PPD file.
25 <p>The second form lists the available manufacturers or PPD files to
26 stdout as indicated by the <i>options</i> argument. The output
27 format is an IPP response message. The <i>request_id</i> argument
28 is the request ID from the original IPP request, typically 1. The
29 <i>limit</i> argument is the limit value from the original IPP
30 request - 0 means no limit. Finally, the <i>options</i> argument
31 is a space-delimited list of attributes ("name=value name=value
32 ...") that were passed in with the request. Currently
33 <i>cups-driverd</i> looks for the <i>ppd-make</i> and
34 <i>requested-attributes</i> attributes and tailors the output
35 accordingly.
36 <h2 class="title"><a name="DRIVERS">Drivers</a></h2>
37 Drivers can be static PPD files under the
38 <i>/usr/share/cups/model</i> directory or programs under the
39 <i>/usr/lib/cups/driver</i> or <i>/usr/libexec/cups/driver</i> (OS X) directories.
40 Static PPD files must conform to the Adobe PPD File Format Specification version
41 4.3 and may be compressed using the <i>gzip(1)</i> program. Driver
42 programs must implement the command-line interface shown in the
43 next section.
44 <h3><a name="DRIVER_PROGRAMS">Driver Programs</a></h3>
45 Driver programs provide a interface to dynamically-generated PPD
46 files. The following arguments are currently defined:
47 <dl>
48 <dt>drivername list
49 </dt>
50 <dd></dd>
51 <dd>Lists the supported PPD files to stdout.
52 </dd>
53 <dt>drivername cat ppdname
54 </dt>
55 <dd></dd>
56 <dd>Writes the named PPD file to stdout.
57 </dd>
58 </dl>
59 <p>Driver programs MUST NOT query hardware or make other long-term operations that
60 would delay the return of a driver list. See the NOTES section below for
61 specific recommendations.
62 <h3><a name="LISTING_FILES_(drivername_list)">Listing Files (drivername list)</a></h3>
63 When run with the single argument "list", the program must list
64 the available PPD files it can generate to stdout using the
65 following format:
66 <pre>
67 "drivername:ppdname" language "make" "make and model"
68 "drivername:ppdname" language "make" "make and model" "1284 device id"
69 "drivername:ppdname" language "make" "make and model" "1284 device id" "(PPD product)"
70 "drivername:ppdname" language "make" "make and model" "1284 device id" "(PPD product)" "PostScript version"
71 "drivername:ppdname" language "make" "make and model" "1284 device id" "(PPD product)" "PostScript version" "type"
72 </pre>
73 <p><i>Drivername</i> is the name of the driver program. <i>Ppdname</i>
74 is the name used to select the given driver. <i>Language</i> is
75 the locale associated with the default language of the PPD file,
76 typically "en". <i>Make</i> is the Manufacturer name from the PPD
77 file. <i>Make and model</i> is the NickName name from the PPD
78 file. <i>1284 device id</i> is the 1284DeviceId from the PPD file,
79 if any. <i>(PPD product)</i> is the Product string as it would appear in the PPD
80 file or from a PostScript query. <i>PostScript version</i> is the PSVersion
81 string as it would appear in the PPD file or from a PostScript query. <i>Type</i>
82 is "postscript" for PostScript printers, "pdf" for PDF printers, "raster" for
83 raster printers, or "fax" for facsimile devices.
84 <h3><a name="WRITING_FILES_(drivername_cat_ppdname)">Writing Files (drivername cat ppdname)</a></h3>
85 When the driver program is run with the "cat ppdname" arguments,
86 it must write the named PPD file to stdout, uncompressed. If the
87 named PPD file does not exist, the driver program must not write
88 any output to stdout and report the error to stderr instead.
89 <h3><a name="DRIVER_ERROR_MESSAGES">Driver Error Messages</a></h3>
90 Error messages can be relayed back to <i>cupsd</i> by writing them
91 to stderr. The following prefixes are recognized:
92 <dl>
93 <dt>DEBUG: [drivername]
94 </dt>
95 <dd></dd>
96 <dd>Debugging messages
97 </dd>
98 <dt>ERROR: [drivername]
99 </dt>
100 <dd></dd>
101 <dd>Error messages
102 </dd>
103 <dt>INFO: [drivername]
104 </dt>
105 <dd></dd>
106 <dd>Informational messages
107 </dd>
108 </dl>
109 <h2 class="title"><a name="NOTES">Notes</a></h2>
110 Due to performance considerations, driver programs have been officially
111 deprecated and should not be used for new development. Currently only the
112 CUPS web interface and <a href='man-lpinfo.html?TOPIC=Man+Pages'>lpinfo(8)</a> command will request lists from all
113 driver programs.
114 <h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
115 cupsd(8), cupsd.conf(5), cupstestppd(1), lpinfo(8),
116 <br>
117 <a href='http://localhost:631/help'>http://localhost:631/help</a>
118 <h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
119 Copyright 2007-2013 by Apple Inc.
120
121 </body>
122 </html>