A daemon for browsing the Bonjour broadcasts of shared, remote CUPS printers
cups-browsed [-v | -d | --debug] [-c config-file] [-o option=value] [-o 'config file line'] ... [--autoshutdown=mode] [--autoshutdown-timeout=timeout] [-h | --help | --version]
cups-browsed has four independently switchable functions:
Browse Bonjour broadcasts of remote printers and create/remove local raw queues pointing to these printers.
Browse CUPS broadcasts of remote printers and create/remove local raw queues pointing to these printers.
Browse an LDAP server for printers and create/remove local raw queues pointing to these printers.
Broadcast local queues with the CUPS protocol.
Note that 2. and 4. are only to allow communication with legacy CUPS servers (1.5.x or older) on the remote machine(s). The standard method to broadcast for shared/network printers to broadcast their presence is Bonjour. The CUPS broadcasting/browsing protocol is deprecated.
cups-browsed can be run permanently (from system boot to shutdown) or on-demand (for example to save resources on mobile devices). For running it on-demand an auto-shutdown feature can be activated to let cups-browsed terminate when it does not have queues any more to take care of.
- -v, -d, --debug
Debug mode, verbose logging to stderr
- -l, --logfile
Debug logging into /var/log/cups/cups-browsed_log file.
- -c config-file
Uses the alternative configuration file config-file instead of the standard one.
- -o option=value, -o 'config file line'
Supply configuration options via the command line. You can supply any line which also could be put into the configuration file, but note that due to the spaces the line has to be put into quotes, or for a simple key/value pair the space between key and value can get replaced by '='. If command-line-supplied configuration settings are contradicting with the ones in the configuration file, the ones in the configuration file will get used.
Auto shutdown mode, mode is off for no auto shutdown, on for auto shutdown being active, and avahi for control by the avahi-daemon being run on-demand, getting auto-shutdown turned off while avahi-daemon is present and on when avahi-daemon is shut down.
What cups-browsed considers as inactivity for auto-shutdown. inactivity-type set to no-queues (the default) means that auto-shutdown is initiated if there are no queues generated by cups-browsed any more, no-jobs means that auto-shutdown will get initiated if all queues generated by cups-browsed are without jobs.
timeout tells after how many seconds cups-browsed should shut down if it has no local queues set up for any discovered remote printer any more or jobs on these. Default is 30 seconds. 0 means immediate shutdown.
- -h, --help, --version
Display usage and version info and do not start the daemon.
SIGINT, SIGTERM: cups-browsed will shutdown.
SIGUSR1: Switches cups-browsed into permanent mode (no auto shutdown).
SIGUSR2: Switches cups-browsed into auto shutdown mode.
Please take references to cups 1.6.x to include newer versions. Similarly, cups 1.5.x is intended to encompass older versions too.
In environments with only cups 1.6.x servers and clients (plus cups-browsed on either server or client or both) the function described in 1. enables the automatic discovery of remote queues and their display in printing dialogues of applications and with command line tools.
The facility provided by 3. allows printers that are registered in an LDAP server to be added as local queues. CUPS servers 1.5.x are able to automatically register printers in LDAP. The facility provided by cups-browsed allows a filter string to further limit the printers that are browsed from LDAP.
The facility provided by 4. means that servers running cups 1.6.x plus cups-browsed can broadcast their local queues so that clients with cups 1.5.x get these queues automatically available. The outcome of 2. is that clients running cups 1.6.x plus cups-browsed can use the CUPS broadcasts from servers with cups 1.5.x. As with browsing of Bonjour broadcasts, the created local raw queues are available to applications and command line tools.
This manual page was written for the Debian Project, but it may be used by others.