# Ce fichier est mis à votre disposition par des cranseux sans aucune garantie.
# Nous sommes un certain nombre à l'utiliser nous-mêmes, souvent dans une version
# légèrement modifiée.
-# * Nous ne sommes pas responsable si vous perdez des mails ou si ils sont mal triés.
+# * Nous ne sommes pas responsables si vous perdez des mails ou si ils sont mal triés.
# * Pensez à copier également les autres fichiers si vous utilisez les include.
# * Vous pouvez rester à jour en trackant le dépôt git : http://git.crans.org/git/fichiers_configuration.git
# (on corrige des trucs et on rajoute parfois des nouveaux/meilleurs tris)
# (pour l'instant commentés par #~#)
# Ils doivent être tous les trois dans ${CONFIGDIR}
# * Le premier, custom.high.rules contient des règles qui overrident tout
-# le comportement ce .procmailrc,pour des mails qui doivent être classés
+# le comportement ce .procmailrc, pour des mails qui doivent être classés
# sans autre condition.
# * Le deuxème, custom.normal.rules doit contenir la plupart de vos règles
# personnelles, il est géré après les mails envoyés par le Cr@ns mais avant
# * 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)
################################################################################
# | | | |- <triés selon les cronjob souvent rencontrés listés dans le fichier cron.folders>
# | | |
# | | |-[+] gest_crans (Rapports de bugs envoyés lors d'un crash de gest_crans)
+# | | |
+# | | |-[$] printer_watch (L'imprimante a bourré/n'a plus d'encre)
# | |
# | |-[*+] 3-Argh (Il faut vite faire quelque chose !)
# | | |
#################################################################
## 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"
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 ##
#################################################################
INTRANET1DIR="${SOFTDIR}.intranet-bugreport"
CRONDIR="${WILDDIR}.cron"
GESTCRANSDIR="${WILDDIR}.gest_crans"
+PRINTERWATCHDIR="${WILDDIR}.printer_watch"
NOLSDIR="${ARGHDIR}.nols"
PULSARDIR="${ARGHDIR}.pulsar"
MAILMANDIR="${HUMANPROBLEMSDIR}.Mailman"
# Messages sur la Freebox
:0
- * ^From: telephonie.freebox@freetelecom.fr
+ * ^From: telephonie\.freebox@(mevo\.)?freetelecom\.fr
${FREEBOXDIR}/
# Serveurs non synchronisés avec bcfg2
:0
* ^From: munin@crans\.org
${MUNINIMPRESSIONDIR}/
+
+ # L'imprimante fait des siennes
+ :0
+ * ^X-Mailer: /usr/scripts/impression/printer_watch.py
+ ${PRINTERWATCHDIR}/
}
+
# Sur la ML respbats@
+# 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
- * ^X-Mailer: /usr/scripts/gestion/chambres_vides.py
+ * ? echo "${MATCH}" | ${DECODEHEADERSCRIPT} | grep /usr/scripts/gestion/chambres_vides.py
${DELETEDMACHINES}/
}
# MLs Med
:0
- * ? echo "${ML}" | grep med
+ * ? echo "${ML}" | grep -E "^med"
${MLMEDDIR}.${ML_}/
# MLs SDA
## 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'`