CAPS Universe documentation  1.0.4
All you need to know to be successful
Printing Device INI files hierarchy

A printing provider/printer driver gets its run-time configuration from a set of INI files. Whenever a printing driver launches, libcapsprovider reads in these INI files and merges their content into one key/value database the printing driver can query. The content of the key/value database is intended to configure and parametrize the printing driver at run-time.

INI File name Meaning Expected Location
caps.ini Shared initialization CAPS Configuration Directory
capsdriver.ini Shared class initialization CAPS Printer Driver Configuration Directory
devicedriver.ini (see note) Device Description CAPS Printer Driver Database Directory
feature.ini (see note) Driver Feature Configuration optional, CAPS Printer Driver Configuration Directory
parameter.ini (see note) Printing Device Parameters CAPS Printer Device Parameter Directory
Note
The devicedriver.ini is only an example name for a Device Description INI file. Its real name correlates with the printing device.
The feature.ini is only an example name for a Driver Feature Configuration INI file. It is defined in the devicedriver.ini and is optional.
The parameter.ini is only an example for one of the Printing Device Parameters INI files. All INI files from the physical printing device's directory are read-in.

The Device Description INI file comes with its printer driver source package.

The Driver Feature Configuration INI files is an optional file and comes with its printer driver source package. It contains various default settings for features this printer driver (may) provides. If the printing device or printing driver has no special features, this file does not exist.

The Printing Device Parameters INI files are run-time specific and some of them are created by helper tools when the physical printing device occurs the very first time.

While the Device Description INI file and the Driver Feature Configuration INI file are static and not to be changed by the user, the Printing Device Parameters INI files are intended to be adapted and extended by the user.

Due to this behaviour a user can adapt/change/overwrite all default configurations made by the static INI files on a per printer device base.

A run-time configuration for one physical printing device can look like this:

${sysconfdir}/caps/caps.ini CAPS universe global base configuration

${sysconfdir}/caps/drivers/capsdriver.ini CAPS universe printer driver configuration

${datarootdir}/caps/drivers/caps_printer_XY.ini Device Description INI file
                                        \___ brief='Some Generic Brief Description'
                                        |___ vendor='Vendor's Name'
                                        |___ device='Device's Name'
                                        |___ Pointer to the 'printer_XY.ini' Driver Feature Configuration INI file

${sysconfdir}/caps/drivers/printer_XY.ini Driver Driver Feature Configuration INI files
                                   \___ Default settings for generic features

${localstatedir}/caps/devices/printer_xzdtz/service.ini Printing Device Parameters
                                              \___ name='My Own Printing Providers Unique Name'

${localstatedir}/caps/devices/printer_xzdtz/info.ini Printing Device Parameters
                                              \___ location='My Description Of The Printer's Location'
                                              |___ brief='My Brief Printer Description'

${localstatedir}/caps/devices/printer_xzdtz/feature.ini Printing Device Parameters
                                              \___ some user adapted features
Note
The printer_xzdtz directory name is an example only. Each physical printer device has its own unique directory
The used filenames in the parameter directory (e.g. info.ini and feature.ini) are examples only. You can name them as you like.

For more details about the content of the Device Description INI file refer Device Description INI files.

As mentioned above, the Printing Device Parameters INI files are intended to be adapted by the user. At most the following keywords need your attention:

Section [info]

An example

[info]
name=frieselfrasel
location=Inside your processor

Mandatory keys are

Key Description
name Unique name for this printing device, free text
location Location description of the physical printing device, free text
  • names's value is used to register this printing device at the printing coordinator
  • location's value is forwared to the printing coordinator to describe the printing device's location

Since the name keyword at first uses an auto generated value, it is the first value, a user should change to his needs. Its value will be used later on as the printer's name in all printing and status commands (refer commands capsprinter, capsdoprint or lpr).

Refer the tool capsprndir how to retrieve the unique Printing Device Parameters directory matching a specific printer device.