Greatly simplify the man page handling.
[thirdparty/cups.git] / doc / help / man-ippeveprinter.html
1 <!DOCTYPE HTML>
2 <html>
3 <!-- SECTION: Man Pages -->
4 <head>
5         <link rel="stylesheet" type="text/css" href="../cups-printable.css">
6         <title>ippeveprinter(1)</title>
7 </head>
8 <body>
9 <h1 class="title">ippeveprinter(1)</h1>
10 <h2 class="title"><a name="NAME">Name</a></h2>
11 ippeveprinter - an ipp everywhere printer application for cups
12 <h2 class="title"><a name="SYNOPSIS">Synopsis</a></h2>
13 <b>ippeveprinter</b>
14 [
15 <b>--help</b>
16 ] [
17 <b>--no-web-forms</b>
18 ] [
19 <b>--version</b>
20 ] [
21 <b>-2</b>
22 ] [
23 <b>-D</b>
24 <i>device-uri</i>
25 ] [
26 <b>-K</b>
27 <i>keypath</i>
28 ] [
29 <b>-M</b>
30 <i>manufacturer</i>
31 ] [
32 <b>-P</b>
33 <i>filename.ppd</i>
34 ] [
35 <b>-V</b>
36 <i>ipp-version</i>
37 ] [
38 <b>-a</b>
39 <i>filename.conf</i>
40 ] [
41 <b>-c</b>
42 <i>command</i>
43 ] [
44 <b>-d</b>
45 <i>spool-directory</i>
46 ] [
47 <b>-f</b>
48 <i>type/subtype[,...]</i>
49 ] [
50 <b>-i</b>
51 <i>iconfile.png</i>
52 ] [
53 <b>-k</b>
54 ] [
55 <b>-l</b>
56 <i>location</i>
57 ] [
58 <b>-m</b>
59 <i>model</i>
60 ] [
61 <b>-n</b>
62 <i>hostname</i>
63 ] [
64 <b>-p</b>
65 <i>port</i>
66 ] [
67 <b>-r</b>
68 <i>subtype[,subtype]</i>
69 ] [
70 <b>-s</b>
71 <i>speed[,color-speed]</i>
72 ] [
73 <b>-v[vvv]</b>
74 ]
75 <i>service-name</i>
76 <h2 class="title"><a name="DESCRIPTION">Description</a></h2>
77 <b>ippeveprinter</b>
78 is a simple Internet Printing Protocol (IPP) server conforming to the IPP Everywhere (PWG 5100.14) specification. It can be used to test client software or act as a very basic print server that runs a command for every job that is printed.
79 <h2 class="title"><a name="OPTIONS">Options</a></h2>
80 The following options are recognized by
81 <b>ippeveprinter:</b>
82 <dl class="man">
83 <dt><b>--help</b>
84 <dd style="margin-left: 5.0em">Show program usage.
85 <dt><b>--no-web-forms</b>
86 <dd style="margin-left: 5.0em">Disable the web interface forms used to update the media and supply levels.
87 <dt><b>--version</b>
88 <dd style="margin-left: 5.0em">Show the CUPS version.
89 <dt><b>-2</b>
90 <dd style="margin-left: 5.0em">Report support for two-sided (duplex) printing.
91 <dt><b>-D </b><i>device-uri</i>
92 <dd style="margin-left: 5.0em">Set the device URI for print output.
93 The URI can be a filename, directory, or a network socket URI of the form "socket://ADDRESS[:PORT]" (where the default port number is 9100).
94 When specifying a directory,
95 <b>ippeveprinter</b>
96 will create an output file using the job ID and name.
97 <dt><b>-M </b><i>manufacturer</i>
98 <dd style="margin-left: 5.0em">Set the manufacturer of the printer.
99 The default is "Example".
100 <dt><b>-P </b><i>filename.ppd</i>
101 <dd style="margin-left: 5.0em">Load printer attributes from the specified PPD file.
102 This option is typically used in conjunction with the
103 <b>ippeveps</b>(7)
104 printer command ("-c ippeveps").
105 <dt><b>-V 1.1</b>
106 <dd style="margin-left: 5.0em"><dt><b>-V 2.0</b>
107 <dd style="margin-left: 5.0em">Specifies the maximum IPP version to report.
108 2.0 is the default.
109 <dt><b>-c </b><i>command</i>
110 <dd style="margin-left: 5.0em">Run the specified command for each document that is printed.
111 If "command" is not an absolute path ("/path/to/command"),
112 <b>ippeveprinter</b>
113 looks for the command in the "ippeveprinter" subdirectory of the CUPS binary directory, typically /usr/lib/cups/ippeveprinter or /usr/libexec/cups/ippeveprinter.
114 The
115 <b>cups-config</b>(1)
116 command can be used to discover the correct binary directory ("cups-config --serverbin").
117 In addition, the CUPS_SERVERBIN environment variable can be used to override the default location of this directory - see the
118 <b>cups</b>(1)
119 man page for more details.
120 <dt><b>-d </b><i>spool-directory</i>
121 <dd style="margin-left: 5.0em">Specifies the directory that will hold the print files.
122 The default is a directory under the user's current temporary directory.
123 <dt><b>-f </b><i>type/subtype[,...]</i>
124 <dd style="margin-left: 5.0em">Specifies a list of MIME media types that the server will accept.
125 The default depends on the type of printer created.
126 <dt><b>-i </b><i>iconfile.png</i>
127 <dd style="margin-left: 5.0em">Specifies the printer icon file for the server.
128 The file must be a PNG format image.
129 The default is an internally-provided PNG image.
130 <dt><b>-k</b>
131 <dd style="margin-left: 5.0em">Keeps the print documents in the spool directory rather than deleting them.
132 <dt><b>-l </b><i>location</i>
133 <dd style="margin-left: 5.0em">Specifies the human-readable location string that is reported by the server.
134 The default is the empty string.
135 <dt><b>-m </b><i>model</i>
136 <dd style="margin-left: 5.0em">Specifies the model name of the printer.
137 The default is "Printer".
138 <dt><b>-n </b><i>hostname</i>
139 <dd style="margin-left: 5.0em">Specifies the hostname that is reported by the server.
140 The default is the name returned by the
141 <b>hostname</b>(1)
142 command.
143 <dt><b>-p </b><i>port</i>
144 <dd style="margin-left: 5.0em">Specifies the port number to listen on.
145 The default is a user-specific number from 8000 to 8999.
146 <dt><b>-r </b><i>subtype[,subtype]</i>
147 <dd style="margin-left: 5.0em">Specifies the DNS-SD subtype(s) to advertise.
148 Separate multiple subtypes with a comma.
149 The default is "_print".
150 <dt><b>-s </b><i>speed[,color-speed]</i>
151 <dd style="margin-left: 5.0em">Specifies the printer speed in pages per minute.
152 If two numbers are specified and the second number is greater than zero, the server will report support for color printing.
153 The default is "10,0".
154 <dt><b>-v[vvv]</b>
155 <dd style="margin-left: 5.0em">Be (very) verbose when logging activity to standard error.
156 </dl>
157 <h2 class="title"><a name="EXIT_STATUS">Exit Status</a></h2>
158 The
159 <b>ippeveprinter</b>
160 program returns 1 if it is unable to process the command-line arguments or register the IPP service.
161 Otherwise
162 <b>ippeveprinter</b>
163 will run continuously until terminated.
164 <h2 class="title"><a name="CONFORMING_TO">Conforming To</a></h2>
165 The
166 <b>ippeveprinter</b>
167 program is unique to CUPS and conforms to the IPP Everywhere (PWG 5100.14) specification.
168 <h2 class="title"><a name="ENVIRONMENT">Environment</a></h2>
169 <b>ippeveprinter</b>
170 adds environment variables starting with "IPP_" for all IPP Job attributes in the print request.
171 For example, when executing a command for an IPP Job containing the "media" Job Template attribute, the "IPP_MEDIA" environment variable will be set to the value of that attribute.
172 <p>In addition, all IPP "xxx-default" Printer Description attributes are added to the environment.
173 For example, the "IPP_MEDIA_DEFAULT" environment variable will be set to the default value for the "media" Job Template attribute.
174 <p>Enumerated values are converted to their keyword equivalents.
175 For example, a "print-quality" Job Template attribute with a enum value of 3 will become the "IPP_PRINT_QUALITY" environment variable with a value of "draft".
176 This string conversion only happens for standard Job Template attributes, currently "finishings", "orientation-requested", and "print-quality".
177 <p>Finally, the "CONTENT_TYPE" environment variable contains the MIME media type of the document being printed, the "DEVICE_URI" environment variable contains the device URI as specified with the "-D" option, and the "PPD" environment variable contains the PPD filename as specified with the "-P" option.
178 <h2 class="title"><a name="COMMAND_OUTPUT">Command Output</a></h2>
179 Unless they communicate directly with a printer, print commands send printer-ready data to the standard output.
180 <p>Print commands can send messages back to
181 <b>ippeveprinter</b>
182 on the standard error with one of the following prefixes:
183 <dl class="man">
184 <dt><b>ATTR: </b><i>attribute=value[ attribute=value]</i>
185 <dd style="margin-left: 5.0em">Sets the named attribute(s) to the given values.
186 Currently only the "job-impressions" and "job-impressions-completed" Job Status attributes and the "marker-xxx", "printer-alert", "printer-alert-description", "printer-supply", and "printer-supply-description" Printer Status attributes can be set.
187 <dt><b>DEBUG: </b><i>Debugging message</i>
188 <dd style="margin-left: 5.0em">Logs a debugging message if at least two -v's have been specified.
189 <dt><b>ERROR: </b><i>Error message</i>
190 <dd style="margin-left: 5.0em">Logs an error message and copies the message to the "job-state-message" attribute.
191 <dt><b>INFO: </b><i>Informational message</i>
192 <dd style="margin-left: 5.0em">Logs an informational/progress message if -v has been specified and copies the message to the "job-state-message" attribute unless an error has been reported.
193 <dt><b>STATE: </b><i>keyword[,keyword,...]</i>
194 <dd style="margin-left: 5.0em">Sets the printer's "printer-state-reasons" attribute to the listed keywords.
195 <dt><b>STATE: -</b><i>keyword[,keyword,...]</i>
196 <dd style="margin-left: 5.0em">Removes the listed keywords from the printer's "printer-state-reasons" attribute.
197 <dt><b>STATE: +</b><i>keyword[,keyword,...]</i>
198 <dd style="margin-left: 5.0em">Adds the listed keywords to the printer's "printer-state-reasons" attribute.
199 </dl>
200 <h2 class="title"><a name="EXAMPLES">Examples</a></h2>
201 Run
202 <b>ippeveprinter</b>
203 with a service name of My Cool Printer:
204 <pre class="man">
205
206     ippeveprinter "My Cool Printer"
207 </pre>
208 <p>Run the
209 <b>file</b>(1)
210 command whenever a job is sent to the server:
211 <pre class="man">
212
213     ippeveprinter -c /usr/bin/file "My Cool Printer"
214 </pre>
215 <h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
216 PWG Internet Printing Protocol Workgroup (<a href="http://www.pwg.org/ipp">http://www.pwg.org/ipp</a>)
217 <h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
218 Copyright &copy; 2007-2019 by Apple Inc.
219
220 </body>
221 </html>