]> gitweb.pimeys.fr Git - config-20-100.git/commitdiff
Première version de .procmailrc
authorVincent Le Gallic <legallic@crans.org>
Mon, 8 Jul 2013 15:01:58 +0000 (17:01 +0200)
committerVincent Le Gallic <legallic@crans.org>
Mon, 8 Jul 2013 15:01:58 +0000 (17:01 +0200)
Il manque encore quelques mailing-listes extérieures.
On pourrait inclure les filtres wikis dans le procmail général.

17 files changed:
.procmail/logs/.placeholder [new file with mode: 0644]
.procmail/rc/ML_MA_crans.administratif.prive [new file with mode: 0644]
.procmail/rc/ML_MA_crans.administratif.public [new file with mode: 0644]
.procmail/rc/ML_MA_federez [new file with mode: 0644]
.procmail/rc/ML_bda [new file with mode: 0644]
.procmail/rc/ML_campus [new file with mode: 0644]
.procmail/rc/ML_clubs [new file with mode: 0644]
.procmail/rc/ML_perso [new file with mode: 0644]
.procmail/rc/ML_sono [new file with mode: 0644]
.procmail/rc/cron.folders [new file with mode: 0644]
.procmail/rc/cron.rules [new file with mode: 0644]
.procmail/rc/custom.final.rules [new file with mode: 0644]
.procmail/rc/custom.high.rules [new file with mode: 0644]
.procmail/rc/custom.normal.rules [new file with mode: 0644]
.procmail/rc/main [new symlink]
.procmail/rc/retrocompatibility_patch.rules [new file with mode: 0644]
.procmailrc [new file with mode: 0644]

diff --git a/.procmail/logs/.placeholder b/.procmail/logs/.placeholder
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.procmail/rc/ML_MA_crans.administratif.prive b/.procmail/rc/ML_MA_crans.administratif.prive
new file mode 100644 (file)
index 0000000..f45559f
--- /dev/null
@@ -0,0 +1,6 @@
+bureau
+disconnect
+impression
+respbats
+spoof
+tresorier
diff --git a/.procmail/rc/ML_MA_crans.administratif.public b/.procmail/rc/ML_MA_crans.administratif.public
new file mode 100644 (file)
index 0000000..30793e5
--- /dev/null
@@ -0,0 +1,5 @@
+ca
+crans-crous
+dsi-crans
+install-party
+saclay
diff --git a/.procmail/rc/ML_MA_federez b/.procmail/rc/ML_MA_federez
new file mode 100644 (file)
index 0000000..884bb7a
--- /dev/null
@@ -0,0 +1,4 @@
+federez
+admin
+saclay
+saclay-reseau
diff --git a/.procmail/rc/ML_bda b/.procmail/rc/ML_bda
new file mode 100644 (file)
index 0000000..8d7a530
--- /dev/null
@@ -0,0 +1,5 @@
+bda-paris
+bda-paris-orga
+infoconcert
+sorties.bda
+voyages-bda
diff --git a/.procmail/rc/ML_campus b/.procmail/rc/ML_campus
new file mode 100644 (file)
index 0000000..0972d72
--- /dev/null
@@ -0,0 +1,29 @@
+aeronormale
+amap
+aumonerie-c4
+assoces
+beekeepersociety
+bureau.forum
+com-ens
+cvi
+debats-ens
+forum
+gt-cve
+hazara
+kultte
+kultte-bureau
+la5emeparallele
+lasauce
+lasauce-adherents
+lika-diffusion
+likeamembres
+likeanewsletter
+normaliens.autrement
+paris-sorties
+pde-ens
+praccis
+programme-cineclub
+sciences-croustillantes
+sciencescroustillantes-actifs
+sporz
+vachenoire
diff --git a/.procmail/rc/ML_clubs b/.procmail/rc/ML_clubs
new file mode 100644 (file)
index 0000000..f53a791
--- /dev/null
@@ -0,0 +1,62 @@
+aikido
+arts
+atelier-ecriture
+club-barbapapa
+club-basket
+club-basket-feminin
+club-bassine
+club-biere
+club-biere-bureau
+club-bierepong
+club-billard
+club-bridge
+club-c2
+club-c3
+club-capriccio
+club-cave
+club-cave-gestion
+club-dessin
+club-disnens
+club-djkens
+club-ebm
+club-escalade
+club-esperanto
+club-finance
+club-fruitensmix
+club-go
+club-irraiductibles
+club-jeu-de-role
+club-jeuxvideo
+club-jeuxvideo-bureau
+club-karaokens
+club-kbaret
+club-kchant
+club-kitchens
+club-krobot
+club-leffesive
+club-machine
+club-magicthegathering
+club-meca
+club-nanar
+club-nsr
+club-photo
+club-piano
+club-poker
+club-rock
+club-rom
+club-salsa
+club-sekte
+club-skat
+club.astro
+detenste
+eurovisioens
+fensfoire
+impro
+jonglage
+k-dens
+magie
+numens
+seksi
+shape
+wooo
+wrc
diff --git a/.procmail/rc/ML_perso b/.procmail/rc/ML_perso
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.procmail/rc/ML_sono b/.procmail/rc/ML_sono
new file mode 100644 (file)
index 0000000..ea6d5ea
--- /dev/null
@@ -0,0 +1,3 @@
+commerce-equitable
+laos
+senegal
diff --git a/.procmail/rc/cron.folders b/.procmail/rc/cron.folders
new file mode 100644 (file)
index 0000000..69bf848
--- /dev/null
@@ -0,0 +1,19 @@
+munin_apt_all  /etc/munin/plugins/apt_all
+monit          /usr/sbin/monit
+iscsi-update   /usr/scripts/gestion/iscsi/update.sh
+print_status   /usr/scripts/impression/print_status.py
+bcfg2          /usr/sbin/bcfg2
+psql_filtrage  /usr/bin/psql filtrage
+ntpdate                /usr/sbin/ntpdate
+wifi_new       /usr/scripts/wifi_new/updates.py
+sshFingerprint /usr/scripts/gestion/gen_confs/populate_sshFingerprint.py
+deconnexion    /usr/scripts/surveillance/deconnexion.py
+secours                /usr/scripts/secours/check-vpn-from-ovh
+secours                /usr/scripts/secours/secours.py
+check_cert     /usr/scripts/utils/check_cert.py
+proxy-watch    /etc/cron.script/proxy-watch
+generate       /usr/scripts/gestion/gen_confs/generate.py
+sip_multidial  /usr/scripts/sip/sip_multidial.py
+named-checkzone        /usr/sbin/named-checkzone
+pages-wiki     Impossible de dumper les pages proxy du wiki
+anacron                anacron
diff --git a/.procmail/rc/cron.rules b/.procmail/rc/cron.rules
new file mode 100644 (file)
index 0000000..b0864d1
--- /dev/null
@@ -0,0 +1,27 @@
+# Complémentaire au .procmailrc générique mis à votre disposition
+# par les gentils membres actifs du Cr@ns
+# Vous pouvez l'utiliser, le redistribuer, le modifier à votre convenance.
+# Des questions, des suggestions : {nounou,ca}@lists.crans.org
+# Licence : WTFPL
+
+# Ce fichier permet de trier les mails envoyés par les Cron des serveurs Cr@ns
+
+CRONMUNINDIR="${CRONDIR}.munin"
+
+:0
+* ^X-Cron-Env:.*LOGNAME=munin
+${CRONMUNINDIR}/
+
+# * Trier php ?
+
+# La plupart des cronjobs sont triés sur le Subject:
+# grâce à au fichier cron.folders
+:0
+* ^Subject:\/.*$
+{
+  SUBJECT=${MATCH}
+  GOTO=`cat ${CONFIGDIR}/cron.folders | while read -r line; do if [[ "${SUBJECT}" = *"$(echo $line | sed 's@[-_a-zA-Z0-9]\+\s\+@@')"* ]]; then (echo -n $line | sed 's@\s\+.*$@@'); fi; done | head -n 1`
+  :0
+  * ? echo "$GOTO" | egrep -v '^$'
+  ${CRONDIR}.${GOTO}/
+}
diff --git a/.procmail/rc/custom.final.rules b/.procmail/rc/custom.final.rules
new file mode 100644 (file)
index 0000000..4abd966
--- /dev/null
@@ -0,0 +1,14 @@
+# Complémentaire au .procmailrc générique mis à votre disposition
+# par les gentils membres actifs du Cr@ns
+# Vous pouvez l'utiliser, le redistribuer, le modifier à votre convenance.
+# Des questions, des suggestions : {nounou,ca}@lists.crans.org
+# Licence : WTFPL
+
+# Ce fichier permet contient des règles personnelles qui sont appliquées
+# après toutes les autres règles
+
+#------------------------------------------------------------------------------
+
+#~# # Supposons que je n'aime pas .INBOX comme boîte par défaut
+#~# :0
+#~# .mon_inbox_custom/
diff --git a/.procmail/rc/custom.high.rules b/.procmail/rc/custom.high.rules
new file mode 100644 (file)
index 0000000..7d72cd4
--- /dev/null
@@ -0,0 +1,10 @@
+# Complémentaire au .procmailrc générique mis à votre disposition
+# par les gentils membres actifs du Cr@ns
+# Vous pouvez l'utiliser, le redistribuer, le modifier à votre convenance.
+# Des questions, des suggestions : {nounou,ca}@lists.crans.org
+# Licence : WTFPL
+
+# Ce fichier permet contient des règles personnelles qui sont appliquées
+# avant toutes les autres règles
+
+#------------------------------------------------------------------------------
diff --git a/.procmail/rc/custom.normal.rules b/.procmail/rc/custom.normal.rules
new file mode 100644 (file)
index 0000000..9529c44
--- /dev/null
@@ -0,0 +1,36 @@
+# Complémentaire au .procmailrc générique mis à votre disposition
+# par les gentils membres actifs du Cr@ns
+# Vous pouvez l'utiliser, le redistribuer, le modifier à votre convenance.
+# Des questions, des suggestions : {nounou,ca}@lists.crans.org
+# Licence : WTFPL
+
+# Ce fichier permet contient des règles personnelles qui sont appliquées
+# avant la gestion automatique des mailing-lists (pour que vous puissiez
+# en gérer certaines différemment), mais après les règles souvent sollicitées
+# par les mails des membres actifs Cr@ns.
+# C'est dans ce fichier que vous devriez mettre la plupart de vos règles perso
+
+#------------------------------------------------------------------------------
+
+### Notifications wikis
+# Wiki Cr@ns
+:0
+* ^From:.*wiki@crans\.org
+.wikis.Crans/
+
+# Wikoeur
+:0
+* ^From:.*webmaster@acoeur\.info
+* ^Subject:.*WiKoeur.*
+.wikis.Wikoeur/
+
+# Wiki FedeRez
+:0
+* ^X-Dokuwiki-Server:.*wiki\.federez\.net
+.wikis.FedeRez/
+
+
+### Mails recus de Kokarde.net
+:0
+* ^From:.*administrateur@webaaee\.ens-cachan\.fr
+.Kokarde/
diff --git a/.procmail/rc/main b/.procmail/rc/main
new file mode 120000 (symlink)
index 0000000..7a3fea7
--- /dev/null
@@ -0,0 +1 @@
+../../.procmailrc
\ No newline at end of file
diff --git a/.procmail/rc/retrocompatibility_patch.rules b/.procmail/rc/retrocompatibility_patch.rules
new file mode 100644 (file)
index 0000000..def9890
--- /dev/null
@@ -0,0 +1,43 @@
+# Complémentaire au .procmailrc générique mis à votre disposition
+# par les gentils membres actifs du Cr@ns
+# Vous pouvez l'utiliser, le redistribuer, le modifier à votre convenance.
+# Des questions, des suggestions : {nounou,ca}@lists.crans.org
+# Licence : WTFPL
+
+# Ce fichier permet contient des règles pour trier les mails qui ont été
+# reçus avant le 30/06/13, car certaines règles de tri du .procmailrc
+# n'étaient pas encore valables à l'époque.
+
+#------------------------------------------------------------------------------
+
+# Statistiques des dernières 24h n'avait pas de X-Mailer
+:0
+* ^Subject:.*Statistiques.*24h
+${STATUPLOADDIR}/
+
+:0
+* ^List-Id:.*impression\.lists\.crans\.org
+{
+  # Les modifications de solde n'avaient pas de X-Mailer
+  :0
+  * ^Subject: .*Modification de solde
+  ${LDAPSOLDEDIR}/
+
+  # print_status.py n'avait pas de X-Mailer
+  :0
+  * ^Subject: .*\[print_status.py\]
+  ${PRINTSTATUSDIR}/
+}
+
+# Les machines supprimées pour chambre invalide n'avaient pas de X-Mailer
+:0
+* ^List-Id:.*respbats\.lists\.crans\.org
+* ^Subject: \[Respbats\] Machines supprim.*es pour chambre invalide
+${DELETEDMACHINES}/
+
+# bcfg2-report n'avait pas de X-Mailer
+:0
+* ^To: roots@crans.org
+* ^Subject: Serveurs non synchronis.*s avec bcfg2
+${BCFG2DIR}/
+
diff --git a/.procmailrc b/.procmailrc
new file mode 100644 (file)
index 0000000..ab5a8d9
--- /dev/null
@@ -0,0 +1,893 @@
+################################################################################
+###             Still being tested. Use at your own risks…                   ###
+################################################################################
+
+# .procmailrc générique mis à votre disposition
+# par les gentils membres actifs du Cr@ns
+# Vous pouvez l'utiliser, le redistribuer, le modifier à votre convenance.
+# Des questions, des suggestions : {nounou,ca}@lists.crans.org
+# Licence : WTFPL
+
+# Les sections commentées par #~# sont des features qui ne sont pas activées
+# par défaut. Sentez-vous libre de les décommenter pour les utiliser.
+
+# Attention : le path par défaut des fichiers de logs est $HOME/.procmail/logs
+# Assurez-vous que le dossier en question existe avant d'utiliser ce .procmailrc
+
+#------------------------------------------------------------------------------
+# Ce fichier commence par une grosse section de commentaire qui donne un aperçu
+# de l'arborescence de dossiers qui sera obtenue en utilisant ce .procmailrc.
+# Les règles ne sont pas dans le même ordre, en effet, il est plus efficace
+# de mettre en premier les règles qui sont le plus souvent vérifiées pour
+# diminuer le temps moyen de traitement.
+
+# Vous pouvez ajouter vos propres règles de tri sans modifier ce fichier,
+# en effet, ce .procmailrc inclus trois autres fichiers de règles
+# (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
+#    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 comportement par défaut des mailing-lists, ce qui vous permet d'en
+#    trier certaines selon un autre schéma
+#  * 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
+
+
+
+################################################################################
+#####                             Commentaires                             #####
+################################################################################
+#
+# Les tags suivants expliquent quels membres actifs reçoivent quels mails :
+# $: câbleur/imprimeur
+# *: apprenti
+# +: nounou
+# B: bureau
+# T: trésorier
+# M: modérateur
+# F: admin federez
+# 
+### /!\ pour cron, faire attention à ne pas envoyer les mails cron perso sur
+###  zamok dans les dossiers cron !
+### 
+### pour les ml : faire des sous-dossiers bounces --> IDEA DROPPED
+### 
+### dans le main procmailrc : (ouais enfin finalement on met tout dans le même)
+###  - le bidule pour trier les crons persos --> DONE
+###  - le truc trop bien de Harry pour trier les ml du campus --> DONE
+### 
+### Multi-déco upload dans un autre dossier --> DONE
+# 
+# Cr@ns
+#   |
+# ./|-[$*+BT] Administratif (le côté administratif : bot free !)
+# ./|    |
+# ./|    |-[$*+B] public
+# ./|    |    |
+# ./|    |    |-[$*+B] ca
+# ./|    |    |-[+B] dsi-crans
+# ./|    |    |-[*+B] install-party
+# ./|    |    |-[B] crans-crous
+# ./|    |
+# ./|    |-[$*+BT] privé
+# ./|         |
+# ./|         |-[B] bureau
+# ./|         |-[T] trésorier
+# ./|         |-[$*+] respbats (bot free)
+# ./|         |-[$*+] impression (sans modif_solde, munin, print_status)
+# ./|         |-[+B] spoof
+# ./|         |-[+B] disconnect (sans les bots)
+# ./|
+# ./|
+# ./|-[*+BF] Federez (bah, federez quoi !)
+# ./|    |
+# ./|    |-[*+B] federez
+# ./|    |-[F] admin
+# ./|    |-[(F)] monit
+# ./|
+# ./|
+# ./|-[$*+BM] Surveillance (on stalke, pour vérifier ce que font les autres)
+# ./|    |
+# ./|    |-[+] Irrelevant : logcheck
+# ./|    |
+# ./|    |-[+BM] modérateur
+# ./|    |
+# ./|    |-[+] ovh (connexions au manager)
+# ./|    |
+# ./|    |-[*+] caméras (à trier)
+# ./|    |
+# ./|    |-[$*+] LDAP
+# ./|    |    |
+# ./|    |    |-[$*+] modif-solde
+# ./|    |    |-[*+] modifications de la base ldap
+# ./|    |
+# ./|    |-[+] cranspasswords
+# ./|
+# ./|
+# ./|-[*+] Monitoring (une machine fait-elle de la merde ?)
+# ./|    |
+# ./|    |-[*+] monit
+# ./|    |     |
+# ./|    |     |- trier dynamiquement par serveur !
+# ./|    |
+# ./|    |-[+] nagios
+# ./|    |     |
+# ./|    |     |- trier dynamiquement par serveur !
+# ./|    |
+# ./|    |-[$*+] munin
+# ./|    |     |
+# ./|    |     |-[$*+] impression 
+# ./|    |
+# ./|    |-[+] arpwatch
+# ./|    |     |
+# ./|    |     |-[+] changed ethernet address
+# ./|    |     |-[+] flip-flop
+# ./|    |     |-[+] new_activity
+# ./|    |     |-[+] new_station
+# ./|    |
+# ./|    |-[+B] stats d'upload  --> À vérifier que le X-Mailer marche
+# ./|
+# ./|
+# ./|-[$*+] Problèmes (à regarder avant d'aller se coucher)
+# ./|    |
+# ./|    |-[*+] self-sloving
+# ./|    |     |
+# ./|    |     |-[*+] SQL errors
+# ./|    |     |-[+] ftp
+# ./|    |
+# ./|    |-[+] modéré
+# ./|    |     |
+# ./|    |     |-[+] intranet1
+# ./|    |     |-[+] intranet2 (en fait, django en général)
+# ./|    |     |-[*+] backuppc
+# ./|    |
+# ./|    |-[*+] attention (cron)
+# ./|    |     |
+# ./|    |     |-[*+] à trier : roots/root ou par serveur
+# ./|    |
+# ./|    |-[*+] Argh
+# ./|    |     |
+# ./|    |     |-[*+] nols
+# ./|    |     |-[*+] pulsar
+# ./|    |
+# ./|    |-[$*+] Humain
+# ./|          |
+# ./|          |-[$*+] print_status
+# ./|          |
+# ./|          |-[+] mailman
+# ./|          |
+# ./|          |-[B+] déco N fois en un mois
+# ./|
+# ./|
+# ./|-[*+] Information (keep up to date)
+# ./|    |
+# ./|    |-[*+] apt-listchanges
+# ./|    |
+# ./|    |-[+] ovh (newsletters, factures)
+# ./|    |
+# ./|    |-[$*+] machines supprimées
+# ./|    |
+# ./|    |-[*+] git (commits)
+# ./|    |     |
+# ./|    |     |-[*+] what's new
+# ./|    |
+# ./|    |-[*+] darcs (records)
+# ./|    |     |
+# ./|    |     |-[*+] what's new
+# ./|    |
+# ./|    |-[+] bcfg2 (Serveurs non synchronisés avec bcfg2)
+# ./|    |
+# ./|    |-[+] inn (stats des servuers de news)
+# ./|
+# ./|
+# ./|-[$*+B] Technique (les discussions et les trucs reliés)
+# ./     |
+# ./     |-[*+] Nounou
+# ./     |
+# ./     |-[*+] Roots
+# ./     |
+# ./     |-[$*+] câblages à effectuer
+# ./     |
+# ./     |-[*+B] tracker
+# 
+
+
+
+################################################################################
+#####                              Variables                               #####
+################################################################################
+
+#################################################################
+##                   Variables d'environnement                 ##
+#################################################################
+# 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"
+# Dossier où sont les fichiers de configuration supplémentaires pour procmail
+CONFIGDIR="${PROCMAILDIR}/rc"
+# Path du fichier de log de procmail
+LOGFILE="${PROCMAILDIR}/logs/procmail.log"
+
+
+#################################################################
+##                      Noms de dossiers                       ##
+#################################################################
+# /Attention à ne pas mettre de . ou d'espace au mauvais endroit…/
+
+### Dossiers personnels
+## Dossier pour ranger les mails de Cron
+## (ceux envoyés par un serveur Cr@ns seront rangés ailleurs)
+CRONPERSODIR=".Cron"
+
+## Dossier de Spam
+SPAMDIR=".Spam"
+# Spam reçu sur (usenet|news)@(crans.org|crans.ens-cachan.fr)
+SPAMINNDIR="${SPAMDIR}.usenet"
+
+
+### Dossiers pour les MLs qui ne sont pas catchées par une autre règle
+## Dossier racine
+MLDIR=".ML"
+
+### Dossiers pour les MLs du campus
+MLCAMPUSDIR="${MLDIR}.Campus"
+MLBDEDIR="${MLCAMPUSDIR}.BDE"
+MLCLUBSDIR="${MLCAMPUSDIR}.Clubs"
+MLMEDDIR="${MLCLUBSDIR}.Med"
+MLBDLDIR="${MLCAMPUSDIR}.BDL"
+MLBDADIR="${MLCAMPUSDIR}.BDA"
+MLSDADIR="${MLCAMPUSDIR}.SDA"
+MLGALADIR="${MLCAMPUSDIR}.Gala"
+MLSONODIR="${MLCAMPUSDIR}.SoNo"
+
+## Dossier où atterrira une ML non-répertoriée
+MLFAILSUFFIX="Fail"
+
+### Dossier pour les MLs de promo
+MLPROMODIR="${MLDIR}.Promo"
+
+### Dossier pour les MLs non répertoriées plus haut et non-MA-crans
+MLPERSODIR="${MLDIR}.Divers"
+
+### Dossiers pour les Membres Actifs du Cr@ns
+## Dossier racine
+CRANSDIR=".Cr@ns"
+## Dossiers de mailing lists
+CRANSADMINISTRATIFDIR="${CRANSDIR}.Administratif"
+CRANSADMINISTRATIFPUBLICDIR="${CRANSADMINISTRATIFDIR}.public"
+CRANSADMINISTRATIFPRIVATEDIR="${CRANSADMINISTRATIFDIR}.prive"
+
+## Dossiers pour les mails de monitoring
+MONITORINGDIR="${CRANSDIR}.Monitoring"
+MONITDIR="${MONITORINGDIR}.Monit"
+NAGIOSDIR="${MONITORINGDIR}.Nagios"
+NAGIOSSWITCHSDIR="${NAGIOSDIR}.0-switchs"
+ARPWATCHDIR="${MONITORINGDIR}.Arpwatch"
+MUNINDIR="${MONITORINGDIR}.Munin"
+MUNINIMPRESSIONDIR="${MUNINDIR}.Imprimante"
+STATUPLOADDIR="${MONITORINGDIR}.Stats-upload"
+
+## Dossiers pour le mails concernant des "problèmes"
+# Racine
+PROBLEMSDIR="${CRANSDIR}.Problems"
+# Par ordre de gravité croissant
+SELFSOLVINGDIR="${PROBLEMSDIR}.0-Self-solving"
+SOFTDIR="${PROBLEMSDIR}.1-Soft"
+WILDDIR="${PROBLEMSDIR}.2-Wild"
+ARGHDIR="${PROBLEMSDIR}.3-Argh"
+HUMANPROBLEMSDIR="${PROBLEMSDIR}.4-Human-made"
+# Sous-dossiers
+FTPDIR="${SELFSOLVINGDIR}.ftp"
+SQLGREYDIR="${SELFSOLVINGDIR}.sql-errors"
+BACKUPPCDIR="${SOFTDIR}.backuppc"
+DJANGODIR="${SOFTDIR}.Django"
+INTRANET2DIR="${SOFTDIR}.Intranet2"
+INTRANET1DIR="${SOFTDIR}.intranet-bugreport"
+CRONDIR="${WILDDIR}.cron"
+NOLSDIR="${ARGHDIR}.nols"
+PULSARDIR="${ARGHDIR}.pulsar"
+MAILMANDIR="${HUMANPROBLEMSDIR}.Mailman"
+PRINTSTATUSDIR="${HUMANPROBLEMSDIR}.print_status"
+MULTIDECODIR="${HUMANPROBLEMSDIR}.multi-deco"
+
+## Dossier de surveillance (= surveillance d'actions humaines)
+# Racine
+SURVEILLANCEDIR="${CRANSDIR}.Surveillance"
+# Par ordre de sensibilité croissant
+LOGCHECKDIR="${SURVEILLANCEDIR}.0-logcheck"
+MODERATEURSDIR="${SURVEILLANCEDIR}.1-Moderateurs"
+OVHMANAGERDIR="${SURVEILLANCEDIR}.2-OVH"
+CAMERASDIR="${SURVEILLANCEDIR}.3-Cameras"
+LDAPDIR="${SURVEILLANCEDIR}.4-LDAP"
+LDAPSOLDEDIR="${LDAPDIR}.Solde"
+LDAPMODIFDIR="${LDAPDIR}.Modification"
+CRANSPASSWORDSDIR="${SURVEILLANCEDIR}.5-cranspasswords"
+
+## Dossier informatif  (= pour se tenir au courant de ce qui se passe au Cr@ns)
+# Racine
+INFORMATIONDIR="${CRANSDIR}.Information"
+# Mails d'ovh autre que les notifications de connexion au manager
+OVHDIR="${INFORMATIONDIR}.OVH"
+# apt-listchanges
+APTLISTCHANGESDIR="${INFORMATIONDIR}.apt-listchanges"
+# Machines supprimées pour chambre invalide
+DELETEDMACHINES="${INFORMATIONDIR}.machines_supprimees"
+# Repositories
+GITDIR="${INFORMATIONDIR}.git"
+DARCSDIR="${INFORMATIONDIR}.darcs"
+# Mail envoyé quotidiennement par bcfg2 avec la liste des serveurs non synchro
+BCFG2DIR="${INFORMATIONDIR}.bcfg2"
+# Statistiques des serveurs de news
+INNDIR="${INFORMATIONDIR}.inn"
+
+## Dossier de discussion techniques
+# Racine
+TECHNIQUEDIR="${CRANSDIR}.Technique"
+# Mails de roots@ non catchées avant
+ROOTSDIR="${TECHNIQUEDIR}.roots"
+# Mails de câblages demandé/effectué
+CABLAGEDIR="${TECHNIQUEDIR}.Cablages"
+# Mails du tracker
+TRACKERDIR="${TECHNIQUEDIR}.Tracker"
+# Mails de la ML nounou
+NOUNOUDIR="${TECHNIQUEDIR}.Nounou"
+# Messages laissés sur la Freebox
+FREEBOXDIR="${TECHNIQUEDIR}.Freebox"
+# Dossier où atterriront les mails de root@ non triés
+ROOTDEFAULTDIR="${TECHNIQUEDIR}.root"
+
+### Dossier racine pour Federez
+FEDEREZDIR="${CRANS_FOLDER}.FedeRez"
+FEDEREZMONITDIR="${FEDEREZDIR}.Monit"
+
+
+
+################################################################################
+#####                                Règles                                #####
+################################################################################
+
+#~# # Patch pour traiter les mails qui ont été
+#~# # reçus avant le 30/06/13, car certaines règles de tri du .procmailrc
+#~# # n'étaient pas encore valables à l'époque.
+#~# # très utile si on veut retrier tous ses mails
+#~# INCLUDERC="${CONFIGDIR}/retrocompatibility_patch.rules"
+
+#~# # Fichier de règles prioritaires à personnaliser
+#~# INCLUDERC="${CONFIGDIR}/custom.high.rules"
+
+#################################################################
+##                Gestion des mails d'Arpwatch                 ##
+#################################################################
+:0
+* ^From:.*arpwatch@crans\.org
+{
+  # On trie les différents types de mails d'Arpwatch,
+  # en faisant attention aux . et aux espaces après avoir éliminé
+  # tout ce qui se trouve après " (".
+  :0
+  * ^Subject: \/.* \(
+  {
+    TYPE=`echo $MATCH | sed 's/ (.*//;s/\( \|\.\)/_/g;'`
+    :0
+    ${ARPWATCHDIR}.${TYPE}/
+  }
+  
+  :0
+  ${ARPWATCHDIR}/
+}
+
+
+#################################################################
+##                Gestion des mails de Monit                   ##
+#################################################################
+
+# Les mails de Monit à propos du serveur A sont envoyés dans le dossier 
+# ${MONITDIR}.A/ si le dossier n'existe pas, il est créé mais il 
+# faut encore s'y abonner...
+:0
+* ^(X-Mailer|User-Agent):.*monit
+{
+  # Avant de tester les hotsnames Cr@ns, règle spéciale utile pour
+  # certains admin de FedeRez
+  :0
+  * ^To: federez-monit@
+  ${FEDEREZMONITDIR}/
+  
+  :0
+  * ^Subject:.*monit \/[^ \.]+
+  ${MONITDIR}.${MATCH}/
+  
+  # Dossier de Monit par défaut, si Monit se met à envoyer d'autres mails
+  :0
+  ${MONITDIR}/
+}
+
+
+#################################################################
+##                Gestion des mails de Nagios                  ##
+#################################################################
+
+# Les mails de Nagios à propos du serveur A sont envoyés dans le dossier
+# ${NAGIOSDIR}.A/ si le dossier n'existe pas, il est créé mais il
+# faut encore s'y abonner
+:0
+* ^(From: nagios@crans\.org|User-Agent:.*nagios)
+{
+  # Tous les switchs vont dans le dossier ${NAGIOSSWITCH}
+  :0
+  * ^Subject:.*Alert: bat[^/]+-
+  ${NAGIOSSWITCHSDIR}/
+  
+  # Chaque serveur a son dossier
+  :0
+  * ^Subject:.*Alert: \/[^/\.]+
+  ${NAGIOSDIR}.${MATCH}/
+  
+  # Si l'envie prenait à Nagios de raconter un peu plus sa vie
+  :0
+  ${NAGIOSDIR}/
+}
+
+
+#################################################################
+##                 Gestion des mails de Cron                   ##
+#################################################################
+
+# Attention, si on enlève la ligne qui filtre sur le To:, on catche
+# aussi tous les mails Cron qui ne sont pas envoyés par un serveur Cr@ns
+:0
+* ^To:.*(roots?|postgres|www-data|list)@crans\.org
+* ^(X-Cron-Env|From: Anacron)
+{
+  #~# # Par défaut, on ne trie pas les mails de Cron, pensez à décommenter
+  #~# # le INCLUDERC (et à copier le fichier complémentaire) pour les trier
+  #~# INCLUDERC=${CONFIGDIR}/cron.rules
+  
+  :0
+  ${CRONDIR}/
+}
+
+
+#################################################################
+##             Gestion des mails de root@crans.org             ##
+#################################################################
+
+# Statistiques du serveur de news
+# Désolidarisé du bloc root@crans.org pour séparer les spams
+# sans qu'ils tombent dans ${ROOTDEFAULTDIR}
+:0
+* ^To:.*(usenet|news)@(crans\.org|crans\.ens-cachan\.fr)
+{
+  # L'intérêt c'est que plein de spam arrive sur ces addresses
+  # et seules les stats d'inn sont censées y arriver.
+  # Donc on peut bazarder tout ce qui n'est pas stat au Spam
+  :0
+  * ^From: news@crans.org
+  ${INNDIR}/
+  
+  :0
+  ${SPAMINNDIR}/
+}
+
+# On matche tous les alias de root@crans.org
+:0
+* ^(To|Cc): .*(root|abuse|amavis|backup|bind|bin|clamav|daemon|ftpadm|ftpmaster|ftp-mirror|ftp|games|gnats|irc|list|logcheck|lp|mail|majordom|man|msql|munin|news|operator|postgres|proxy|sync|sys|usenet|uucp|webmaster|www-clubs|www-data|www-perso|postmaster|mailer-daemon)@crans\.org
+{
+  # Spam de logcheck
+  :0
+  * ^From:.*logcheck@crans\.org
+  ${LOGCHECKDIR}/
+  
+  # Mails envoyés par munin quand il trouve qu'un graphe sort des limites
+  :0
+  * ^From: munin@crans\.org
+  ${MUNINDIR}/
+  
+  # Mails envoyés en cas d'erreur de synchronisation du ftp
+  :0
+  * ^From: mirror@crans\.org
+  ${FTPDIR}/
+  
+  # Mails envoyés en cas d'erreur sur l'intranet2
+  :0
+  * ^Subject: \[Intranet2 Cr@ns\]
+  ${INTRANET2DIR}/
+  
+  # Mails envoyés en cas d'une autre erreur Django
+  :0
+  * ^Subject: \[Django\]
+  ${DJANGODIR}/
+  
+  # Mails envoyés lors de la modification d'un fichier de mot de passe
+  :0
+  * ^X-Mailer: cranspasswords
+  ${CRANSPASSWORDSDIR}/
+  
+  # Mails envoyés par OVH…
+  :0
+  * ^From:.*support@ovh\.com
+  {
+    # …lors d'une connexion au manager
+    :0
+    * ^X-Ovh-Template: nic/fr/loginNotification.model
+    ${OVHMANAGERDIR}/
+    
+    # Pour autre chose (facture, newsletter)
+    :0
+    ${OVHDIR}/
+  }
+  
+  # Mail envoyés par apt-listchanges lors d'une mise à jour
+  :0
+  * ^Subject:.*apt-listchanges
+  ${APTLISTCHANGESDIR}/
+  
+  # Serveurs non synchronisés avec bcfg2
+  :0
+  * ^X-Mailer: bcfg2-reports
+  ${BCFG2DIR}/
+  
+  # Tout ce qui traîne sur root et qui n'est pas catché par quelque chose
+  :0
+  ${ROOTDEFAULTDIR}/
+}
+
+
+#################################################################
+##            Gestion des mails de roots@crans.org             ##
+#################################################################
+
+:0
+* ^(To|Cc|List-Id):.*roots(@|\.lists\.)crans\.org
+{
+  # Il y a aussi des apt-listchanges sur roots@
+  :0
+  * ^Subject:.*apt-listchanges
+  ${APTLISTCHANGESDIR}/
+
+  # Mails envoyés par la baie de disques
+  :0
+  * ^From: nols@crans\.org
+  ${NOLSDIR}/
+  
+  # Mails envoyés par l'onduleur
+  :0
+  * ^From: pulsar@adm\.crans\.org
+  ${PULSARDIR}/
+  
+  # Mails envoyés par le script qui détecte les changements dans la base LDAP
+  :0
+  * ^Subject:.*Surveillance modifications de la base LDAP
+  ${LDAPMODIFDIR}/
+  
+  # Mails envoyés lors d'une erreur sur la base de donnée sqlgrey
+  :0
+  * ^From: sqlgrey@crans\.org
+  ${SQLGREYDIR}/
+  
+  # Mails envoyés par backuppc
+  :0
+  * ^From: backuppc@crans\.org
+  ${BACKUPPCDIR}/
+  
+  # Souriez, vous êtes photographiés
+  :0
+  * ^From:.*cameras@crans\.org
+  {
+    # On trie par lieu de la caméra
+    :0
+    * ^Subject:.*0B
+    ${CAMERASDIR}.0B/
+    
+    :0
+    * ^Subject:.*0H
+    ${CAMERASDIR}.0H/
+  }
+  
+  # I'm in your mailbox, watching your commits
+  # Attention à bien filtrer git avant darcs parce que les mails git
+  # contiennent aussi le header X-DarcsInfo !
+  :0
+  * ^X-GitInfo
+  {
+    :0
+    * ^X-Mailer: /usr/scripts/utils/git-whatsnew
+    ${GITDIR}.whatsnew/
+    
+    :0
+    ${GITDIR}/
+  }
+  :0
+  * ^X-DarcsInfo
+  {
+    :0
+    * ^X-Mailer: Python Darcs Check
+    ${DARCSDIR}.whatsnew/
+    
+    :0
+    ${DARCSDIR}/
+  }
+  
+  # Tracker
+  :0
+  * ^X-Mailer:.*Redmine
+  ${TRACKERDIR}/
+  
+  # Messages sur la Freebox
+  :0
+  * ^From: telephonie.freebox@freetelecom.fr
+  ${FREEBOXDIR}/
+  
+  # Si il n'y pas de condition de tri, ça va dans le dossier Technique
+  :0
+  ${ROOTSDIR}/
+}
+
+
+#################################################################
+##         Mails envoyés sur des MLs mais par des bots         ##
+#################################################################
+# Il n'y jamais de dossier par défaut, le mail sera rattrapé
+# au moment de la gestion gobale des mailing-lists
+
+# Sur la ML disconnect@
+:0
+* ^List-Id:.*disconnect\.lists\.crans\.org
+{
+  # Statistiques d'upload
+  :0
+  * ^X-Mailer: /usr/scripts/surveillance/statistiques.py
+  ${STATUPLOADDIR}/
+  
+  :0
+  * ^Subject:.*fois.*en un mois
+  ${MULTIDECODIR}/
+}
+
+# Câblage demandé/effectué
+:0
+* ^X-Crans-Intranet: cablage
+${CABLAGEDIR}/
+
+# Sur la ML impression@
+:0
+* ^List-Id:.*impression\.lists\.crans\.org
+{
+  # Modification de solde
+  :0
+  * ^X-Mailer: modif_solde
+  ${LDAPSOLDEDIR}/
+  
+  # Informations de print_status
+  :0
+  * ^X-Mailer: /usr/scripts/impression/print_status.py
+  ${PRINTSTATUSDIR}/
+  
+  # Munin stock papier et toners
+  :0
+  * ^From: munin@crans\.org
+  ${MUNINIMPRESSIONDIR}/
+}
+
+# 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}/
+}
+
+#WIP# ###############################################################################
+#WIP# # ^^^^^^^ Classés le plus possible par ordre de spammage décroissant
+
+#WIP# # vvvvvvv Les MLs, à laisser en bas
+#WIP# ###############################################################################
+
+
+#################################################################
+##                   Gestion des cron perso                    ##
+#################################################################
+# Les Subjects des mails de (Ana)?Cron
+# sont de la forme "(Ana)?Cron <user@host>"
+# On parse pour récupérer le host et trier avec
+:0
+* ^(X-Cron-Env|From: Anacron)
+{
+  :0
+  * ^Subject:.*Cron <[^@>]+@\/[^>]+
+  {
+    # On prend garde à ne pas créer un sous-dossier
+    # si jamais le host contient un . ou un espace
+    HOST_=`echo "$MATCH" | sed 's/\(\.\| \)/_/g'`
+    :0
+    ${CRONPERSODIR}.${HOST_}/
+  }
+  
+  # Dans le cas (improbable) où le Subject de matche pas
+  :0
+  ${CRONPERSODIR}/
+}
+
+
+#################################################################
+##              Inclusion des règles personnelles              ##
+#################################################################
+#~# # Fichier de règles à personnaliser
+#~# INCLUDERC="${CONFIGDIR}/custom.normal.rules"
+
+#################################################################
+##                Gestion des mails de Mailman                 ##
+#################################################################
+# La ML mailman@ est un peu particulière
+:0
+* ^(List-Id:.*mailman\.|(To|Cc):.*mailman-(owner|bounces)@)lists\.crans\.org
+${MAILMANDIR}/
+
+
+#################################################################
+##                 Gestion des mailing-listes                  ##
+#################################################################
+# Ajouter à la suite vos propres règles pour les mailing-listes non gérées ici
+
+:0
+# On récupère tous les mails qui sont arrivés par l'intermédaire d'une ML
+* ^List-Id:.*\/<[^<>]+>$
+{
+  ML=$MATCH
+  ML=`echo "${ML}" | sed 's/<//;s/>//'`
+  
+  #################################################################
+  ##              Gestion des mailing-listes Cr@ns               ##
+  #################################################################
+  :0
+  * ^List-Id:.*lists\.crans\.org
+  {
+    # On veut ne garder que le nom de la ML sans le nom de domaine
+    ML=`echo "${ML}" | sed 's/\.lists\.crans\.org//'`
+    # 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/\(\.\| \)/_/g'`
+    
+    #################################################################
+    ##      Cas où la ML est une ML de membre actif du Cr@ns       ##
+    #################################################################
+    
+    # MLs publiques (au sens où il n'y a pas que des cranseux abonnés)
+    :0
+    * ? grep "^${ML}$" ${CONFIGDIR}/ML_MA_crans.administratif.public
+    ${CRANSADMINISTRATIFPUBLICDIR}.${ML_}/
+    
+    # MLS où il n'y a que des membres actifs abonnés
+    # (on peut y envoyer des informations privées)
+    :0
+    * ? grep "^${ML}$" ${CONFIGDIR}/ML_MA_crans.administratif.prive
+    ${CRANSADMINISTRATIFPRIVATEDIR}.${ML_}/
+    
+    # La ML federez@lists.crans.org va quand même dans le dossier FedeRez
+    :0
+    * ? echo "${ML}" | grep federez
+    ${FEDEREZDIR}.${ML_}/
+    
+    # La ML modérateurs va dans le dossier Surveillance
+    :0
+    * ^List-Id:.*moderateurs\.lists\.crans\.org
+    ${MODERATEURSDIR}/
+    
+    # La ML intranet-bugreport va dans le dossier Problèmes
+    :0
+    * ^List-Id:.*intranet-bugreport\.lists\.crans\.org
+    ${INTRANET1DIR}/
+    
+    # La ML nounou va dans le dossier Technique
+    :0
+    * ^List-Id:.*nounou\.lists\.crans\.org
+    ${NOUNOUDIR}/
+    
+    #################################################################
+    ##         Gestion des autres mailing-list (du campus)         ##
+    #################################################################
+    # MLs génériques du campus (des assos et d'autres random trucs)
+    :0
+    * ? grep "^${ML}$" ${CONFIGDIR}/ML_campus
+    ${MLCAMPUSDIR}.${ML_}/
+    
+    # MLs BDE
+    :0
+    * ? echo "${ML}" | grep bde
+    ${MLBDEDIR}.${ML_}/
+    
+    # MLs BDA
+    :0
+    * ? (grep "^${ML}$" ${CONFIGDIR}/ML_bda) || (echo "${ML}" | grep bda)
+    ${MLBDADIR}.${ML_}/
+    
+    # MLs SoNo
+    :0
+    * ? (grep "^${ML}$" ${CONFIGDIR}/ML_sono) || (echo "${ML}" | grep sono)
+    ${MLBDADIR}.${ML_}/
+    
+    # MLs Med
+    :0
+    * ? echo "${ML}" | grep med
+    ${MLMEDDIR}.${ML_}/
+    
+    # MLs SDA
+    :0
+    * ? echo "${ML}" | grep sda
+    ${MLSDADIR}.${ML_}/
+    
+    # MLs BDL
+    :0
+    * ? echo "${ML}" | egrep "(bdl|interludes)"
+    ${MLBDLDIR}.${ML_}/
+    
+    # MLs Gala
+    :0
+    * ? echo "${ML}" | egrep "(gala|geec)"
+    ${MLGALADIR}.${ML_}/
+    
+    # MLs des clubs
+    :0
+    * ? (grep "^${ML}$" ${CONFIGDIR}/ML_clubs) || (echo "${ML}" | egrep '^club-')
+    ${MLCLUBSDIR}.${ML_}/
+    
+    #################################################################
+    ##                  Gestion des MLs de promo                   ##
+    #################################################################
+    :0
+    * ? echo "${ML}" | egrep '^(ens-|a\.coeur)'
+    ${MLPROMODIR}.${ML_}/
+    
+    #################################################################
+    ##                    Gestion des MLs perso                    ##
+    #################################################################
+    :0
+    * ? grep "^${ML}$" ${CONFIGDIR}/ML_perso
+    ${MLPERSODIR}.${ML_}/
+    
+    # Si on est tombés sur un ML non-répertoriée
+    :0
+    ${MLCAMPUSDIR}.${MLFAILSUFFIX}.${ML_}/
+  }
+  
+  #################################################################
+  ##             Gestion des mailing-listes FedeRez              ##
+  #################################################################
+  # On veut ne garder que le nom de la ML sans le nom de domaine
+  ML=`echo "${ML}" | sed 's/\.lists\.federez\.net//'`
+  # 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/\(\.\| \)/_/g'`
+  
+  :0
+  * ^List-Id:.*lists.federez.net
+  {
+    :0
+    ${FEDEREZDIR}.${ML_}/
+  }
+  
+  #################################################################
+  ##              Gestion des autres mailing-listes              ##
+  #################################################################
+  # On récupère le nom de domaine et le nom de la ML
+  DOMAIN=`echo "${ML}" | sed 's/.*\.\([^\.]\+\)\.[^\.]\+$/\1/'`
+  # On ne sait jamais ce qu'on peut rencontrer…
+  DOMAIN_=`echo "${DOMAIN}" | sed 's/ /_/g'`
+  # 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'`
+  :0
+  ${MLDIR}.${DOMAIN_}.${ML_}/
+}
+
+#~# # Fichier de règles de faible priorité à personnaliser
+#~# INCLUDERC="${CONFIGDIR}/custom.final.rules"