mirror of https://gitee.com/openkylin/cups.git
275 lines
8.1 KiB
Groff
275 lines
8.1 KiB
Groff
.\"
|
||
.\" ippeveprinter man page for CUPS.
|
||
.\"
|
||
.\" Copyright © 2021-2023 by OpenPrinting.
|
||
.\" Copyright © 2014-2019 by Apple Inc.
|
||
.\"
|
||
.\" Licensed under Apache License v2.0. See the file "LICENSE" for more
|
||
.\" information.
|
||
.\"
|
||
.TH ippeveprinter 1 "CUPS" "2021-02-28" "OpenPrinting"
|
||
.SH NAME
|
||
ippeveprinter \- an ipp everywhere printer application for cups
|
||
.SH SYNOPSIS
|
||
.B ippeveprinter
|
||
[
|
||
.B \-\-help
|
||
] [
|
||
.B \-\-no\-web\-forms
|
||
] [
|
||
.B \-\-pam\-service
|
||
.I service
|
||
] [
|
||
.B \-\-version
|
||
] [
|
||
.B \-2
|
||
] [
|
||
.B \-A
|
||
] [
|
||
.B \-D
|
||
.I device-uri
|
||
] [
|
||
.B \-F
|
||
.I output-type/subtype
|
||
] [
|
||
.B \-K
|
||
.I keypath
|
||
] [
|
||
.B \-M
|
||
.I manufacturer
|
||
] [
|
||
.B \-P
|
||
.I filename.ppd
|
||
] [
|
||
.B \-V
|
||
.I ipp-version
|
||
] [
|
||
.B \-a
|
||
.I filename.conf
|
||
] [
|
||
.B \-c
|
||
.I command
|
||
] [
|
||
.B \-d
|
||
.I spool-directory
|
||
] [
|
||
.B \-f
|
||
.I type/subtype[,...]
|
||
] [
|
||
.B \-i
|
||
.I iconfile.png
|
||
] [
|
||
.B \-k
|
||
] [
|
||
.B \-l
|
||
.I location
|
||
] [
|
||
.B \-m
|
||
.I model
|
||
] [
|
||
.B \-n
|
||
.I hostname
|
||
] [
|
||
.B \-p
|
||
.I port
|
||
] [
|
||
.B \-r
|
||
.I subtype[,subtype]
|
||
] [
|
||
.B \-s
|
||
.I speed[,color-speed]
|
||
] [
|
||
.B \-v[vvv]
|
||
]
|
||
.I service-name
|
||
.SH DESCRIPTION
|
||
.B ippeveprinter
|
||
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.
|
||
.SH OPTIONS
|
||
The following options are recognized by
|
||
.B ippeveprinter:
|
||
.TP 5
|
||
.B \-\-help
|
||
Show program usage.
|
||
.TP 5
|
||
.B \-\-no\-web\-forms
|
||
Disable the web interface forms used to update the media and supply levels.
|
||
.TP 5
|
||
\fB\-\-pam\-service \fIservice\fR
|
||
Set the PAM service name.
|
||
The default service is "cups".
|
||
.TP 5
|
||
.B \-\-version
|
||
Show the CUPS version.
|
||
.TP 5
|
||
.B \-2
|
||
Report support for two-sided (duplex) printing.
|
||
.TP 5
|
||
.B \-A
|
||
Enable authentication for the created printer.
|
||
.B ippeveprinter
|
||
uses PAM to authenticate HTTP Basic credentials.
|
||
.TP 5
|
||
\fB\-D \fIdevice-uri\fR
|
||
Set the device URI for print output.
|
||
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).
|
||
When specifying a directory,
|
||
.B ippeveprinter
|
||
will create an output file using the job ID and name.
|
||
.TP 5
|
||
\fB\-F \fIoutput-type/subtype[,...]\fR
|
||
Specifies the output MIME media type.
|
||
The default is "application/postscript" when the \fB\-P\fR option is specified.
|
||
.TP 5
|
||
\fB\-M \fImanufacturer\fR
|
||
Set the manufacturer of the printer.
|
||
The default is "Example".
|
||
.TP 5
|
||
\fB\-P \fIfilename.ppd\fR
|
||
Load printer attributes from the specified PPD file.
|
||
This option is typically used in conjunction with the
|
||
.BR ippeveps (7)
|
||
printer command ("\-c ippeveps").
|
||
.TP 5
|
||
\fB\-V 1.1\fR
|
||
.TP 5
|
||
\fB\-V 2.0\fR
|
||
Specifies the maximum IPP version to report.
|
||
2.0 is the default.
|
||
.TP 5
|
||
\fB\-c \fIcommand\fR
|
||
Run the specified command for each document that is printed.
|
||
If "command" is not an absolute path ("/path/to/command"),
|
||
.B ippeveprinter
|
||
looks for the command in the "command" subdirectory of the CUPS binary directory, typically /usr/lib/cups/command or /usr/libexec/cups/command.
|
||
The
|
||
.BR cups-config (1)
|
||
command can be used to discover the correct binary directory ("cups-config --serverbin").
|
||
In addition, the CUPS_SERVERBIN environment variable can be used to override the default location of this directory - see the
|
||
.BR cups (1)
|
||
man page for more details.
|
||
.TP 5
|
||
\fB\-d \fIspool-directory\fR
|
||
Specifies the directory that will hold the print files.
|
||
The default is a directory under the user's current temporary directory.
|
||
.TP 5
|
||
\fB\-f \fItype/subtype[,...]\fR
|
||
Specifies a list of MIME media types that the server will accept.
|
||
The default depends on the type of printer created.
|
||
.TP 5
|
||
\fB\-i \fIiconfile.png\fR
|
||
Specifies the printer icon file for the server.
|
||
The file must be a PNG format image.
|
||
The default is an internally-provided PNG image.
|
||
.TP 5
|
||
.B \-k
|
||
Keeps the print documents in the spool directory rather than deleting them.
|
||
.TP 5
|
||
\fB\-l \fIlocation\fR
|
||
Specifies the human-readable location string that is reported by the server.
|
||
The default is the empty string.
|
||
.TP 5
|
||
\fB\-m \fImodel\fR
|
||
Specifies the model name of the printer.
|
||
The default is "Printer".
|
||
.TP 5
|
||
\fB\-n \fIhostname\fR
|
||
Specifies the hostname that is reported by the server.
|
||
The default is the name returned by the
|
||
.BR hostname (1)
|
||
command.
|
||
.TP 5
|
||
\fB\-p \fIport\fR
|
||
Specifies the port number to listen on.
|
||
The default is a user-specific number from 8000 to 8999.
|
||
.TP 5
|
||
.B \-r off
|
||
Turns off DNS-SD service advertisements entirely.
|
||
.TP 5
|
||
\fB\-r \fIsubtype[,subtype]\fR
|
||
Specifies the DNS-SD subtype(s) to advertise.
|
||
Separate multiple subtypes with a comma.
|
||
The default is "_print".
|
||
.TP 5
|
||
\fB\-s \fIspeed[,color-speed]\fR
|
||
Specifies the printer speed in pages per minute.
|
||
If two numbers are specified and the second number is greater than zero, the server will report support for color printing.
|
||
The default is "10,0".
|
||
.TP 5
|
||
.B \-v[vvv]
|
||
Be (very) verbose when logging activity to standard error.
|
||
.SH EXIT STATUS
|
||
The
|
||
.B ippeveprinter
|
||
program returns 1 if it is unable to process the command-line arguments or register the IPP service.
|
||
Otherwise
|
||
.B ippeveprinter
|
||
will run continuously until terminated.
|
||
.SH CONFORMING TO
|
||
The
|
||
.B ippeveprinter
|
||
program is unique to CUPS and conforms to the IPP Everywhere (PWG 5100.14) specification.
|
||
.SH ENVIRONMENT
|
||
.B ippeveprinter
|
||
adds environment variables starting with "IPP_" for all IPP Job attributes in the print request.
|
||
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.
|
||
.LP
|
||
In addition, all IPP "xxx-default" and "pwg-xxx" Printer Description attributes are added to the environment.
|
||
For example, the "IPP_MEDIA_DEFAULT" environment variable will be set to the default value for the "media" Job Template attribute.
|
||
.LP
|
||
Enumerated values are converted to their keyword equivalents.
|
||
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".
|
||
This string conversion only happens for standard Job Template attributes, currently "finishings", "orientation-requested", and "print-quality".
|
||
.LP
|
||
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, the "OUTPUT_FORMAT" environment variable contains the output MIME media type, and the "PPD" environment variable contains the PPD filename as specified with the "\-P" option.
|
||
.SH COMMAND OUTPUT
|
||
Unless they communicate directly with a printer, print commands send printer-ready data to the standard output.
|
||
.LP
|
||
Print commands can send messages back to
|
||
.B ippeveprinter
|
||
on the standard error with one of the following prefixes:
|
||
.TP 5
|
||
\fBATTR: \fIattribute=value[ attribute=value]\fR
|
||
Sets the named attribute(s) to the given values.
|
||
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.
|
||
.TP 5
|
||
\fBDEBUG: \fIDebugging message\fR
|
||
Logs a debugging message if at least two \-v's have been specified.
|
||
.TP 5
|
||
\fBERROR: \fIError message\fR
|
||
Logs an error message and copies the message to the "job-state-message" attribute.
|
||
.TP 5
|
||
\fBINFO: \fIInformational message\fR
|
||
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.
|
||
.TP 5
|
||
\fBSTATE: \fIkeyword[,keyword,...]\fR
|
||
Sets the printer's "printer-state-reasons" attribute to the listed keywords.
|
||
.TP 5
|
||
\fBSTATE: -\fIkeyword[,keyword,...]\fR
|
||
Removes the listed keywords from the printer's "printer-state-reasons" attribute.
|
||
.TP 5
|
||
\fBSTATE: +\fIkeyword[,keyword,...]\fR
|
||
Adds the listed keywords to the printer's "printer-state-reasons" attribute.
|
||
.SH EXAMPLES
|
||
Run
|
||
.B ippeveprinter
|
||
with a service name of My Cool Printer:
|
||
.nf
|
||
|
||
ippeveprinter "My Cool Printer"
|
||
.fi
|
||
.LP
|
||
Run the
|
||
.BR file (1)
|
||
command whenever a job is sent to the server:
|
||
.nf
|
||
|
||
ippeveprinter \-c /usr/bin/file "My Cool Printer"
|
||
.fi
|
||
.SH SEE ALSO
|
||
.BR ippevepcl (7),
|
||
.BR ippeveps (7),
|
||
PWG Internet Printing Protocol Workgroup (http://www.pwg.org/ipp)
|
||
.SH COPYRIGHT
|
||
Copyright \[co] 2021-2023 by OpenPrinting.
|