]> gitweb.pimeys.fr Git - config-20-100.git/blobdiff - .procmailrc
[procmail] Mise à jour du filtre Machines supprimées pour chambre invalide
[config-20-100.git] / .procmailrc
index ec56e76021a898459f04bc9e303656551cb4ee2a..851ef6089f72b63aaa15d25984eb3fe5f870b86b 100644 (file)
 #  * Le troisième, custom.final.rules est appliqué tout à la fin, il peut par
 #    exemple servir à définir un dossier par défaut autre que .INBOX
 
+# Attention, certaines règles (pour l'instant commentées par #~#)
+# font appel à des scripts.
+# Pour qu'elles fonctionnent correctement, il faut que vous
+# possédiez les scripts correspondant et que vous adaptiez
+# la partie "Scripting" des variables de configuration.
+# (cf https://wiki.crans.org/VieCrans/FichiersConfiguration#scripting)
 
 
 ################################################################################
 #################################################################
 ##                   Variables d'environnement                 ##
 #################################################################
+### Paths
 # Path du dossier où sont rangés les mails
 MAILDIR="${HOME}/Mail"
-# Shell à utiliser pour exécuter des commandes
-SHELL="/bin/bash"
 # Dossier contenant tout le garbage procmail-related
 # (le .procmailrc lui-même est dans le home)
 PROCMAILDIR="${HOME}/.procmail"
@@ -240,6 +245,16 @@ CONFIGDIR="${PROCMAILDIR}/rc"
 LOGFILE="${PROCMAILDIR}/logs/procmail.log"
 
 
+### Scripting
+# Shell à utiliser pour exécuter des commandes
+SHELL="/bin/bash"
+## Scripts
+# Dossier où sont rangés les scripts
+SCRIPTSFOLDER="${HOME}/scripts/crans_toolbox/"
+# Scripts pour décoder les headers MIME
+DECODEHEADERSCRIPT="${SCRIPTSFOLDER}decode_header.pl"
+
+
 #################################################################
 ##                      Noms de dossiers                       ##
 #################################################################
@@ -722,15 +737,23 @@ ${CABLAGEDIR}/
   ${PRINTERWATCHDIR}/
 }
 
+
 # Sur la ML respbats@
-:0
-* ^List-Id:.*respbats\.lists\.crans\.org
-{
-  # Machines supprimées pour chambre invalide
-  :0
-  * ^X-Mailer: /usr/scripts/gestion/chambres_vides.py
-  ${DELETEDMACHINES}/
-}
+#~# # L'ancienne version de ce filtre ne fonctionne plus car les headers
+#~# # de ces mails sont maintenant correctement encodé.
+#~# # C'est bien pour le respect des RFC, mais c'est un peu pain in the ass
+#~# # p our le trier avec procmail, donc on besoin d'un script
+#~# # Ne pas décommenter si vous n'avez pas le script associé.
+#~# # (cf https://wiki.crans.org/VieCrans/FichiersConfiguration#scripting)
+#~# :0
+#~# * ^List-Id:.*respbats\.lists\.crans\.org
+#~# * ^X-Mailer:\/.*
+#~# {
+#~#   # Machines supprimées pour chambre invalide
+#~#   :0
+#~#   * ? echo "${MATCH}" | ${DECODEHEADERSCRIPT} | grep /usr/scripts/gestion/chambres_vides.py
+#~#   ${DELETEDMACHINES}/
+#~# }
 
 
 #################################################################
@@ -866,7 +889,7 @@ ${CABLAGEDIR}/
     
     # MLs Med
     :0
-    * ? echo "${ML}" | grep med
+    * ? echo "${ML}" | grep -E "^med"
     ${MLMEDDIR}.${ML_}/
     
     # MLs SDA
@@ -961,9 +984,13 @@ ${CABLAGEDIR}/
   ##              Gestion des autres mailing-listes              ##
   #################################################################
   # On récupère le nom de domaine et le nom de la ML
+  # Le nom de domaine, c'est le mot (sans .) qui précède le TLD
   DOMAIN=`echo "${ML}" | sed 's/.*\.\([^\.]\+\)\.[^\.]\+$/\1/'`
   # On ne sait jamais ce qu'on peut rencontrer…
   DOMAIN_=`echo "${DOMAIN}" | sed 's/ /_/g'`
+  # On vire le domain et le TLD
+  # On vire .list ou .lists si c'est la composante la plus à droite
+  # du subdomain
   # On prend garde à ne pas créer un sous-dossier
   # si jamais le List-Id contient un . ou un espace
   ML_=`echo "${ML}" | sed 's/\.[^\.]\+\.[^\.]\+$//;s/\.lists\?$//;s/\(\.\| \)/_/g'`