Let’s say you want to encourage your users to print in black and white, to save costs, but not annoy them too much.
Assuming you are running Jamf or any other MDM solution capable of running a script once a week, and if you can create two separate print queues, one for color and another for grayscale, this is doable.
This script makes the following assumptions (will be covered in a future tutorial):
- You’ve deployed a .pkg with relevant printer drivers.
- You’ve deployed a configuration profile pre-approving any kernel extensions those drivers might need.
- You’ve set up two local print queues, one for color and another for grayscale, configured these in the CUPS web interface, creating a package deploying the resulting PPDs to /usr/local/ppd. Doing a diff between the two PPDs should reveal the color setting.
- Deploying a configuration profile to make sure the org.cups.PrintingPrefs UseLastPrinter -bool “FALSE” setting also set with the defaults write command in the script sticks.
The script will revert to the grayscale queue once a week, if the color queue is selected. If a different printer, for instance a home printer, is selected, the script does nothing.