1ippeveprinter(1)                 OpenPrinting                 ippeveprinter(1)
2
3
4

NAME

6       ippeveprinter - an ipp everywhere printer application for cups
7

SYNOPSIS

9       ippeveprinter [ --help ] [ --no-web-forms ] [ --pam-service service ] [
10       --version ] [ -2 ] [ -A ] [ -D device-uri ] [ -F output-type/subtype  ]
11       [ -K keypath ] [ -M manufacturer ] [ -P filename.ppd ] [ -V ipp-version
12       ] [ -a filename.conf ] [ -c command ]  [  -d  spool-directory  ]  [  -f
13       type/subtype[,...]   ]  [ -i iconfile.png ] [ -k ] [ -l location ] [ -m
14       model ] [ -n hostname ] [ -p port ]  [  -r  subtype[,subtype]  ]  [  -s
15       speed[,color-speed] ] [ -v[vvv] ] service-name
16

DESCRIPTION

18       ippeveprinter  is a simple Internet Printing Protocol (IPP) server con‐
19       forming to the IPP Everywhere (PWG 5100.14) specification.  It  can  be
20       used  to  test client software or act as a very basic print server that
21       runs a command for every job that is printed.
22

OPTIONS

24       The following options are recognized by ippeveprinter:
25
26       --help
27            Show program usage.
28
29       --no-web-forms
30            Disable the web interface forms used to update the media and  sup‐
31            ply levels.
32
33       --pam-service service
34            Set the PAM service name.  The default service is "cups".
35
36       --version
37            Show the CUPS version.
38
39       -2   Report support for two-sided (duplex) printing.
40
41       -A   Enable authentication for the created printer.  ippeveprinter uses
42            PAM to authenticate HTTP Basic credentials.
43
44       -D device-uri
45            Set the device URI for print output.  The URI can be  a  filename,
46            directory,  or  a  network  socket  URI  of the form "socket://AD‐
47            DRESS[:PORT]" (where the default port number is 9100).  When spec‐
48            ifying a directory, ippeveprinter will create an output file using
49            the job ID and name.
50
51       -F output-type/subtype[,...]
52            Specifies the output MIME media type.  The  default  is  "applica‐
53            tion/postscript" when the -P option is specified.
54
55       -M manufacturer
56            Set the manufacturer of the printer.  The default is "Example".
57
58       -P filename.ppd
59            Load  printer attributes from the specified PPD file.  This option
60            is typically used in conjunction with the ippeveps(7) printer com‐
61            mand ("-c ippeveps").
62
63       -V 1.1
64
65       -V 2.0
66            Specifies the maximum IPP version to report.  2.0 is the default.
67
68       -c command
69            Run  the  specified command for each document that is printed.  If
70            "command"  is   not   an   absolute   path   ("/path/to/command"),
71            ippeveprinter  looks for the command in the "command" subdirectory
72            of the CUPS binary directory, typically  /usr/lib/cups/command  or
73            /usr/libexec/cups/command.  The cups-config(1) command can be used
74            to   discover   the   correct   binary   directory   ("cups-config
75            --serverbin").   In addition, the CUPS_SERVERBIN environment vari‐
76            able can be used to override the default location of  this  direc‐
77            tory - see the cups(1) man page for more details.
78
79       -d spool-directory
80            Specifies  the  directory that will hold the print files.  The de‐
81            fault is a directory under the user's current temporary directory.
82
83       -f type/subtype[,...]
84            Specifies a list of MIME media types that the server will  accept.
85            The default depends on the type of printer created.
86
87       -i iconfile.png
88            Specifies  the printer icon file for the server.  The file must be
89            a PNG format image.  The default is an internally-provided PNG im‐
90            age.
91
92       -k   Keeps  the  print  documents  in  the  spool directory rather than
93            deleting them.
94
95       -l location
96            Specifies the human-readable location string that is  reported  by
97            the server.  The default is the empty string.
98
99       -m model
100            Specifies   the  model  name  of  the  printer.   The  default  is
101            "Printer".
102
103       -n hostname
104            Specifies the hostname that is reported by the  server.   The  de‐
105            fault is the name returned by the hostname(1) command.
106
107       -p port
108            Specifies  the  port  number to listen on.  The default is a user-
109            specific number from 8000 to 8999.
110
111       -r off
112            Turns off DNS-SD service advertisements entirely.
113
114       -r subtype[,subtype]
115            Specifies the DNS-SD subtype(s) to advertise.   Separate  multiple
116            subtypes with a comma.  The default is "_print".
117
118       -s speed[,color-speed]
119            Specifies  the  printer speed in pages per minute.  If two numbers
120            are specified and the second number  is  greater  than  zero,  the
121            server  will  report  support  for color printing.  The default is
122            "10,0".
123
124       -v[vvv]
125            Be (very) verbose when logging activity to standard error.
126

EXIT STATUS

128       The ippeveprinter program returns 1 if it is unable to process the com‐
129       mand-line   arguments   or   register   the   IPP  service.   Otherwise
130       ippeveprinter will run continuously until terminated.
131

CONFORMING TO

133       The ippeveprinter program is unique to CUPS and conforms to the IPP Ev‐
134       erywhere (PWG 5100.14) specification.
135

ENVIRONMENT

137       ippeveprinter  adds  environment variables starting with "IPP_" for all
138       IPP Job attributes in the print request.  For example, when executing a
139       command  for  an IPP Job containing the "media" Job Template attribute,
140       the "IPP_MEDIA" environment variable will be set to the value  of  that
141       attribute.
142
143       In  addition,  all  IPP "xxx-default" and "pwg-xxx" Printer Description
144       attributes are added to the environment.   For  example,  the  "IPP_ME‐
145       DIA_DEFAULT"  environment variable will be set to the default value for
146       the "media" Job Template attribute.
147
148       Enumerated values are converted to their keyword equivalents.  For  ex‐
149       ample,  a "print-quality" Job Template attribute with a enum value of 3
150       will become the "IPP_PRINT_QUALITY" environment variable with  a  value
151       of  "draft".  This string conversion only happens for standard Job Tem‐
152       plate attributes, currently "finishings", "orientation-requested",  and
153       "print-quality".
154
155       Finally,  the "CONTENT_TYPE" environment variable contains the MIME me‐
156       dia type of the document being printed,  the  "DEVICE_URI"  environment
157       variable contains the device URI as specified with the "-D" option, the
158       "OUTPUT_FORMAT" environment variable contains  the  output  MIME  media
159       type,  and  the "PPD" environment variable contains the PPD filename as
160       specified with the "-P" option.
161

COMMAND OUTPUT

163       Unless they communicate directly with a printer,  print  commands  send
164       printer-ready data to the standard output.
165
166       Print  commands can send messages back to ippeveprinter on the standard
167       error with one of the following prefixes:
168
169       ATTR: attribute=value[ attribute=value]
170            Sets the named attribute(s) to the given values.   Currently  only
171            the  "job-impressions"  and "job-impressions-completed" Job Status
172            attributes and the "marker-xxx", "printer-alert",  "printer-alert-
173            description",  "printer-supply",  and "printer-supply-description"
174            Printer Status attributes can be set.
175
176       DEBUG: Debugging message
177            Logs a debugging message if at least two -v's have been specified.
178
179       ERROR: Error message
180            Logs an error message and copies the message  to  the  "job-state-
181            message" attribute.
182
183       INFO: Informational message
184            Logs  an  informational/progress  message if -v has been specified
185            and copies the message to the "job-state-message" attribute unless
186            an error has been reported.
187
188       STATE: keyword[,keyword,...]
189            Sets the printer's "printer-state-reasons" attribute to the listed
190            keywords.
191
192       STATE: -keyword[,keyword,...]
193            Removes the listed keywords from the printer's "printer-state-rea‐
194            sons" attribute.
195
196       STATE: +keyword[,keyword,...]
197            Adds  the listed keywords to the printer's "printer-state-reasons"
198            attribute.
199

EXAMPLES

201       Run ippeveprinter with a service name of My Cool Printer:
202
203           ippeveprinter "My Cool Printer"
204
205       Run the file(1) command whenever a job is sent to the server:
206
207           ippeveprinter -c /usr/bin/file "My Cool Printer"
208

SEE ALSO

210       ippevepcl(7), ippeveps(7), PWG  Internet  Printing  Protocol  Workgroup
211       (http://www.pwg.org/ipp)
212
214       Copyright © 2021-2023 by OpenPrinting.
215
216
217
2182021-02-28                           CUPS                     ippeveprinter(1)
Impressum