This module makes it easy to install and manage Xerox multi-function printers on client computers running Linux.
puppet module install baldurmen-xerox --version 2.0.0
This module makes it easy to install and manage Xerox multi-function printers on client computers running Linux. It has been developed for clients using Debian GNU/Linux and Puppet 3.x but may work for other Debian-based distribution or older Puppet versions.
In order to work, this modules needs to install the Xerox printer driver
on your computer. This driver is not free software. This driver will
be placed in /var/cache/apt/archives/xeroxprtdrv.deb
.
It then passes commands to the xerox driver to configure printers. It will thus create two new printer (Print & Job queue) on your system.
If you set the web_interface
parameter to true
, this module will
also modify your /etc/hosts
to include the printer's IP address under
xerox.<unit_name>.lan
.
This modules depends on the Xerox Linux printer drivers to run. It is highly recommended to read this blog post to find said driver and to understand how it works before installing this puppet module.
To install this module, copy the git repository inside your Puppet's
modules
directory.
Once this is done, simply apply the module by including it Hiera or in your manifests:
class {
'::xerox-printer':
use => true,
printer_name => '<your_printers_name>',
web_interface => true,
unit_name => <your_units_name>,
oid => <printers_oid>,
ip => <printers_ip>,
package_name => <name_of_the_xerox_driver_package>;
}
In order to work, this module need access to a precise file tree, namely:
- puppet:///files
- xerox
- <unit_name>
- settings
- <package_name>
Both <unit_name>
and <package_name>
can be set through parameters.
The settings
file also need to be in this path. This module will fail
if it can't find it. To know how to generate this file, please read the
aforementioned blog post.
This module has seven parameters:
use
printer_name
web_interface
unit_name
oid
ip
package_name
All of these parameters are needed for the module to work correctly.
The use
parameter installs or uninstall the printer on client computers.
It is a boolean parameter and thus accepts two values, true
or false
. By
default, this parameter is set to false
and printers are not installed.
If the parameter is set from true
to false
, the xerox printer installed
by this module will be uninstalled.
If you wish to reconfigure an installed printer, the best way to do it is
to set this parameter from true
to false
, to wait for puppet to run on
all your clients and then to set it back to true
once you made your changes.
The printer_name
parameter lets you choose what the printer's name will be.
By default, this parameter is set to Xerox Printer
.
The web_interface
parameter modifies your /etc/hosts
to include the
printer's IP address under xerox.<unit_name>.lan
. This makes
it easy to users to access the web interface under a friendly URL.
By default, this parameter is set to false
.
The unit_name
parameter mainly tells this module where to look to find the
files it needs, namely under puppet:///files/xerox/$unit_name/
.
By default this parameter is not defined.
If the web_interface
parameter is set to true
, this parameter will be used
in the web interface's URL. See the web_interface
parameter for more details.
The oid
parameter tells the xerox driver your printer's model. For more
information on how to find your oid
, please read
this blog post.
By default this parameter is not defined.
The ip
parameter passes your printer's IP address to the xerox driver.
By default this parameter is not defined.
The package_name
parameter tells this module where to look to find the xerox
driver. Namely, it will look under puppet:///files/xerox/$unit_name/$package_name
.
By default this parameter is not defined.
This module has been developed for clients using Debian GNU/Linux and Puppet 3.x but may work for other Debian-based distribution or older Puppet versions.
If you want to contribute to this module, please send a merge request. If you find a bug, please submit a bug issue in the tracker.