Submit Hint Search The Forums LinksStatsPollsHeadlinesRSS
14,000 hints and counting!

10.4: Integrate CUPS 1.2.8 with Mac OS X 10.4.8 UNIX
The nice folks at cups.org have made a good installer package for the latest version of CUPS, 1.2.8. This version is newer than the version of CUPS included in Mac OS X 10.4.8, and offers features like: The ability to move jobs from queue to queue via the web interface (https://localhost:631); secure access via the web interface; and the ability to set print dialog default selections on a per-queue basis.

You may find it useful, especially if you use a Mac OS X or Mac OS X Server system as a print server. However, the installation isn't perfectly smooth, and it breaks some conventions that the Apple-supplied CUPS uses. Read on to see what breaks, and how I worked around those issues...

Here are some of the things that break with CUPS 1.2.8:
  • The default cupsd.conf file that comes with CUPS 1.2.8 overwrites your existing one. The default configuration no longer lets you stop and start print queues via Printer Setup Utility or the various queue monitor applications.
  • In my experience, CUPS 1.2.8 doesn't properly start after it has been installed. The Apple-supplied CUPS uses a StartupItem and a launchd item to start the two cups processes. The cupsd process is run via /System » Library » StartupItems » PrintingServices » PrintingServices, and cups-lpd is run via /System » Library » LaunchDaemons » printer.plist.

    The CUPS 1.2.8 installer creates two launchd items instead. The /System » Library » LaunchDaemons » org.cups.cupsd.plist item is supposed to start cupsd, and the /System » Library » LaunchDaemons » org.cups.cups-lpd.plist is supposed to start cups-lpd.

    However, this technique doesn't work. Further, the installer removes the StartupItem for PrintingServices, and does not remove the Apple-supplied printer.plist launchd item. The result, in my experience, is that cupsd does not always start upon system startup, and cups-lpd may be running twice. My directions revert back to the Apple-supplied StartupItem instead. Even though I agree that a launchd item is better, Apple must have had a reason for keeping the StartupItem.
  • Plus, if you're using the system as a print server, you may have written shell scripts that start and stop the printing services via SystemStarter. The default CUPS 1.2.8 installation will disable the functionality of your scripts.
So, here's my method for properly integrating CUPS 1.2.8 with Mac OS X 10.4.8:
  1. Download CUPS 1.2.8 from http://www.cups.org.
  2. Prior to installation, back up these items:
    • Your CUPS configuration files in /etc/cups. For example: sudo ditto /etc/cups /etc/cups-original
    • The Apple-supplied PrintingServices StartupItem. For example: sudo ditto /System/Library/StartupItems/\
      PrintingServices /System/Library/StartupItems/PrintingServices-original
  3. Install CUPS 1.2.8 (the installer does not require a restart).
  4. After installing, quit any cups processes if they have been restarted: sudo killall cupsd
  5. Remove the launchd items that cups.org supplies: sudo rm /System/Library/LaunchDaemons/org.cups.*
  6. Restore and modify the Apple-supplied PrintingServices StartupItem:
    • Move it back to the right place: sudo mv /System/Library/StartupItems\
      /PrintingServices-original /System/Library/StartupItems/PrintingServices
    • Edit the startup item: sudo nano /System/Library/StartupItems/\
      PrintingServices/PrintingServices
      . Remove the -L argument in the line that contains /usr/sbin/cupsd -L.
  7. Restore your CUPS configuration: sudo mv /etc/cups-original /etc/cups. Note: If you have made changes to your cupsd.conf file, you may have to alter your syntax a little bit to make CUPS 1.2.8 happy. The Apple-supplied cupsd.conf works fine, but I had trouble with some of my modifications in Limit directives. In particular, I found that CUPS 1.2.8 does not like CIDR notation for subnets. So I had to change several lines like this: Allow from 192.168.1.10/24 to Allow from 192.168.1.*
  8. Repair permissions on your startup volume: sudo diskutil repairPermissions /, or use Disk Utility, then reboot the computer.
I hope you find this tip useful!
    •    
  • Currently 1.50 / 5
  You rated: 1 / 5 (4 votes cast)
 
[35,161 views]  

10.4: Integrate CUPS 1.2.8 with Mac OS X 10.4.8 | 11 comments | Create New Account
Click here to return to the '10.4: Integrate CUPS 1.2.8 with Mac OS X 10.4.8' hint
The following comments are owned by whoever posted them. This site is not responsible for what they say.
10.4: Integrate CUPS 1.2.8 with Mac OS X 10.4.8
Authored by: Pip on Mar 02, '07 10:25:58PM

Has anyone had success printing to a CUPS 1.2 server from a Mac running the stock CUPS 1.1 that comes with Tiger? I tried it a few months ago with CUPS 1.2 on Gentoo, and it simply didn't work. I had a bear of a time getting browsing to work, and then whenever I tried to print from a Mac, it threw up a generic error message whenever I tried to print. I'm hoping that I don't need to wait for Leopard for this to be fixed



[ Reply to This | # ]
10.4: Integrate CUPS 1.2.8 with Mac OS X 10.4.8
Authored by: gerritdewitt on Mar 04, '07 08:38:43PM

Yes. I have implemented the above solution using a Mac OS X 10.4.8 client system as the CUPS 1.2.8 print server, with "regular" Mac OS X 10.4.8 client systems and Windows XP systems printing to it.

--Gerrit



[ Reply to This | # ]
10.4: Integrate CUPS 1.2.8 with Mac OS X 10.4.8
Authored by: BagOfMostlyWater on Mar 12, '07 01:43:03PM

Yes, we print to a CUPS daemon on Solaris 8. Unlike Linux and Solaris clients, however, Macs are extremely sluggish when setting ServerName to the CUPS server int /etc/cups/client.conf. The UI pauses intermittently when performing any printing tasks.



[ Reply to This | # ]
10.4: Integrate CUPS 1.2.8 with Mac OS X 10.4.8
Authored by: damian@hallorans on Mar 05, '07 04:32:13AM

Not sure if this has been mentioned previously but you can drag and drop print jobs via the printer/job monitor application (I'm not sure of the proper name) for individual printers. Only discovered this by accident but it does work very reliably.



[ Reply to This | # ]
10.4: Integrate CUPS 1.2.8 with Mac OS X 10.4.8
Authored by: hello999 on Mar 13, '07 08:12:49PM


I installed cups 1.2.8 (needed to be able to point
to nonstandard ports, and 10.4.8 didn't allow that), and then found this hint.
Now I updated to 10.4.9, and nothing works.
Where would I find the original files for this? (i.e. would you
mind making them available somewhere?) Thanks



[ Reply to This | # ]
10.4: Integrate CUPS 1.2.8 with Mac OS X 10.4.8
Authored by: bothomasen on Mar 14, '07 07:19:33AM
I ran into the same problem. I was able to reset the printing environment using the programme Printer Setup Repair (5.05, trial version). Get it from:

http://www.fixamac.net/software/psr5/index.php


- Bo Hovgaard Thomasen


[ Reply to This | # ]
10.4.9
Authored by: gerritdewitt on Mar 15, '07 09:54:15AM

Unfortunately, Mac OS X 10.4.9 and Security Update 2007-003 will break any custom CUPS 1.2.8 installation, as they replace cupsd with a 1.1 version. The easiest way to overcome this is to install the appropriate Mac OS X (Server) 10.4.9 update first, then follow the directions in the hint.

If you have already installed CUPS 1.2.8, but have not yet upgraded to Mac OS X 10.4.9, back up the following items:

* /etc/cups
* /System/Library/StartupItems/PrintingServices
* any customized interface items in /usr/share/doc/cups or /usr/share/cups

Then update to 10.4.9 and re-install CUPS 1.2.8 following the original hint's procedure and using the backed-up files.

--Gerrit



[ Reply to This | # ]
10.4: Integrate CUPS 1.2.8 with Mac OS X 10.4.8
Authored by: ahamel on Mar 17, '07 06:51:10PM

same as hello999.
I can't print, nor add printer, nor acces CUPS interface (but the home page) since I updated to 10.4.9



[ Reply to This | # ]
10.4: Integrate CUPS 1.2.8 with Mac OS X 10.4.8
Authored by: tiedyed on Mar 27, '07 07:11:33PM

Has anyone considered what Lingon can do in this situation? For those not familiar, Lingon is a tidy little utility for getting up close and personal with ALL of your system and user agents and daemons. Including the Cups system. I almost never print anything, so don't have much occasion to deal with the drivers. All I know is I HATE HP's garbage drivers. Nonetheless, seeing the discussion here it seemed to me that Lingon might be a solution when it will enable you to easily modify any system daemon, so it will do what you want...when you want. Good Luck!



[ Reply to This | # ]
10.4: Integrate CUPS 1.2.8 with Mac OS X 10.4.8
Authored by: daveldt on Apr 13, '07 12:04:37AM

Very useful tip. After upgrading to 10.4.9, my HP printers ceased to work. I followed the instructions, and my HP printing is restored. Been trying to resolve the issues for several weeks, and this worked.



[ Reply to This | # ]
10.4: Integrate CUPS 1.2.8 with Mac OS X 10.4.8
Authored by: Decatur on Feb 09, '08 09:10:51AM

Very helpful tip. This worked for me as well. I also had to edit the Hostconfig file and change the cups setting from NO to YES. Prior to that I had to manually start cupsd after every reboot.



[ Reply to This | # ]