From: Alex Dehnert Date: Mon, 17 Jul 2023 12:53:46 +0000 (+0000) Subject: Merge remote-tracking branch 'origin/master' into chankillo X-Git-Url: https://dehnerts.com/gitweb/?a=commitdiff_plain;h=03f419d5c08a79fefa57dfc452905eb0bc6fbc21;p=sysconfig%2Fdovecot.git Merge remote-tracking branch 'origin/master' into chankillo --- 03f419d5c08a79fefa57dfc452905eb0bc6fbc21 diff --cc .gitignore index 515a31c,3320ce8..1a594af --- a/.gitignore +++ b/.gitignore @@@ -1,5 -1,6 +1,7 @@@ extra-users.passwd imap.keytab + olinda.keytab -old/ dovecot.pem -private/ +*.ucf-dist ++old/ +/private/ diff --cc conf.d/10-logging.conf index 14798f1,b7d7fda..b9c6373 --- a/conf.d/10-logging.conf +++ b/conf.d/10-logging.conf @@@ -74,12 -75,16 +74,17 @@@ plugin # possible variables you can use. #mail_log_prefix = "%s(%u): " -# Format to use for logging mail deliveries: +# Format to use for logging mail deliveries. See doc/wiki/Variables.txt for +# list of all variables you can use. Some of the common ones include: # %$ - Delivery status message (e.g. "saved to INBOX") - # %m - Message-ID - # %s - Subject - # %f - From address - # %p - Physical size - # %w - Virtual size + # %m / %{msgid} - Message-ID + # %s / %{subject} - Subject + # %f / %{from} - From address + # %p / %{size} - Physical size + # %w / %{vsize} - Virtual size + # %e / %{from_envelope} - MAIL FROM envelope + # %{to_envelope} - RCPT TO envelope + # %{delivery_time} - How many milliseconds it took to deliver the mail + # %{session_time} - How long LMTP session took, not including delivery_time + # %{storage_id} - Backend-specific ID for mail, e.g. Maildir filename #deliver_log_format = msgid=%m: %$ diff --cc conf.d/10-mail.conf index ee921fe,5e250a5..db4d1d7 --- a/conf.d/10-mail.conf +++ b/conf.d/10-mail.conf @@@ -40,14 -40,9 +40,15 @@@ mail_location = maildir:~/maildi # namespaces you'll typically want to enable ACL plugin also, otherwise all # users can access all the shared mailboxes, assuming they have permissions # on filesystem level to do so. +# +# REMEMBER: If you add any namespaces, the default namespace must be added +# explicitly, ie. mail_location does nothing unless you have a namespace +# without a location setting. Default namespace is simply done by having a +# namespace with empty prefix. ++#namespace { namespace inbox { # Namespace type: private, shared or public - #type = private + type = private # Hierarchy separator to use. You should use the same separator for all # namespaces or some clients get confused. '/' is usually a good one. diff --cc conf.d/90-sieve.conf index 873ded5,2902091..a35afe8 --- a/conf.d/90-sieve.conf +++ b/conf.d/90-sieve.conf @@@ -22,16 -22,22 +22,23 @@@ # information. plugin { - # The path to the user's main active script. If ManageSieve is used, this the - # location of the symbolic link controlled by ManageSieve. + # The location of the user's main Sieve script or script storage. The LDA + # Sieve plugin uses this to find the active script for Sieve filtering at + # delivery. The "include" extension uses this location for retrieving + # :personal" scripts. This is also where the ManageSieve service will store + # the user's scripts, if supported. + # + # Currently only the 'file:' location type supports ManageSieve operation. + # Other location types like 'dict:' and 'ldap:' can currently only + # be used as a read-only script source (). + # + # For the 'file:' type: use the ';active=' parameter to specify where the + # active script symlink is located. + # For other types: use the ';name=' parameter to specify the name of the + # default/active script. - sieve = file:~/sieve;active=~/.dovecot.sieve + #sieve = ~/.dovecot.sieve + sieve = /var/mail/virtual/sieve/%u/dovecot.sieve - # The default Sieve script when the user has none. This is a path to a global - # sieve script file, which gets executed ONLY if user's private Sieve script - # doesn't exist. Be sure to pre-compile this script manually using the sievec - # command line tool. - # --> See sieve_before fore executing scripts before the user's personal # The default Sieve script when the user has none. This is the location of a # global sieve script file, which gets executed ONLY if user's personal Sieve # script doesn't exist. Be sure to pre-compile this script manually using the @@@ -40,28 -46,30 +47,45 @@@ # script. #sieve_default = /var/lib/dovecot/sieve/default.sieve - # Directory for :personal include scripts for the include extension. This - # is also where the ManageSieve service stores the user's scripts. - sieve_dir = ~/sieve + # The name by which the default Sieve script (as configured by the + # sieve_default setting) is visible to the user through ManageSieve. + #sieve_default_name = + + # Location for ":global" include scripts as used by the "include" extension. + #sieve_global = - # Directory for :global include scripts for the include extension. - #sieve_global_dir = + # The location of a Sieve script that is run for any message that is about to + # be discarded; i.e., it is not delivered anywhere by the normal Sieve + # execution. This only happens when the "implicit keep" is canceled, by e.g. + # the "discard" action, and no actions that deliver the message are executed. + # This "discard script" can prevent discarding the message, by executing + # alternative actions. If the discard script does nothing, the message is + # still discarded as it would be when no discard script is configured. + #sieve_discard = - # Path to a script file or a directory containing script files that need to be - # executed before the user's script. If the path points to a directory, all - # the Sieve scripts contained therein (with the proper .sieve extension) are - # executed. The order of execution is determined by the file names, using a - # normal 8bit per-character comparison. - #sieve_before = + # Location Sieve of scripts that need to be executed before the user's + # personal script. If a 'file' location path points to a directory, all the + # Sieve scripts contained therein (with the proper `.sieve' extension) are + # executed. The order of execution within that directory is determined by the + # file names, using a normal 8bit per-character comparison. + # + # Multiple script locations can be specified by appending an increasing number + # to the setting name. The Sieve scripts found from these locations are added ++ # to the script execution sequence in the specified order. Reading the ++ # numbered sieve_before settings stops at the first missing setting, so no ++ # numbers may be skipped. ++ #sieve_before = /var/lib/dovecot/sieve.d/ ++ #sieve_before2 = ldap:/etc/sieve-ldap.conf;name=ldap-domain ++ #sieve_before3 = (etc...) + + # Location Sieve of scripts that need to be executed before the user's + # personal script. If a 'file' location path points to a directory, all the + # Sieve scripts contained therein (with the proper `.sieve' extension) are + # executed. The order of execution within that directory is determined by the + # file names, using a normal 8bit per-character comparison. + # + # Multiple script locations can be specified by appending an increasing number + # to the setting name. The Sieve scripts found from these locations are added # to the script execution sequence in the specified order. Reading the # numbered sieve_before settings stops at the first missing setting, so no # numbers may be skipped.