For those who wants testing 1.1rc3 on FreeBSD, this is a simple patch against /usr/ports/mail/dovecot. To apply: # cd /usr/ports/mail/dovecot # patch -p1 < /tmp/patch_dovecot_1.0.13-1.1.rc3.diff Hope I did not forget something important... This is an adaptation of the existing port. PS: for port's maintainer: Which way will take 1.0 vs 1.1 upgrade ? a new mail/dovecot10 port or ? Hope this helps -- Geoffroy Desvernay diff -bruN dovecot-1.0.13/Makefile dovecot/Makefile --- dovecot-1.0.13/Makefile 2008-04-01 14:41:12.000000000 +0200 +++ dovecot/Makefile 2008-04-01 14:29:33.000000000 +0200 @@ -7,9 +7,9 @@ # PORTNAME= dovecot -DISTVERSION= 1.0.13 +DISTVERSION= 1.1.rc3 CATEGORIES= mail ipv6 -MASTER_SITES= http://www.dovecot.org/releases/1.0/ +MASTER_SITES= http://www.dovecot.org/releases/1.1/rc/ MAINTAINER= robin@isometry.net COMMENT= Secure and compact IMAP and POP3 servers diff -bruN dovecot-1.0.13/distinfo dovecot/distinfo --- dovecot-1.0.13/distinfo 2008-04-01 14:41:12.000000000 +0200 +++ dovecot/distinfo 2008-04-01 14:43:56.000000000 +0200 @@ -1,3 +1,3 @@ -MD5 (dovecot-1.0.13.tar.gz) = 281bd9dee8d6c1674977257acc80ce64 -SHA256 (dovecot-1.0.13.tar.gz) = 16da29b2bc08d0178a09323bf0787a2a0e953075655566a7b4b6b148c87ac25f -SIZE (dovecot-1.0.13.tar.gz) = 1774025 +MD5 (dovecot-1.1.rc3.tar.gz) = eed10a2f5142ebdf88276c0a82f548e1 +SHA256 (dovecot-1.1.rc3.tar.gz) = 5a72318a6f4d12a1da7104de94b439a8523142c0f54af1f1ff64966820ef9460 +SIZE (dovecot-1.1.rc3.tar.gz) = 2222329 diff -bruN dovecot-1.0.13/files/patch-dovecot-example.conf dovecot/files/patch-dovecot-example.conf --- dovecot-1.0.13/files/patch-dovecot-example.conf 2008-04-01 14:41:12.000000000 +0200 +++ dovecot/files/patch-dovecot-example.conf 2008-04-01 14:38:52.000000000 +0200 @@ -1,5 +1,5 @@ ---- dovecot-example.conf.orig 2008-03-04 05:48:12.000000000 +0000 -+++ dovecot-example.conf 2008-03-05 22:49:08.554336095 +0000 +--- dovecot-example.conf.orig 2008-04-01 14:30:50.000000000 +0200 ++++ dovecot-example.conf 2008-04-01 14:38:28.000000000 +0200 @@ -12,7 +12,7 @@ # Default values are shown for each setting, it's not required to uncomment # any of the lines. Exception to this are paths, they're just examples with @@ -15,9 +15,9 @@ #protocols = imap imaps +protocols = %%PROTOCOLS%% - # IP or host address where to listen in for connections. It's not currently - # possible to specify multiple addresses. "*" listens in all IPv4 interfaces. -@@ -210,6 +212,7 @@ + # A space separated list of IP or host addresses where to listen in for + # connections. "*" listens in all IPv4 interfaces. "[::]" listens in all IPv6 +@@ -213,6 +214,7 @@ # <doc/wiki/MailLocation.txt> # #mail_location = @@ -25,7 +25,7 @@ # If you need to set multiple mailbox locations or want to change default # namespace settings, you can do it by defining namespace sections. -@@ -256,6 +259,7 @@ +@@ -273,6 +275,7 @@ # used only for creating mbox dotlock files when creation fails for INBOX. # Typically this is set to "mail" to give access to /var/mail. #mail_privileged_group = @@ -33,7 +33,7 @@ # Grant access to these supplementary groups for mail processes. Typically # these are used to set up access to shared mailboxes. Note that it may be -@@ -320,6 +324,7 @@ +@@ -339,6 +342,7 @@ # IP address. Useful for seeing who are actually using the IMAP processes # (eg. shared mailboxes or if same uid is used for multiple accounts). #verbose_proctitle = no @@ -41,7 +41,7 @@ # Valid UID range for users, defaults to 500 and above. This is mostly # to make sure that users can't log in as daemons or other system users. -@@ -333,6 +338,7 @@ +@@ -352,6 +356,7 @@ # belongs to supplementary groups with non-valid GIDs, those groups are # not set. #first_valid_gid = 1 @@ -49,7 +49,7 @@ #last_valid_gid = 0 # Maximum number of running mail processes. When this limit is reached, -@@ -506,19 +512,19 @@ +@@ -501,19 +506,19 @@ protocol imap { # Login executable location. @@ -73,7 +73,7 @@ # Maximum IMAP command line length in bytes. Some clients generate very long # command lines with huge mailboxes, so you may need to raise this if you get -@@ -528,7 +534,7 @@ +@@ -527,7 +532,7 @@ # Support for dynamically loadable plugins. mail_plugins is a space separated # list of plugins to load. #mail_plugins = @@ -82,15 +82,15 @@ # Send IMAP capabilities in greeting message. This makes it unnecessary for # clients to request it with CAPABILITY command, so it saves one round-trip. -@@ -563,6 +569,7 @@ +@@ -562,6 +567,7 @@ # accept '/' suffix in mailbox names in subscriptions list. # The list is space-separated. - #imap_client_workarounds = outlook-idle -+ imap_client_workarounds = delay-newmail outlook-idle netscape-eoh tb-extra-mailbox-sep + #imap_client_workarounds = ++ imap_client_workarounds = delay-newmail netscape-eoh tb-extra-mailbox-sep } ## -@@ -571,11 +578,11 @@ +@@ -570,11 +576,11 @@ protocol pop3 { # Login executable location. @@ -104,15 +104,7 @@ # Don't try to set mails non-recent or seen with POP3 sessions. This is # mostly intended to reduce disk I/O. With maildir it doesn't move files -@@ -621,6 +628,7 @@ - # installations. - # - #pop3_uidl_format = -+ pop3_uidl_format = %08Xu%08Xv - - # POP3 logout format string: - # %t - number of TOP commands -@@ -635,7 +643,7 @@ +@@ -634,7 +640,7 @@ # Support for dynamically loadable plugins. mail_plugins is a space separated # list of plugins to load. #mail_plugins = @@ -121,7 +113,7 @@ # Workarounds for various client bugs: # outlook-no-nuls: -@@ -646,6 +654,7 @@ +@@ -645,6 +651,7 @@ # missing. This option simply sends it if it's missing. # The list is space-separated. #pop3_client_workarounds = @@ -129,20 +121,24 @@ } ## -@@ -663,10 +672,11 @@ +@@ -662,7 +669,7 @@ # Support for dynamically loadable plugins. mail_plugins is a space separated # list of plugins to load. #mail_plugins = - #mail_plugin_dir = /usr/lib/dovecot/lda + #mail_plugin_dir = %%PREFIX%%/lib/dovecot/lda + # If user is over quota, return with temporary failure instead of + # bouncing the mail. +@@ -677,6 +684,7 @@ + # Binary to use for sending mails. #sendmail_path = /usr/lib/sendmail + sendmail_path = /usr/sbin/sendmail - # UNIX socket path to master authentication server to find users. - #auth_socket_path = /var/run/dovecot/auth-master -@@ -677,7 +687,7 @@ + # Human readable error message for rejection mails. Use can use variables: + # %n = CRLF, %r = reason, %s = subject, %t = recipient +@@ -691,7 +699,7 @@ ## # Executable location @@ -151,7 +147,7 @@ # Set max. process size in megabytes. #auth_process_size = 256 -@@ -783,7 +793,7 @@ +@@ -814,7 +822,7 @@ #passdb passwd-file { # File contains a list of usernames, one per line @@ -160,7 +156,7 @@ #deny = yes #} -@@ -1021,7 +1031,7 @@ +@@ -1051,7 +1059,7 @@ # referenced using URIs in format "proxy:<name>". dict { @@ -169,21 +165,29 @@ } ## -@@ -1045,7 +1055,7 @@ - # directory. You can also optionally give a global ACL directory path where - # ACLs are applied to all users' mailboxes. The global ACL directory contains - # one file for each mailbox, eg. INBOX or sub.mailbox. -- #acl = vfile:/etc/dovecot-acls -+ #acl = vfile:%%PREFIX%%/etc/dovecot-acls +@@ -1099,7 +1107,7 @@ + # one file for each mailbox, eg. INBOX or sub.mailbox. cache_secs parameter + # specifies how many seconds to wait between stat()ing dovecot-acl file + # to see if it changed. +- #acl = vfile:/etc/dovecot-acls:cache_secs=300 ++ #acl = vfile:%%PREFIX%%/etc/dovecot-acls:cache_secs=300 # Convert plugin. If set, specifies the source storage path which is # converted to destination storage (mail_location) when the user logs in. -@@ -1059,7 +1069,7 @@ +@@ -1118,14 +1126,14 @@ # until the message can be saved within quota limits. The configuration file # is a text file where each line is in format: <priority> <mailbox name> # Mails are first deleted in lowest -> highest priority number order - #trash = /etc/dovecot-trash.conf + #trash = %%PREFIX%%/etc/dovecot-trash.conf - # Lazy expunge plugin. Currently works only with maildirs. When a user - # expunges mails, the mails are moved to a mailbox in another namespace + # Expire plugin. Mails are expunged from mailboxes after being there the + # configurable time. The first expiration date for each mailbox is stored in + # a dictionary so it can be quickly determined which mailboxes contain + # expired mails. The actual expunging is done in a nightly cronjob, which + # you must set up: +- # dovecot --exec-mail ext /usr/libexec/dovecot/expire-tool ++ # dovecot --exec-mail ext %%PREFIX%%/libexec/dovecot/expire-tool + #expire = Trash 7 Spam 30 + #expire_dict = db:/var/lib/dovecot/expire.db +