So you have two basic goals here. Success with one may negate the other. They are to create a print server presumably with a follow me type technology to release the job when the user walks up to a printer. And the second is to allow users to more easily add printers. Let's look at both and then dig a little deeper.
If you are looking for a print server and you want to run it on Mac, look at PaperCut NG and PaperCut MF. The basic difference is that NG is a print server and you can set it up yourself. MF requires integrator assistance as you are adding hardware to each printer to allow a "follow me" printing approach. This means that everyone just prints. They don't need to know anything about the printer, they just print. Then they walk up to the nearest printer, identify themselves, and then the page prints. This can reduce waste, increase privacy, and limit printing (people are lazy, they don't want to get up and get the print out). However, this does not work well for specialized printers like large format printers. if you have a bunch of generic general office printers you will likely be fine.
Now if the first goal works, then there is no need for the second goal. However, if you are not able to implement a print server and you want to focus on the ability of users to add printers, then I have some thoughts. First, you say you have 200 macs. That is a really nice size environment. If this is the case, what are you using for management? If JAMF's Casper Suite, then look no further than Self Service. I tend to create a Printers category and add all printers to the self service tab. Now any user, from any rights level, can add that printer when needed. If you do not have JAMF, do you have any skill with AppleScript? If so, you can make a very simple application that can create printers for the users. The script is backed with the lpadmin command. You first start with creating one printer at a time on a control machine. Use lpoptions -l to identify the settings. For example:
...
SetPageDevice/SetPageDevice: *SetPageDevice
XRTrays/Paper Trays: TwoTrays *ThreeTrays
XRJobStorage/Job Storage Module: False HardDrive *RAMDisk
XRDuplexUnit/Duplex Module: *True
XRJobType/Job Type: *Normal Secure Save
XRSaveContext/XRSaveContext: *Public
XRSaveJobDisposition/Saved Job Title: *Save
GlossyLightCard GlossyHeavyCard Labels Envelope Other ColoredPlain *Auto
InputSlot/Paper Trays: *Tray1 Tray2 Bypass
...
Then you can craft an lpadmin command to add the printer:
lpadmin -p Xerox6605 -E -v lpd://172.16.0.12 -P /Library/Printers/PPDs/Contents/Resources/Xerox\ WorkCentre\ 6605DN.gz -o XRTrays=TwoTrays -o XRJobStorage=HardDrive -o XRDuplexUnit=True -o printer-is-shared=false
Ah, but OS X will deny standard users the ability to add printers via command line. If you have already having issues with printers being paused and you must run around to un-pause, then you might want to consider allowing the users to admin the printer subsystem. For example, in an AD environment, you could use something like:
sudo dseditgroup -o edit -n /Local/Default -u localadmin -p -a “Domain Users” -t group _lpadmin
This adds the AD group Domain Users not the _lpadmin group. If no AD, you can use:
sudo dseditgroup -o edit -n /Local/Default -u localadmin -p -a “staff” -t group _lpadmin
Then using lpadmin is permitted by standard users. Craft an lpadmin command for each of your printers and build a simple Printer Management app. Now all users can simply launch a local app and add printers as needed. If you need to update your App, push it out over ARD.
So once again, either of these can solve your issues. Implementing the print server may negate the need to provide an easy way to add printers. Providing an easy want to add printers may negate the need to implement a print server.
Reid
Apple Consultants Network
Author "Mavericks Server – Foundation Services" :: Exclusively available in Apple's iBooks Store
Author "Mavericks Server – Control and Collaboration" :: Exclusively available in Apple's iBooks Store