Canon Selphy CP1500 printer, custom ppd file and icc profile

I got this printer which cups does not seem to find a driver for.

Discovery over USB works fine, ipp-usb is not needed.

There is a Github repo with the drivers from some amazing person. I added the ppd file, but it looks for the icc profile in the wrong place.

$ lpstat -p
printer SELPHY_CP1500 is idle.  enabled since Sat 13 Jun 2026 12:54:41 PM CEST
        File "/usr/share/ppd/custom/CP1500/Color.icc" not available: No such file or directory

I just enabled cups, nothing else.

How can I add a custom ppd file and icc profile as cups driver so that they can be used? Or should I try and add more driver packages and see if it is included there?

Workaround using packages

I will try adding a bunch of driver packages and see if they include one. The wiki example seems to be pretty incomplete as there are way more packages, most notably foomatic-db-ppds and foomatic-db-ppds-withNonfreeDb (somehow from the openprinting project)

it seems that gutenprint or gutenprint-bin includes the missing driver.

Nonetheless, I think it would be really worth documenting how to add .ppd and .icc files for missing printers manually.

Troubles

The driver works flawlessly but it seems the ICC profile is missing. So adding that would be good

Hi,

the specifications for this printer feature macos support and wifi printing. As a result it is very probable that it supports driverless (IPP) printing and airscan for scanning. If you use the printer by usb rather than wifi, please enable ipp-usb:

services.ipp-usb.enable

and add the sane-airscan backend for scanning:

hardware.sane.extraBackends = [ pkgs.sane-airscan ];
services.udev.packages = [ pkgs.sane-airscan ];

(from Scanners - Official NixOS Wiki )

When you do so, it is likely that your printer will be listed as several printers: once driverless, and once with the vendor specific printer that you are struggling with. Please try both :slight_smile:

1 Like