Name Date Size #Lines LOC

..--

backend/H25-Apr-2025-17,93111,467

berkeley/H25-Apr-2025-1,9891,302

cgi-bin/H25-Apr-2025-12,7007,820

conf/H25-Apr-2025-666496

config-scripts/H25-Apr-2025-2,4312,105

cups/H25-Apr-2025-102,19965,476

data/H25-Apr-2025-507372

desktop/H25-Apr-2025-741660

doc/H25-Apr-2025-38,83330,567

examples/H25-Apr-2025-16,93014,417

filter/H25-Apr-2025-12,7358,129

locale/H25-Apr-2025-198,131147,425

man/H25-Apr-2025-8,4837,285

monitor/H25-Apr-2025-687363

notifier/H25-Apr-2025-2,3031,354

packaging/H25-Apr-2025-1,5701,324

ppdc/H25-Apr-2025-11,8338,577

scheduler/H25-Apr-2025-62,98239,975

scripts/H25-Apr-2025-245163

systemv/H25-Apr-2025-10,9837,892

templates/H25-Apr-2025-8,9187,279

test/H25-Apr-2025-3,0722,399

tools/H25-Apr-2025-22,56516,762

vcnet/H25-Apr-2025-11,5737,843

xcode/H25-Apr-2025-13,35412,805

.gitattributesH A D25-Apr-2025121 65

.gitignoreH A D25-Apr-20252.6 KiB157155

.lgtm.ymlH A D25-Apr-2025250 87

.mailmapH A D25-Apr-2025591 1211

Android.bpH A D25-Apr-20254.1 KiB144133

CHANGES.mdH A D25-Apr-202525.2 KiB506459

CONTRIBUTING.mdH A D25-Apr-2025694 1612

CREDITS.mdH A D25-Apr-20253 KiB5551

DEVELOPING.mdH A D25-Apr-202521.9 KiB627467

INSTALL.mdH A D25-Apr-20257.7 KiB228156

LICENSEH A D25-Apr-202511.1 KiB203169

METADATAH A D25-Apr-2025680 2726

MODULE_LICENSE_LGPLHD25-Apr-20250

Makedefs.inH A D25-Apr-20256 KiB276230

MakefileH A D25-Apr-20255.7 KiB293145

NOTICEH A D25-Apr-20252.3 KiB5238

OWNERSH A D25-Apr-202587 54

README.mdH A D25-Apr-20257.1 KiB176121

config.guessH A D25-Apr-202544.7 KiB1,5691,356

config.hH A D25-Apr-20251.9 KiB6445

config.h.inH A D25-Apr-20259 KiB681433

config.subH A D25-Apr-202534.8 KiB1,7941,656

configureH A D25-Apr-2025292.2 KiB11,1779,107

configure.acH A D25-Apr-20252.2 KiB8271

cups-config.inH A D25-Apr-20252.4 KiB129101

install-shH A D25-Apr-20255.4 KiB233145

post_update.shH A D25-Apr-2025141 82

README.md

1README - Apple CUPS v2.3.6 - 2022-05-25
2=======================================
3
4> Note: Apple CUPS is the version of CUPS that is shipped with macOS and iOS.
5> For the current version of CUPS that is used on other operating systems, see
6> <https://openprinting.github.io/cups> for details.
7
8
9INTRODUCTION
10------------
11
12CUPS is a standards-based, open source printing system developed by Apple Inc.
13for macOS® and other UNIX®-like operating systems.  CUPS uses the Internet
14Printing Protocol ("IPP") and provides System V and Berkeley command-line
15interfaces, a web interface, and a C API to manage printers and print jobs.  It
16supports printing to both local (parallel, serial, USB) and networked printers,
17and printers can be shared from one computer to another, even over the Internet!
18
19Internally, CUPS uses PostScript Printer Description ("PPD") files to describe
20printer capabilities and features and a wide variety of generic and device-
21specific programs to convert and print many types of files.  Sample drivers are
22included with CUPS to support many Dymo, EPSON, HP, Intellitech, OKIDATA, and
23Zebra printers.  Many more drivers are available online and (in some cases) on
24the driver CD-ROM that came with your printer.
25
26CUPS is licensed under the Apache License Version 2.0.  See the file
27"LICENSE" for more information.
28
29
30READING THE DOCUMENTATION
31-------------------------
32
33Initial documentation to get you started is provided in the root directory of
34the CUPS sources:
35
36- `CHANGES.md`: A list of changes in the current major release of CUPS.
37- `CONTRIBUTING.md`: Guidelines for contributing to the CUPS project.
38- `CREDITS.md`: A list of past contributors to the CUPS project.
39- `DEVELOPING.md`: Guidelines for developing code for the CUPS project.
40- `INSTALL.md`: Instructions for building and installing CUPS.
41- `LICENSE`: The CUPS license agreement (Apache 2.0).
42- `NOTICE`: Copyright notices and exceptions to the CUPS license agreement.
43- `README.md`: This file.
44
45Once you have installed the software you can access the documentation (and a
46bunch of other stuff) online at <http://localhost:631/> and using the `man`
47command, for example `man cups`.
48
49If you're having trouble getting that far, the documentation is located under
50the `doc/help` and `man` directories.
51
52Please read the documentation before asking questions.
53
54
55GETTING SUPPORT AND OTHER RESOURCES
56-----------------------------------
57
58If you have problems, *read the documentation first!*  We also provide two
59mailing lists which are available at <https://lists.cups.org/mailman/listinfo>.
60
61See the CUPS web site at <https://www.cups.org/> for other resources.
62
63
64SETTING UP PRINTER QUEUES USING YOUR WEB BROWSER
65------------------------------------------------
66
67CUPS includes a web-based administration tool that allows you to manage
68printers, classes, and jobs on your server.  Open <http://localhost:631/admin/>
69in your browser to access the printer administration tools:
70
71*Do not* use the hostname for your machine - it will not work with the default
72CUPS configuration.  To enable administration access on other addresses, check
73the `Allow Remote Administration` box and click on the `Change Settings` button.
74
75You will be asked for the administration password (root or any other user in the
76"sys", "system", "root", "admin", or "lpadmin" group on your system) when
77performing any administrative function.
78
79
80SETTING UP PRINTER QUEUES FROM THE COMMAND-LINE
81-----------------------------------------------
82
83CUPS currently uses PPD (PostScript Printer Description) files that describe
84printer capabilities and driver programs needed for each printer.  The
85`everywhere` PPD is used for nearly all modern networks printers sold since
86about 2009.  For example, the following command creates a print queue for a
87printer at address "11.22.33.44":
88
89    lpadmin -p printername -E -v ipp://11.22.33.44/ipp/print -m everywhere
90
91CUPS also includes several sample PPD files you can use for "legacy" printers:
92
93   Driver                         | PPD Name
94   -----------------------------  | ------------------------------
95   Dymo Label Printers            | drv:///sample.drv/dymo.ppd
96   Intellitech Intellibar         | drv:///sample.drv/intelbar.ppd
97   EPSON 9-pin Series             | drv:///sample.drv/epson9.ppd
98   EPSON 24-pin Series            | drv:///sample.drv/epson24.ppd
99   Generic PCL Laser Printer      | drv:///sample.drv/generpcl.ppd
100   Generic PostScript Printer     | drv:///sample.drv/generic.ppd
101   HP DeskJet Series              | drv:///sample.drv/deskjet.ppd
102   HP LaserJet Series             | drv:///sample.drv/laserjet.ppd
103   OKIDATA 9-Pin Series           | drv:///sample.drv/okidata9.ppd
104   OKIDATA 24-Pin Series          | drv:///sample.drv/okidat24.ppd
105   Zebra CPCL Label Printer       | drv:///sample.drv/zebracpl.ppd
106   Zebra EPL1 Label Printer       | drv:///sample.drv/zebraep1.ppd
107   Zebra EPL2 Label Printer       | drv:///sample.drv/zebraep2.ppd
108   Zebra ZPL Label Printer        | drv:///sample.drv/zebra.ppd
109
110You can run the `lpinfo -m` command to list all of the available drivers:
111
112    lpinfo -m
113
114Run the `lpinfo -v` command to list the available printers:
115
116    lpinfo -v
117
118Then use the correct URI to add the printer using the `lpadmin` command:
119
120    lpadmin -p printername -E -v device-uri -m ppd-name
121
122Current network printers typically use `ipp` or `ipps` URIS:
123
124    lpadmin -p printername -E -v ipp://11.22.33.44/ipp/print -m everywhere
125    lpadmin -p printername -E -v ipps://11.22.33.44/ipp/print -m everywhere
126
127Older network printers typically use `socket` or `lpd` URIs:
128
129    lpadmin -p printername -E -v socket://11.22.33.44 -m ppd-name
130    lpadmin -p printername -E -v lpd://11.22.33.44/ -m ppd-name
131
132The sample drivers provide basic printing capabilities, but generally do not
133exercise the full potential of the printers or CUPS.  Other drivers provide
134greater printing capabilities.
135
136
137PRINTING FILES
138--------------
139
140CUPS provides both the System V `lp` and Berkeley `lpr` commands for printing:
141
142    lp filename
143    lpr filename
144
145Both the `lp` and `lpr` commands support printing options for the driver:
146
147    lp -o media=A4 -o resolution=600dpi filename
148    lpr -o media=A4 -o resolution=600dpi filename
149
150CUPS recognizes many types of images files as well as PDF, PostScript, and text
151files, so you can print those files directly rather than through an application.
152
153If you have an application that generates output specifically for your printer
154then you need to use the `-oraw` or `-l` options:
155
156    lp -o raw filename
157    lpr -l filename
158
159This will prevent the filters from misinterpreting your print file.
160
161
162LEGAL STUFF
163-----------
164
165Copyright © 2007-2021 by Apple Inc.
166Copyright © 1997-2007 by Easy Software Products.
167
168CUPS is provided under the terms of the Apache License, Version 2.0 with
169exceptions for GPL2/LGPL2 software.  A copy of this license can be found in the
170file `LICENSE`.  Additional legal information is provided in the file `NOTICE`.
171
172Unless required by applicable law or agreed to in writing, software distributed
173under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
174CONDITIONS OF ANY KIND, either express or implied.  See the License for the
175specific language governing permissions and limitations under the License.
176