
Un ami se familiarisant avec Ubuntu m'a questionné sur la façon d'être averti de l'arrivée de nouveaux mails. Je me suis aperçu que le sujet était plutôt vaste. Sur son blog, un Linuxien proposait même une alerte par une LED du clavier avec blinkd et mail-notification. Tout cela m'a donné l'envie d'avoir quelque chose sur mon poste (je consulte ma BAL uniquement via un Webmail et tourne sous OpenBSD avec DWM en window manager + DMENU).
1) J'ai installé fetchmail :
sudo pkg_add -v -i fetchmail
2) J'ai édité un .fetchmailrc dans mon home du genre :
# Paramètres par defaut
# Utilise le protocole IMAP
# Attend au plus 2 min avant de considérer que le serveur ne répond pas
# Ne fait pas de recherche DNS pour le tri des messages reçus
# Conserve une copie des messages sur le serveur (indispensable dans mon cas)
defaults protocol imap timeout 120 no dns keep
# Ne renvoie pas de messages d'erreurs
set no bouncemail
# Recherche sur le serveur "mail.titi.fr" le courrier de l'utilisateur "frad.toto"
# dont le mot de passe est "secret" et qui possède un compte local "frad"
poll mail.titi.fr username "frad.toto" password "secret" is "frad" here
3) J'ai utilisé crontab -e pour planifier la vérification des mails (toutes les 5 minutes) :
*/5 * * * * fetchmail -c | cut -d " " -f1 -f3 > $HOME/Utils/totmail
fetchmail -c donne une ligne du genre :
36 messages (35 seen) for frad.toto@titi.fr at imap.titi.fr
Le cut me permet alors d'obtenir dans totmail :
36 (35
4) J'ai modifié une ligne dans mon .xinitrc pour y rajouter l'affichage du fichier totmail (ce script provient à l'origine du README de DWM) :
while true
do
echo $(date "+%H:%M - %a %d %m -" ; cat $HOME/Utils/totmail)
sleep 1
done | dwm
Un chmod u+x totmail a été nécéssaire.
Au final, le nombre de mails contenus dans ma BAL est vérifié toutes les 5 minutes et apparaît avec le window manager. Cela me donne un affichage tel que :
14:02 - Fri 09 11 - 36 (35
Il doit y avoir des façons moins lourdes de procéder mais je suis assez satisfait a priori.