Advantages of module:print include extensbility to support new print queue systems, assuming appropriate list, add, and remove command interfaces. Also, systems are not slaved to a directory service. This allows support for laptops.
Disadvantages of module:print include scalability problems, and the need to run scripts everywhere.
With the no_modify class set in the CFALLCLASSES environment variable, module:print will only display what changes would be made to the system. This simplifies rollouts to previously unmanaged systems.
main.ini contains module defaults, and configuration classes that define how to list, add, modify, and remove groups on various Operating Systems.
The print.ini configuration file contains print queue definitions, and classes statements to determine what printers to setup based on the CFEngine classes defined.
app_cups:name = default
classes = any
location = Room 208
ppd = HP4000_5.PPD
app_cups:name = tree_killer
classes = group_admin group_devel
location = Room 104
ppd = SITE_001.PPD
CUPS uses PPD files to support custom printer features (extra trays, duplex units). These can be converted for use on Windows, though the conversion is complex and troublesome. To support printers with additional features, custom PPD can be used for the printer.