CAPS Universe documentation  1.0.4
All you need to know to be successful
Printer Preparation Tool

Whenever a printer device gets connected to the host (e.g. it goes online), the CAPS Printer Preparation Tool is started via udev. This tool is the sole executable in the CAPS universe, which requires root permissions: it needs to create directories and files in the Setup the CAPS Device Database Directory on demand and needs to change the owner of these directories and files. This is to limit all other components of the CAPS universe to read-only regarding these directories and files.

This tool creates an individual subdirectory for each printer device in the Setup the CAPS Device Database Directory, if it is connected the first time. In this case a base configuration for this printing device is created as well. A user with root permission can adapt this configuration later on. The CAPS Printer Preparation Tool also adds this device to the run-time printing device database in the Setup the CAPS Device Database Directory to have it in place for the Printer Driver Launcher

systemd expects a return value of '0' if everything is okay, '1…254' if the unit should be skipped but not marked as failed and '255' to mark the unit as failed.

If the just connected printing device is already known, the CAPS Printer Preparation Tool terminates immediately. There is nothing to be done for it in this case.

As a parameter it receive the corresponding printer's device node via '–node=<nodename>'. It runs as a systemd service with 'Type=notify'.

This tool depends on The Printer Driver Launcher and udev and the systemd service unit caps-printer.service.