3: [[!toc levels=2]]
5: # Introduction
7: The Common Unix Printing System (CUPS) is a modular printing system for Unix-like computer operating systems that allows a computer to act as a powerful print server. A computer running CUPS is a host which can accept print jobs from client computers, process them, and send them to the appropriate printer. More information regarding the architecture of CUPS can be found [here](http://en.wikipedia.org/wiki/Common_Unix_Printing_System).
9: To check whether your printer works with CUPS and to what extent, you may visit the [OpenPrinting database](http://www.linuxprinting.org/printer_list.cgi).
11: # Install CUPS
13: Assuming your [pkgsrc](https://pkgsrc.org) tree lies at `/usr/pkgsrc`, type:
15: # cd /usr/pkgsrc/print/cups
16: # make install
19: # Modify rc.conf
21: Next copy cupsd startup script at /etc/rc.d:
23: # cp /usr/pkg/share/examples/rc.d/cupsd /etc/rc.d
26: Then add the following line to your /etc/rc.conf file:
31: And start the CUPS daemon, with:
33: # /etc/rc.d/cupsd start
34: Starting cupsd.
38: # Install Foomatic PPD collection
40: The Foomatic PPD collection includes suitable PPDs for printers listed in the Foomatic printer/driver database. Together with the foomatic-filters package, this collection of PPDs allows many non-PostScript printers to function as if they were [PostScript](http://en.wikipedia.org/wiki/PostScript) printers:
42: # cd /usr/pkgsrc/print/foomatic-ppds
43: # make install
46: The following package adds Foomatic PPDs to the CUPS PPD database:
48: # cd /usr/pkgsrc/print/foomatic-ppds-cups
49: # make install
52: # Setup CUPS
54: Open a web browser and type in the address/location bar:
59: You will enter a web-based interface where you can manage your printing system (add printers, etc).
61: To print using cups from the command line without further modifications you have to use **/usr/pkg/bin/lpr**. Using simply **lpr** will not print using cups but the default NetBSD printing system. The same apply to the spool queue examination command **lpq**.
63: # Network configuration
65: ## Server side
67: ## Client side
69: # Documentation
71: * [OpenPrinting CUPS Quick Start](http://www.linux-foundation.org/en/OpenPrinting/Database/CUPSDocumentation)
72: * [BSDnexus forums / CUPS Howto](http://forums.bsdnexus.com/viewtopic.php?id=36)
74: # Notes
76: ## Permissions
78: Just for the record (I'm not sure where this fits in): To make it print, I had to
80: chown lp /dev/ulpt0 # usb
83: and install print/hpijs for my Deskjet (it is used by gs via the foomatic thing), then set some additional options in the web interface, e.g. a4 paper size. Conclusion: The web interface sucks, looking into the logs is indispensable.
85: ## BSD lpr
87: I think I no longer need the BSD lpr, so i just did this to avoid confusion:
89: # chmod -x /usr/bin/lp*
90: # chmod -x /usr/sbin/lp*
93: ## HP Printer
95: To use HP printers (like DeskJet, OfficeJet, PhotoSmart, Business InkJet, and some LaserJet models) and to not have this kind of error **/usr/pkg/libexec/cups/filter/foomatic-rip failed**, you need to install another package named hpijs :
97: # cd /usr/pkgsrc/print/hpijs
98: # make install clean clean-depends
101: # See also
103: * [Cups](http://www.cups.org/)
CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb