Dans un article précédent, j’ai indiqué quels étaient les éléments clefs me permettant de lire et envoyer des mails de façon assez déconnectée. Au fur et à mesure d’une session de travail déconnectée, on envoie des mails, et on aimerait qu’ils soient stockés en attendant d’être envoyés dès que possible. La première solution était de lancer un postqueue -f en se connectant pour provoquer un vidage de la file d’attente. Cette solution nécessite d’y penser, ce qui est moins évident que de penser à synchroniser ses mails en réception. Le script suivant permet de répondre à cette problématique :

#!/bin/bash
if [ "$2" = 'up' ]
then
postqueue -f
postconf -e 'defer_transports='
postfix reload
else
postconf -e 'defer_transports=smtp'
postfix reload
fi

Il est à mettre dans /etc/NetworkManager/dispatcher.d/20-mail-sent.

Il ne reste plus qu’à rajouter une synchronisation automatique du répertoire =Sent. Néanmoins, celle-ci est moins évidente, puisqu’elle est spécifique aux utilisateurs.