• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# All configuration options described here can also be supplied on the
2# command line of cups-browsed via the "-o" option. In case of
3# contradicting settings the setting defined in the configuration file
4# will get used.
5
6# Unknown directives are ignored, also unknown values.
7
8
9# Where should cups-browsed save information about the print queues it had
10# generated when shutting down, like whether one of these queues was the
11# default printer, or default option settings of the queues?
12
13# CacheDir /var/cache/cups
14
15
16# Where should cups-browsed create its debug log file (if "DebugLogging file"
17# is set)?
18
19# LogDir /var/log/cups
20
21
22# How should debug logging be done? Into the file
23# /var/log/cups/cups-browsed_log ('file'), to stderr ('stderr'), or
24# not at all ('none')?
25
26# Note that if cups-browsed is running as a system service (for
27# example via systemd) logging to stderr makes the log output going to
28# the journal or syslog. Only if you run cups-browsed from the command
29# line (for development or debugging) it will actually appear on
30# stderr.
31
32# DebugLogging file
33# DebugLogging stderr
34# DebugLogging file stderr
35# DebugLogging none
36
37
38# Which protocols will we use to discover printers on the network?
39# Can use DNSSD and/or CUPS and/or LDAP, or 'none' for neither.
40
41BrowseRemoteProtocols @BROWSEREMOTEPROTOCOLS@
42
43
44# Which protocols will we use to broadcast shared local printers to the network?
45# Can use DNSSD and/or CUPS, or 'none' for neither.
46# Only CUPS is actually supported, as DNSSD is done by CUPS itself (we ignore
47# DNSSD in this directive).
48
49# BrowseLocalProtocols none
50
51
52# Settings of this directive apply to both BrowseRemoteProtocols and
53# BrowseLocalProtocols.
54# Can use DNSSD and/or CUPS and/or LDAP, or 'none' for neither.
55
56# BrowseProtocols none
57
58
59# Only browse remote printers (via DNS-SD or CUPS browsing) from
60# selected servers using the "BrowseAllow", "BrowseDeny", and
61# "BrowseOrder" directives
62
63# This serves for restricting the choice of printers in print dialogs
64# to trusted servers or to reduce the number of listed printers in the
65# print dialogs to a more user-friendly amount in large networks with
66# very many shared printers.
67
68# This only filters the selection of remote printers for which
69# cups-browsed creates local queues. If the print dialog uses other
70# mechanisms to list remote printers as for example direct DNS-SD
71# access, cups-browsed has no influence. cups-browsed also does not
72# prevent the user from manually accessing non-listed printers.
73
74# "BrowseAllow": Accept printers from these hosts or networks. If
75# there are only "BrowseAllow" lines and no "BrowseOrder" and/or
76# "BrowseDeny" lines, only servers matching at last one "BrowseAllow"
77# line are accepted.
78
79# "BrowseDeny": Deny printers from these hosts or networks. If there
80# are only "BrowseDeny" lines and no "BrowseOrder" and/or
81# "BrowseAllow" lines, all servers NOT matching any of the
82# "BrowseDeny" lines are accepted.
83
84# "BrowseOrder": Determine the order in which "BrowseAllow" and
85# "BrowseDeny" lines are applied. With "BrowseOrder Deny,Allow" in the
86# beginning all servers are accepted, then the "BrowseDeny" lines are
87# applied to exclude unwished servers or networks and after that the
88# "BrowseAllow" lines to re-include servers or networks. With
89# "BrowseOrder Allow,Deny" we start with denying all servers, then
90# applying the "BrowseAllow" lines and afterwards the "BrowseDeny"
91# lines.
92
93# Default for "BrowseOrder" is "Deny.Allow" if there are both
94# "BrowseAllow" and "BrowseDeny" lines.
95
96# If there are no "Browse..." lines at all, all servers are accepted.
97
98# BrowseAllow All
99# BrowseAllow cups.example.com
100# BrowseAllow 192.168.1.12
101# BrowseAllow 192.168.1.0/24
102# BrowseAllow 192.168.1.0/255.255.255.0
103
104# BrowseDeny All
105# BrowseDeny printserver.example.com
106# BrowseDeny 192.168.1.13
107# BrowseDeny 192.168.3.0/24
108# BrowseDeny 192.168.3.0/255.255.255.0
109
110# BrowseOrder Deny,Allow
111# BrowseOrder Allow,Deny
112
113
114# The interval between browsing/broadcasting cycles, local and/or
115# remote, can be adjusted with the BrowseInterval directive.
116
117# BrowseInterval 60
118
119
120# Browsing-related operations such as adding or removing printer queues
121# and broadcasting are each allowed to take up to a given amount of time.
122# It can be configured, in seconds, with the BrowseTimeout directive.
123# Especially queues discovered by CUPS broadcasts will be removed after
124# this timeout if no further broadcast from the server happens.
125
126# BrowseTimeout 300
127
128# Filtering of remote printers by other properties than IP addresses
129# of their servers
130
131# Often the desired selection of printers cannot be reached by only
132# taking into account the IP addresses of the servers. For these cases
133# there is the BrowseFilter directive to filter by most of the known
134# properties of the printer.
135
136# By default there is no BrowseFilter line meaning that no filtering
137# is applied.
138
139# To do filtering one can supply one or more BrowseFilter directives
140# like this:
141
142# BrowseFilter [NOT] [EXACT] <FIELD> [<VALUE>]
143
144# The BrowseFilter directive always starts with the word
145# "BrowseFilter" and it must at least contain the name of the data
146# field (<FIELD>) of the printer's properties to which it should
147# apply.
148
149# Available field names are:
150
151#   name:    Name of the local print queue to be created
152#   host:    Host name of the remote print server
153#   port:    Port through which the printer is accessed on the server
154#   service: DNS/SD service name of the remote printer
155#   domain:  Domain of the remote print server
156
157# Also all field names in the TXT records of DNS-SD-advertised printers
158# are valid, like "color", "duplex", "pdl", ... If the field name of
159# the filter rule does not exist for the printer, the rule is skipped.
160
161# The optional <VALUE> field is either the exact value (when the
162# option EXACT is supplied) or a regular expression (Run "man 7 regex"
163# in a terminal window) to be matched with the data field.
164
165# If no <VALUE> filed is supplied, rules with field names of the TXT
166# record are considered for boolean matching (true/false) of boolean
167# field (like duplex, which can have the values "T" for true and "F"
168# for false).
169
170# If the option NOT is supplied, the filter rule is fulfilled if the
171# regular expression or the exact value DOES NOT match the content of
172# the data field. In a boolean rule (without <VALUE>) the rule matches
173# false.
174
175# Regular expressions are always considered case-insensitive and
176# extended POSIX regular expressions. Field names and options (NOT,
177# EXACT) are all evaluated case-insensitive. If there is an error in a
178# regular expression, the BrowseFilter line gets ignored.
179
180# Especially to note is that supplying any simple string consisting of
181# only letters, numbers, spaces, and some basic special characters as
182# a regular expression matches if it is contained somewhere in the
183# data field.
184
185# If there is more than one BrowseFilter directive, ALL the directives
186# need to be fulfilled for the remote printer to be accepted. If one
187# is not fulfilled, the printer will get ignored.
188
189# Examples:
190
191# Rules for standard data items which are supplied with any remote
192# printer advertised via DNS-SD:
193
194# Print queue name must contain "hum_res_", this matches
195# "hum_res_mono" or "hum_res_color" but also "old_hum_res_mono":
196
197# BrowseFilter name hum_res_
198
199# This matches if the remote host name contains "printserver", like
200# "printserver.local", "printserver2.example.com", "newprintserver":
201
202# BrowseFilter host printserver
203
204# This matches all ports with 631 int its number, for example 631,
205# 8631, 10631,...:
206
207# BrowseFilter port 631
208
209# This rule matches if the DNS-SD service name contains "@ printserver":
210
211# Browsefilter service @ printserver
212
213# Matches all domains with "local" in their names, not only "local" but
214# also things like "printlocally.com":
215
216# BrowseFilter domain local
217
218# Examples for rules applying to items of the TXT record:
219
220# This rule selects PostScript printers, as the "PDL" field in the TXT
221# record contains "postscript" then. This includes also remote CUPS
222# queues which accept PostScript, independent of whether the physical
223# printer behind the CUPS queue accepts PostScript or not.
224
225# BrowseFilter pdl postscript
226
227# Color printers usually contain a "Color" entry set to "T" (for true)
228# in the TXT record. This rule selects them:
229
230# BrowseFilter color
231
232# This is a similar rule to select only duplex (automatic double-sided
233# printing) printers:
234
235# BrowseFilter duplex
236
237# Rules with the NOT option:
238
239# This rule EXCLUDES printers from all hosts containing "financial" in
240# their names, nice to get rid of the 100s of printers of the
241# financial department:
242
243# BrowseFilter NOT host financial
244
245# Get only monochrome printers ("Color" set to "F", meaning false, in
246# the TXT record):
247
248# BrowseFilter NOT color
249
250# Rules with more advanced use of regular expressions:
251
252# Only queue names which BEGIN WITH "hum_res_" are accepted now, so we
253# still get "hum_res_mono" or "hum_res_color" but not
254# "old_hum_res_mono" any more:
255
256# BrowseFilter name ^hum_res_
257
258# Server names is accepted if it contains "print_server" OR
259# "graphics_dep_server":
260
261# BrowseFilter host print_server|graphics_dep_server
262
263# "printserver1", "printserver2", and "printserver3", nothing else:
264
265# BrowseFilter host ^printserver[1-3]$
266
267# Printers understanding at least one of PostScript, PCL, or PDF:
268
269# BrowseFilter pdl postscript|pcl|pdf
270
271# Examples for the EXACT option:
272
273# Only printers from "printserver.local" are accepted:
274
275# BrowseFilter EXACT host printserver.local
276
277# Printers from all servers except "prinserver2.local" are accepted:
278
279# BrowseFilter NOT EXACT host prinserver2.local
280
281
282# Use BrowsePoll to poll a particular CUPS server
283
284# BrowsePoll cups.example.com
285# BrowsePoll cups.example.com:631
286# BrowsePoll cups.example.com:631/version=1.1
287
288
289# LDAP browsing configuration
290# The default value for all options is an empty string. Example configuration:
291
292# BrowseLDAPBindDN cn=cups-browsed,dc=domain,dc=tld
293# BrowseLDAPCACertFile /path/to/server/certificate.pem
294# BrowseLDAPDN ou=printers,dc=domain,dc=tld
295# BrowseLDAPFilter (printerLocation=/Office 1/*)
296# BrowseLDAPPassword s3cret
297# BrowseLDAPServer ldaps://ldap.domain.tld
298
299
300# Use DomainSocket to access the local CUPS daemon via another than the
301# default domain socket. "None" or "Off" lets cups-browsed not use CUPS'
302# domain socket.
303
304# DomainSocket @CUPS_DEFAULT_DOMAINSOCKET@
305# DomainSocket None
306# DomainSocket Off
307
308
309# Set HTTP timeout (in seconds) for requests sent to local/remote
310# resources Note that too short timeouts can make services getting
311# missed when they are present and operations be unnecessarily
312# repeated and too long timeouts can make operations take too long
313# when the server does not respond.
314
315# HttpLocalTimeout 5
316# HttpRemoteTimeout 10
317
318# Set how many retries (N) should cups-browsed do for creating print
319# queues for remote printers which receive timeouts during print queue
320# creation.  The printers which are not successfully set up even after
321# N retries, are skipped until the next restart of the service.  Note
322# that too many retries can cause high CPU load.
323
324# HttpMaxRetries 5
325
326# Set OnlyUnsupportedByCUPS to "Yes" will make cups-browsed not create
327# local queues for remote printers for which CUPS creates queues by
328# itself.  These printers are printers advertised via DNS-SD and doing
329# CUPS-supported (currently PWG Raster and Apple Raster) driverless
330# printing, including remote CUPS queues. Queues for other printers
331# (like for legacy PostScript/PCL printers) are always created
332# (depending on the other configuration settings of cups-browsed).
333
334# With OnlyUnsupportedByCUPS set to "No", cups-browsed creates queues
335# for all printers which it supports, including printers for which
336# CUPS would create queues by itself. Temporary queues created by CUPS
337# will get overwritten. This way it is assured that any extra
338# functionality of cups-browsed will apply to these queues. As queues
339# created by cups-browsed are permanent CUPS queues this setting is
340# also recommended if applications/print dialogs which do not support
341# temporary CUPS queues are installed. This setting is the default.
342
343# OnlyUnsupportedByCUPS Yes
344
345
346# With UseCUPSGeneratedPPDs set to "Yes" cups-browsed creates queues
347# for IPP printers with PPDs generated by the PPD generator of CUPS
348# and not with the one of cups-browsed. So any new development in
349# CUPS' PPD generator gets available. As CUPS' PPD generator is not
350# directly accessible, we need to make CUPS generate a temporary print
351# queue with the desired PPD. Therefore we can only use these PPDs
352# when our queue replaces a temporary CUPS queue, meaning that the
353# queue is for a printer on which CUPS supports driverless printing
354# (IPP 2.x, PDLs: PDF, PWG Raster, and/or Apple Raster) and that its
355# name is the same as CUPS uses for the temporary queue
356# ("LocalQueueNamingIPPPrinter DNS-SD" must be set). The directive
357# applies only to IPP printers, not to remote CUPS queues, to not
358# break clustering. Setting this directive to "No" lets cups-browsed
359# generate the PPD file. Default setting is "No".
360
361# UseCUPSGeneratedPPDs No
362
363
364# With the directives LocalQueueNamingRemoteCUPS and
365# LocalQueueNamingIPPPrinter you can determine how the names for local
366# queues generated by cups-browsed are generated, separately for
367# remote CUPS printers and IPP printers.
368
369# DNS-SD (the default in both cases) bases the naming on the service
370# name of the printer's advertised DNS-SD record. This is exactly the
371# same naming scheme as CUPS uses for its temporary queues, so the
372# local queue from cups-browsed prevents CUPS from listing and
373# creating an additional queue. As DNS-SD service names have to be
374# unique, queue names of printers from different servers will also be
375# unique and so there is no automatic clustering for load-balanced
376# printing.
377
378# MakeModel bases the queue name on the printer's manufacturer and
379# model names. This scheme cups-browsed used formerly for IPP
380# printers.
381
382# RemoteName is only available for remote CUPS queues and uses the
383# name of the queue on the remote CUPS server as the local queue's
384# name. This makes printers on different CUPS servers with equal queue
385# names automatically forming a load-balancing cluster as CUPS did
386# formerly (CUPS 1.5.x and older) with CUPS-broadcasted remote
387# printers. This scheme cups-browsed used formerly for remote CUPS
388# printers.
389
390# LocalQueueNamingRemoteCUPS DNS-SD
391# LocalQueueNamingRemoteCUPS MakeModel
392# LocalQueueNamingRemoteCUPS RemoteName
393# LocalQueueNamingIPPPrinter DNS-SD
394# LocalQueueNamingIPPPrinter MakeModel
395
396
397# Set DNSSDBasedDeviceURIs to "Yes" if cups-browsed should use
398# DNS-SD-service-name-based device URIs for its local queues, as CUPS
399# also does. These queues use the DNS-SD service name of the
400# discovered printer. With this the URI is independent of network
401# interfaces and ports, giving reliable connections to always the same
402# physical device. This setting is the default.
403
404# Set DNSSDBasedDeviceURIs to "No" if cups-browsed should use the
405# conventional host-name/IP-based URIs.
406
407# Note that this option has only influence on URIs for printers
408# discovered via DNS-SD, not via legacy CUPS broewsing or LDAP.
409# Those printers get always assigned the conventional URIs.
410
411# DNSSDBasedDeviceURIs Yes
412
413
414# Set IPBasedDeviceURIs to "Yes" if cups-browsed should create its
415# local queues with device URIs with the IP addresses instead of the
416# host names of the remote servers. This mode is there for any
417# problems with host name resolution in the network, especially also
418# if avahi-daemon is only run for printer discovery and already
419# stopped while still printing. By default this mode is turned off,
420# meaning that we use URIs with host names.
421
422# Note that the IP addresses depend on the network interface through
423# which the printer is accessed. So do not use IP-based URIs on systems
424# with many network interfaces and where interfaces can appear and
425# disappear frequently.
426
427# This mode could also be useful for development and debugging.
428
429# If you prefer IPv4 or IPv6 IP addresses in the URIs, you can set
430# IPBasedDeviceURIs to "IPv4" to only get IPv4 IP addresses or
431# IPBasedDeviceURIs to "IPv6" to only get IPv6 IP addresses.
432
433# IPBasedDeviceURIs No
434# IPBasedDeviceURIs Yes
435# IPBasedDeviceURIs IPv4
436# IPBasedDeviceURIs IPv6
437
438# The AllowResharingRemoteCUPSPrinters directive determines whether a
439# print queue pointing to a remote CUPS queue will be re-shared to the
440# local network or not. Since the queues generated using the BrowsePoll
441# directive are also pointing to remote queues, they are also shared
442# automatically if the following option is set. Default is not to share
443# remote printers.
444
445# AllowResharingRemoteCUPSPrinters Yes
446
447# The NewBrowsePollQueuesShared directive determines whether a print
448# queue for a newly discovered printer (discovered by the BrowsePoll directive)
449# will be shared to the local network or not. This directive will only work
450# if AllowResharingRemoteCUPSPrinters is set to yes. Default is
451# not to share printers discovered using BrowsePoll.
452
453# NewBrowsePollQueuesShared Yes
454
455# Set CreateRemoteRawPrinterQueues to "Yes" to let cups-browsed also
456# create local queues pointing to remote raw CUPS queues. Normally,
457# only queues pointing to remote queues with PPD/driver are created
458# as we do not use drivers on the client side, but in some cases
459# accessing a remote raw queue can make sense, for example if the
460# queue forwards the jobs by a special backend like Tea4CUPS.
461
462# CreateRemoteRawPrinterQueues Yes
463
464
465# cups-browsed by default creates local print queues for each shared
466# CUPS print queue which it discovers on remote machines in the local
467# network(s). Set CreateRemoteCUPSPrinterQueues to "No" if you do not
468# want cups-browsed to do this. For example you can set cups-browsed
469# to only create queues for IPP network printers setting
470# CreateIPPPrinterQueues not to "No" and CreateRemoteCUPSPrinterQueues
471# to "No".
472
473# CreateRemoteCUPSPrinterQueues No
474
475
476# Set CreateIPPPrinterQueues to "All" to let cups-browsed discover IPP
477# network printers (native printers, not CUPS queues) with known page
478# description languages (PWG Raster, PDF, PostScript, PCL XL, PCL
479# 5c/e) in the local network and auto-create print queues for them.
480
481# Set CreateIPPPrinterQueues to "Everywhere" to let cups-browsed
482# discover IPP Everywhere printers in the local network (native
483# printers, not CUPS queues) and auto-create print queues for them.
484
485# Set CreateIPPPrinterQueues to "AppleRaster" to let cups-browsed
486# discover Apple Raster printers in the local network (native
487# printers, not CUPS queues) and auto-create print queues for them.
488
489# Set CreateIPPPrinterQueues to "Driverless" to let cups-browsed
490# discover printers designed for driverless use (currently IPP
491# Everywhere and Apple Raster) in the local network (native printers,
492# not CUPS queues) and auto-create print queues for them.
493
494# Set CreateIPPPrinterQueues to "LocalOnly" to auto-create print
495# queues only for local printers made available as IPP printers. These
496# are for example IPP-over-USB printers, made available via
497# ippusbxd. This is the default.
498
499# Set CreateIPPPrinterQueues to "No" to not auto-create print queues
500# for IPP network printers.
501
502# If queues with PPD file are created (see IPPPrinterQueueType
503# directive below) the PPDs are auto-generated by cups-browsed based
504# on properties of the printer polled via IPP. In case of missing
505# information, info from the Bonjour record is used asd as last mean
506# default values.
507
508# If queues without PPD (see IPPPrinterQueueType directive below) are
509# created clients have to IPP-poll the capabilities of the printer and
510# send option settings as standard IPP attributes. Then we do not poll
511# the capabilities by ourselves to not wake up the printer from
512# power-saving mode when creating the queues. Jobs have to be sent in
513# one of PDF, PWG Raster, or JPEG format. Other formats are not
514# accepted.
515
516# This functionality is primarily for mobile devices running
517# CUPS to not need a printer setup tool nor a collection of printer
518# drivers and PPDs.
519
520# CreateIPPPrinterQueues No
521# CreateIPPPrinterQueues LocalOnly
522# CreateIPPPrinterQueues Everywhere
523# CreateIPPPrinterQueues AppleRaster
524# CreateIPPPrinterQueues Everywhere AppleRaster
525# CreateIPPPrinterQueues Driverless
526# CreateIPPPrinterQueues All
527
528
529# If cups-browsed is automatically creating print queues for native
530# IPP network printers ("CreateIPPPrinterQueues Yes"), the type of
531# queue to be created can be selected by the "IPPPrinterQueueType"
532# directive. The "PPD" (default) setting makes queues with PPD file
533# being created. With "Interface" or "NoPPD" the queue is created with
534# a System V interface script (Not supported with CUPS 2.2.x or
535# later). "Auto" is for backward compatibility and also lets queues
536# with PPD get created.
537
538# IPPPrinterQueueType PPD
539# IPPPrinterQueueType NoPPD
540# IPPPrinterQueueType Interface
541# IPPPrinterQueueType Auto
542
543
544# The NewIPPPrinterQueuesShared directive determines whether a print
545# queue for a newly discovered IPP network printer (not remote CUPS
546# queue) will be shared to the local network or not. This is only
547# valid for newly discovered printers. For printers discovered in an
548# earlier cups-browsed session, cups-browsed will remember whether the
549# printer was shared, so changes by the user get conserved. Default is
550# not to share newly discovered IPP printers.
551
552# NewIPPPrinterQueuesShared Yes
553
554
555# How to handle the print queues cups-browsed creates when
556# cups-browsed is shut down:
557
558# "KeepGeneratedQueuesOnShutdown No" makes the queues being
559# removed. This makes sense as these queues only work while
560# cups-browsed is running. cups-browsed has to determine to which
561# member printer of a cluster to pass on the job.
562
563# "KeepGeneratedQueuesOnShutdown Yes" (the default) makes the queues
564# not being removed. This is the recommended setting for a system
565# where cups-browsed is permanently running and only stopped for short
566# times (like log rotation) or on shutdown. This avoids the
567# re-creation of the queues when cups-browsed is restarted, which
568# often causes a clutter of CUPS notifications on the desktop.
569
570# KeepGeneratedQueuesOnShutdown No
571
572# If there is more than one remote CUPS printer whose local queue
573# would get the same name and AutoClustering is set to "Yes" (the
574# default) only one local queue is created which makes up a
575# load-balancing cluster of the remote printers which would get this
576# queue name (implicit class). This means that when several jobs are
577# sent to this queue they get distributed between the printers, using
578# the method chosen by the LoadBalancing directive.
579
580# Note that the forming of clusters depends on the naming scheme for
581# local queues created by cups-browsed. If you have set
582# LocalQueueNamingRemoteCUPS to "DNSSD" you will not get automatic
583# clustering as the DNS-SD service names are always unique. With
584# LocalQueueNamingRemoteCUPS set to "RemoteName" local queues are
585# named as the CUPS queues on the remote servers are named and so
586# equally named queues on different servers get clustered (this is how
587# CUPS did it in version 1.5.x or older). LocalQueueNamingRemoteCUPS
588# set to "MakeModel" makes remote printers of the same model get
589# clustered. Note that then a cluster can contain more than one queue
590# of the same server.
591
592# With AutoClustering set to "No", for each remote CUPS printer an
593# individual local queue is created, and to avoid name clashes when
594# using the LocalQueueNamingRemoteCUPS settings "RemoteName" or
595# "MakeModel" "@<server name>" is added to the local queue name.
596
597# Only remote CUPS printers get clustered, not IPP network printers or
598# IPP-over-USB printers.
599
600# AutoClustering Yes
601# AutoClustering No
602
603
604# Load-balancing printer cluster formation can also be manually
605# controlled by defining explicitly which remote CUPS printers should
606# get clustered together.
607
608# This is done by the "Cluster" directive:
609
610# Cluster <QUEUENAME>: <EXPRESSION1> <EXPRESSION2> ...
611# Cluster <QUEUENAME>
612
613# If no expressions are given, <QUEUENAME> is used as the first and
614# only expression for this cluster.
615
616# Discovered printers are matched against all the expressions of all
617# defined clusters. The first expression which matches the discovered
618# printer determines to which cluster it belongs. Note that this way a
619# printer can only belong to one cluster. Once matched, further
620# cluster definitions will not checked any more.
621
622# With the first printer matching a cluster's expression a local queue
623# with the name <QUEUENAME> is created. If more printers are
624# discovered and match this cluster, they join the cluster. Printing
625# to this queue prints to all these printers in a load-balancing
626# manner, according to to the setting of the LoadBalancing directive.
627
628# Each expression must be a string of characters without spaces. If
629# spaces are needed, replace them by underscores ('_').
630
631# An expression can be matched in three ways:
632
633# 1. By the name of the CUPS queue on the remote server
634# 2. By make and model name of the remote printer
635# 3. By the DNS-SD service name of the remote printer
636
637# Note that the matching is done case-insensitively and any group of
638# non-alphanumerical characters is replaced by a single underscore.
639
640# So if an expression is "HP_DeskJet_2540" and the remote server
641# reports "hp Deskjet-2540" the printer gets matched to this cluster.
642
643# If "AutoClustering" is not set to "No" both your manual cluster
644# definitions will be followed and automatic clustering of
645# equally-named remote queues will be performed. If a printer matches
646# in both categories the match to the manually defined cluster has
647# priority. Automatic clustering of equally-named remote printers is
648# not performed if there is a manually defined cluster with this name
649# (at least as the printers do not match this cluster).
650
651# Examples:
652
653# To cluster all remote CUPS queues named "laserprinter" in your local
654# network but not cluster any other equally-named remote CUPS printers
655# use (Local queue will get named "laserprinter"):
656
657# AutoClustering No
658# Cluster laserprinter
659
660# To cluster all remote CUPS queues of HP LaserJet 4050 printers in a
661# local queue named "LJ4050":
662
663# Cluster LJ4050: HP_LaserJet_4050
664
665# As DNS-SD service names are unique in a network you can create a
666# cluster from exactly specified printers (spaces replaced by
667# underscores):
668
669# Cluster hrdep: oldlaser_@_hr-server1 newlaser_@_hr-server2
670
671
672# The LoadBalancing directive switches between two methods of handling
673# load balancing between equally-named remote queues which are
674# represented by one local print queue making up a cluster of them
675# (implicit class).
676
677# The two methods are:
678
679# Queuing of jobs on the client (LoadBalancing QueueOnClient):
680
681# Here we queue up the jobs on the client and regularly check the
682# clustered remote print queues. If we find an idle queue, we pass
683# on a job to it.
684
685# This is also the method which CUPS uses for classes. Advantage is a
686# more even distribution of the job workload on the servers
687# (especially if the printing speed of the servers is very different),
688# and if a server fails, there are not several jobs stuck or
689# lost. Disadvantage is that if one takes the client (laptop, mobile
690# phone, ...) out of the local network, printing stops with the jobs
691# waiting in the local queue.
692
693# Queuing of jobs on the servers (LoadBalancing QueueOnServers):
694
695# Here we check the number of jobs on each of the clustered remote
696# printers and send an incoming job immediately to the remote printer
697# with the lowest amount of jobs in its queue. This way no jobs queue
698# up locally, all jobs which are waiting are waiting on one of the
699# remote servers.
700
701# Not having jobs waiting locally has the advantage that we can take
702# the local machine from the network and all jobs get printed.
703# Disadvantage is that if a server with a full queue of jobs goes
704# away, the jobs go away, too.
705
706# Default is queuing the jobs on the client as this is what CUPS does
707# with classes.
708
709# LoadBalancing QueueOnClient
710# LoadBalancing QueueOnServers
711
712
713# With the DefaultOptions directive one or more option settings can be
714# defined to be applied to every print queue newly created by
715# cups-browsed. Each option is supplied as one supplies options with
716# the "-o" command line argument to the "lpadmin" command (Run "man
717# lpadmin" for more details). More than one option can be supplied
718# separating the options by spaces. By default no option settings are
719# pre-defined.
720
721# Note that print queues which cups-browsed already created before
722# remember their previous settings and so these settings do not get
723# applied.
724
725# DefaultOptions Option1=Value1 Option2=Value2 Option3 noOption4
726
727
728# The AutoShutdown directive specifies whether cups-browsed should
729# automatically terminate when it has no local raw queues set up
730# pointing to any discovered remote printers or no jobs on such queues
731# depending on AutoShutdownOn setting (auto shutdown mode). Setting it
732# to "On" activates the auto-shutdown mode, setting it to "Off"
733# deactiivates it (the default). The special mode "avahi" turns auto
734# shutdown off while avahi-daemon is running and on when avahi-daemon
735# stops. This allows running cups-browsed on-demand when avahi-daemon
736# is run on-demand.
737
738# AutoShutdown Off
739# AutoShutdown On
740# AutoShutdown avahi
741
742
743# The AutoShutdownOn directive determines what event cups-browsed
744# considers as inactivity in auto shutdown mode. "NoQueues" (the
745# default) means that auto shutdown is initiated when there are no
746# queues for discovered remote printers generated by cups-browsed any
747# more. "NoJobs" means that all queues generated by cups-browsed are
748# without jobs.
749
750# AutoShutdownOn NoQueues
751# AutoShutdownOn NoJobs
752
753
754# The AutoShutdownTimeout directive specifies after how many seconds
755# without local raw queues set up pointing to any discovered remote
756# printers or jobs on these queues cups-browsed should actually shut
757# down in auto shutdown mode. Default is 30 seconds, 0 means immediate
758# shutdown.
759
760# AutoShutdownTimeout 30
761
762# DebugLogFileSize defines the maximum size possible (in KBytes)
763# of the log files (cups-browsed_log and cups-browsed_previous_logs)
764# that is created using cups-browsed in the debugging mode.
765# Setting its value to 0 would turn off any restriction
766# on the size of the file.
767
768# DebugLogFileSize 300
769
770# NotifLeaseDuration defines how long the D-BUS subscription created by cups-browsed
771# in cupsd will last before cupsd cancels it. The default value is 1 day
772# in seconds - 86400. The subscription renewal is set to happen after half of
773# NotifLeaseDuration passed. The D-BUS notifications are used for watching over queues
774# and doing specific actions when a D-BUS notification comes.
775
776# NotifLeaseDuration 86400
777