When I add a printer (HP Color LaserJet CP3525) interactively, macOS determines the device type and is able to configure the printer without further user input.

Is it possible to emulate this with command line tools? I tried

lpadmin -p _a_b_c_d -v ipp://a.b.c.d

but get a printer with the setting

printer-make-and-model='Local Raw Printer'

Edit: Apparently, the PPD for the printer is installed through software update, using a search predicate of

("printing software" IN tags OR "printer update" IN tags) AND 
"MANUFACTURER:Hewlett-Packard;MODEL:HP Color LaserJet CP3525" IN tags

I'm still uncertain on how to force this installation through the command line. I tried to use predicate_installer.py, but that hangs.

  • Does this do what you want? apple.stackexchange.com/a/275394/119271 – Allan Feb 27 at 19:51
  • No. it requires me to specify a PPD. According to a warning, PPDs are deprecated. Plus, the Apple UI is capable of installing the printer without knowing what PPD to use. – Martin v. Löwis Feb 27 at 21:55
  • Deprecated just means no more development going forward, not that it's no longer supported. – Allan Feb 28 at 2:16
  • Well, my main point is that I don't know what PPD to use for this printer, and that macOS is able to find out on its own. I want to access this functionality on the command line. – Martin v. Löwis Feb 28 at 9:26
  • Any reason you can't add the print interactively in order to obtain and determine the correct PPD, and then use that on the CLI? (PPDs are very much still an integral part of CUPS, and there is still no schedule for their removal.) – benwiggy Feb 28 at 11:13

You must log in to answer this question.

Browse other questions tagged .