Hack the CUPS server to enable AirPrint - wireless printing from your iPad/iPhone. It uses Avahi - a system which facilitates service discovery on a local network via the mDNS/DNS-SD protocol suite, such as Apple's Bonjour - to allow your iOS device to find your CUPS printers.

Edit /etc/cups/cupds.conf and add:

ServerAlias *
yum install avahi-daemon

Download airprint-generate. This script will generate avahi .service files for shared CUPS printers. This script will connect to a CUPS server and for each printer configured and marked as shared will generate a .service file for avahi that is compatible with Apple's AirPrint announcements.

cd /extra
wget --no-check-certificate

The script will require CUPS support in Python (pycups) to run which can be installed with:

yum install system-config-printer-libs

The script would still give an error about Failed to find python libxml or elementtree, which you can fix by editing line 43 of

from cElementTree import Element, ElementTree, tostring

Copy the generated files to /etc/avahi/services/:

cp AirPrint-*.service /etc/avahi/services/

Restart avahi:

service avavhi-daemon restart

AirPrint and Linux
Printing from iPad (AirPrint) via CUPS
AirPrint for Mac on Linux
AirPrint in corporate networks

Recent Updates

  • 5 months 1 week ago
  • 5 months 2 weeks ago
    Removed original versions of ucspi-tcp and ucspi-ssl and replaced them with upgraded versions. The old ones were failing PCI compliance tests by Security Metrics. ucspi-ssl also had issues installing on CentOS 7 - new version installed without issues.
  • 5 months 2 weeks ago
    1.3.7 update
  • 5 months 2 weeks ago
  • 5 months 3 weeks ago