Fiery Print Drivers Scripting

Shaare
New Contributor

The first post is always awkward, isn't?

An esteemed colleague, who handled the Mac side of the house has departed and I inherited, temporarily, the mantle. Being a Windows guys, privately I somewhat gasped in disbelief.

Well, I did spend a couple of hours researching before I finally bowed and signed up here. The issue I am having is how to translate a three line .bat script to deploy a Fiery driver in the Mac world? It takes me three lines to do this in Windows. Here, on the mac side, thanks to various posts here, I learned how to decompile the pkg, then sort of got lost in installer.sh and fierydriverinstaller etc.

What I need to provide is a pkg that will silently install the print driver to the correct IP address with the correct printer name. I do have an apple dev id now, and I do not know why this is the requirement I need to execute as that manager is on vacation and his answer had been 'just do it'.

If someone could have the extreme kindness of walking me (and doubtless others) through this I would be most grateful. In fact, I'd want to email you a Starbucks voucher or something.

Thank you for your time, it is most appreciated, and if I can return the favour on the Windows side, one day, then please write me a note.

2 REPLIES 2

Tangentism
Contributor II

To install the PKG, its as simple as:

sudo installer -pkg /path/to/package.pkg -target /

To install the printer, you need another terminal command:

lpadmin -p [PrinterName as it will appear to user] -E -v smb://path/printer/server/and/printer -m /Library/Printers/PPDs/Contents/Resources/[path to driver] -o printer-is-shared=false -o Duplex=DuplexNoTumble

There are a myriad of printer options you cna add with the '-o' flag so best to read up on what you need:

Some basic info Linkt o CUPS page with list of more options

ablend
New Contributor III

Oh EFI and their Fiery install package... the problem you are looking to solve is the fact that it needs GUI interaction to install (wants to install the printer, etc). The best way I've got around this involves using a tool called Autopkg. That's a whole discussion for another post but let's assume you have Autopkg up and running. Next, add the "GenericFieryFD50.pkg.recipe" from foigus (see here):

https://github.com/autopkg/foigus-recipes/tree/master/EFI

Set the variables he describes in the documentation to build a command line capable installer of the driver you need. From there you can upload that installer package into Jamf Admin and deploy it like you would any other package.

Other items to note, if the system already has a Fiery printer installed, EFI claims you need to delete the printer, update the drivers, then re-install the printer. If that particular printer has custom presets configured, I run a script that walks through the users on the system and renames any "com.apple.print.custompresets.forprinter.<fiery_printer_name_here>.plist" to a temporary name, then moves the presets back after reinstalling the printer. The whole policy workflow is:

run save_presets.sh
run lpadmin -x <fiery_printer_name>
install fiery_driver_from_autopkg.pkg
run lpadmin -p <fiery_printer_name> -E -v socket://hostnameoripaddress.of.printer -P /Library/Printers/PPDs/Contents/Resources/en.lproj/pathtofieryppdfile -o printer-is-shared=false -o putadditionaloptionshere
run put_presets_back.sh