Received: from mail.lichtvoll.de (lichtvoll.de [IPv6:2a03:4000:6:3074:b8f8:25ff:fe09:25e8]) by gbr-app-1.alpinelinux.org (Postfix) with ESMTPS id C41B0223660 for <~alpine/users@lists.alpinelinux.org>; Mon, 2 Jun 2025 16:52:55 +0000 (UTC) Received: from 127.0.0.1 (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by mail.lichtvoll.de (Postfix) with ESMTPSA id 93EC91053B7 for <~alpine/users@lists.alpinelinux.org>; Mon, 02 Jun 2025 16:52:51 +0000 (UTC) Authentication-Results: mail.lichtvoll.de; auth=pass smtp.auth=martin@lichtvoll.de smtp.mailfrom=martin@lichtvoll.de From: Martin Steigerwald To: ~alpine/users@lists.alpinelinux.org Subject: Dovecot 2.4 with Alpine 3.22 warning: dovecot.conf removed and configuration syntax changed Date: Mon, 02 Jun 2025 18:52:51 +0200 Message-ID: <7813744.EvYhyI6sBW@lichtvoll.de> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Hi! On upgrading my private mail server with 3.21 to 3.22 with "apk upgrade -- available" Dovecot was not started cause of: % service dovecot start * dovecot: `/etc/dovecot/dovecot.conf' is not readable * ERROR: dovecot failed to start That file was gone! I restored it from backup. And then I had to convert it to 2.4 format. =46irst off I added dovecot_config_version =3D 2.4.1 dovecot_storage_version =3D 2.4.1 at the beginning of dovecot.conf. It needs to be the first configuration=20 statement. Then I went through https://doc.dovecot.org/2.4.1/installation/upgrade/2.3-to-2.4.html and other parts of the documentation of Dovecot and the configuration file= =20 example referenced in above link. I started dovecot on command line to test changes as I did not see the=20 configuration syntax errors reported in "/var/log/messages" or "/var/log/ mail.log". The mail server uses Rsyslog. Updating the configuration is not trivial. It is not completely explained=20 with examples in one page. I needed to review other parts of the Dovecot=20 2.4.1 documentation to dig out configuration examples on how things are=20 supposed to look now. All in all the configuration seems to be more complex and more verbose=20 now: Sections need to be named, "passwd" section needs to have a "fields"=20 group with what was in "args" before, names of configuration directories=20 have been changed, configuration directives like "mail_location" have been= =20 split up. Oh, and SSL cert file options have been renamed as well and do=20 not take input redirection with "<" anymore. If you still try Dovecot=20 treats the contents of the file as filename. So just remove that "<"=20 there. While some options may be clearer now I am not really sure I=20 whether I like most of those changes, but it is what it is. It took me a bit more than half an hour for a simple private server=20 configuration in a single file in "/etc/dovecot/conf.d". Cause the version= =20 declaration needs to be the first statement I now seem to have to modify "/etc/dovecot/dovecot.conf" as well. If there is a way around that please=20 let me know. I'd prefer to leave "dovecot.conf" untouched. So if you upgrade, plan accordingly. And make sure you have a backup / snapshot. At least in the future due to setting the configuration file format=20 version such surprises should not happen anymore. It is currently not mentioned in Alpine 3.22 release notes=C2=B2 but IMHO=20 should be. I can open a bug report about the missing configuration file and also=20 about the release notes mentioning Dovecot configuration file syntax=20 change, if you advice on which packages / components to report to. I am=20 still quite new to Alpine Linux. [1] Over the years Postfix has been much more comfortable for me than=20 Dovecot regarding configuration updates. [2] https://wiki.alpinelinux.org/wiki/Release_Notes_for_Alpine_3.22.0 Best, =2D-=20 Martin