1 ################################################################################
2 ### Still being tested. Use at your own risks… ###
3 ################################################################################
5 # .procmailrc générique mis à votre disposition
6 # par les gentils membres actifs du Cr@ns
7 # Vous pouvez l'utiliser, le redistribuer, le modifier à votre convenance.
8 # Des questions, des suggestions : {nounou,ca}@lists.crans.org
11 # Les sections commentées par #~# sont des features qui ne sont pas activées
12 # par défaut. Sentez-vous libre de les décommenter pour les utiliser.
14 # Attention : le path par défaut des fichiers de logs est $HOME/.procmail/logs
15 # Assurez-vous que le dossier en question existe avant d'utiliser ce .procmailrc
17 #------------------------------------------------------------------------------
18 # Ce fichier commence par une grosse section de commentaire qui donne un aperçu
19 # de l'arborescence de dossiers qui sera obtenue en utilisant ce .procmailrc.
20 # Les règles ne sont pas dans le même ordre, en effet, il est plus efficace
21 # de mettre en premier les règles qui sont le plus souvent vérifiées pour
22 # diminuer le temps moyen de traitement.
24 # Vous pouvez ajouter vos propres règles de tri sans modifier ce fichier,
25 # en effet, ce .procmailrc inclus trois autres fichiers de règles
26 # (pour l'instant commentés par #~#)
27 # Ils doivent être tous les trois dans ${CONFIGDIR}
28 # * Le premier, custom.high.rules contient des règles qui overrident tout
29 # le comportement ce .procmailrc,pour des mails qui doivent être classés
30 # sans autre condition.
31 # * Le deuxème, custom.normal.rules doit contenir la plupart de vos règles
32 # personnelles, il est géré après les mails envoyés par le Cr@ns mais avant
33 # le comportement par défaut des mailing-lists, ce qui vous permet d'en
34 # trier certaines selon un autre schéma
35 # * Le troisième, custom.final.rules est appliqué tout à la fin, il peut par
36 # exemple servir à définir un dossier par défaut autre que .INBOX
40 ################################################################################
41 ##### Commentaires #####
42 ################################################################################
44 # Les tags suivants expliquent quels membres actifs reçoivent quels mails :
45 # $: câbleur/imprimeur
53 ### /!\ pour cron, faire attention à ne pas envoyer les mails cron perso sur
54 ### zamok dans les dossiers cron !
56 ### pour les ml : faire des sous-dossiers bounces --> IDEA DROPPED
58 ### dans le main procmailrc : (ouais enfin finalement on met tout dans le même)
59 ### - le bidule pour trier les crons persos --> DONE
60 ### - le truc trop bien de Harry pour trier les ml du campus --> DONE
62 ### Multi-déco upload dans un autre dossier --> DONE
66 # ./|-[$*+BT] Administratif (le côté administratif : bot free !)
71 # ./| | |-[+B] dsi-crans
72 # ./| | |-[*+B] install-party
73 # ./| | |-[B] crans-crous
79 # ./| |-[$*+] respbats (bot free)
80 # ./| |-[$*+] impression (sans modif_solde, munin, print_status)
82 # ./| |-[+B] disconnect (sans les bots)
85 # ./|-[*+BF] Federez (bah, federez quoi !)
90 # ./| | |-[F] Debian updates
92 # ./| | |-[F] federezpasswords
94 # ./| | |-[F] Logcheck
96 # ./| | |-[F] Logwatch
103 # ./|-[$*+BM] Surveillance (on stalke, pour vérifier ce que font les autres)
105 # ./| |-[+] Irrelevant : logcheck
107 # ./| |-[+BM] modérateur
109 # ./| |-[+] ovh (connexions au manager)
111 # ./| |-[*+] caméras (à trier)
115 # ./| | |-[$*+] modif-solde
116 # ./| | |-[*+] modifications de la base ldap
118 # ./| |-[+] cranspasswords
121 # ./|-[*+] Monitoring (une machine fait-elle de la merde ?)
125 # ./| | |- trier dynamiquement par serveur !
129 # ./| | |- trier dynamiquement par serveur !
133 # ./| | |-[$*+] impression
137 # ./| | |-[+] changed ethernet address
138 # ./| | |-[+] flip-flop
139 # ./| | |-[+] new_activity
140 # ./| | |-[+] new_station
142 # ./| |-[+B] stats d'upload --> À vérifier que le X-Mailer marche
145 # ./|-[$*+] Problèmes (à regarder avant d'aller se coucher)
147 # ./| |-[*+] self-sloving
149 # ./| | |-[*+] SQL errors
154 # ./| | |-[+] intranet1
155 # ./| | |-[+] intranet2 (en fait, django en général)
156 # ./| | |-[*+] backuppc
158 # ./| |-[*+] attention (cron)
160 # ./| | |-[*+] Triés selon les cronjob souvent rencontrés,
161 # ./| | | listés dans le fichier cron.folders
166 # ./| | |-[*+] pulsar
170 # ./| |-[$*+] print_status
174 # ./| |-[B+] déco N fois en un mois
177 # ./|-[*+] Information (keep up to date)
179 # ./| |-[*+] apt-listchanges
181 # ./| |-[+] ovh (newsletters, factures)
183 # ./| |-[$*+] machines supprimées
185 # ./| |-[*+] git (commits)
187 # ./| | |-[*+] what's new
189 # ./| |-[*+] darcs (records)
191 # ./| | |-[*+] what's new
193 # ./| |-[+] bcfg2 (Serveurs non synchronisés avec bcfg2)
195 # ./| |-[+] inn (stats des servuers de news)
198 # ./|-[$*+B] Technique (les discussions et les trucs reliés)
204 # ./ |-[$*+] câblages à effectuer
211 ################################################################################
212 ##### Variables #####
213 ################################################################################
215 #################################################################
216 ## Variables d'environnement ##
217 #################################################################
218 # Path du dossier où sont rangés les mails
219 MAILDIR="${HOME}/Mail"
220 # Shell à utiliser pour exécuter des commandes
222 # Dossier contenant tout le garbage procmail-related
223 # (le .procmailrc lui-même est dans le home)
224 PROCMAILDIR="${HOME}/.procmail"
225 # Dossier où sont les fichiers de configuration supplémentaires pour procmail
226 CONFIGDIR="${PROCMAILDIR}/rc"
227 # Path du fichier de log de procmail
228 LOGFILE="${PROCMAILDIR}/logs/procmail.log"
231 #################################################################
232 ## Noms de dossiers ##
233 #################################################################
234 # /Attention à ne pas mettre de . ou d'espace au mauvais endroit…/
236 ### Dossiers personnels
237 ## Dossier pour ranger les mails de Cron
238 ## (ceux envoyés par un serveur Cr@ns seront rangés ailleurs)
243 # Spam reçu sur (usenet|news)@(crans.org|crans.ens-cachan.fr)
244 SPAMINNDIR="${SPAMDIR}.usenet"
247 ### Dossiers pour les MLs qui ne sont pas catchées par une autre règle
250 ## Dossier pour ranger les rappels de mots de passes envoyés par Mailman
251 RAPPELMDPDIR="${MLDIR}.rappels_mdp"
254 ### Dossiers pour les MLs du campus
255 MLCAMPUSDIR="${MLDIR}.Campus"
256 MLBDEDIR="${MLCAMPUSDIR}.BDE"
257 MLCLUBSDIR="${MLCAMPUSDIR}.Clubs"
258 MLMEDDIR="${MLCLUBSDIR}.Med"
259 MLBDLDIR="${MLCAMPUSDIR}.BDL"
260 MLBDADIR="${MLCAMPUSDIR}.BDA"
261 MLBDSDIR="${MLCAMPUSDIR}.BDS"
262 MLSDADIR="${MLCAMPUSDIR}.SDA"
263 MLGALADIR="${MLCAMPUSDIR}.Gala"
264 MLSONODIR="${MLCAMPUSDIR}.SoNo"
266 ## Dossier où atterrira une ML non-répertoriée
269 ### Dossier pour les MLs de promo
270 MLPROMODIR="${MLDIR}.Promo"
272 ### Dossier pour les MLs non répertoriées plus haut et non-MA-crans
273 MLPERSODIR="${MLDIR}.Divers"
275 ### Dossiers pour les Membres Actifs du Cr@ns
278 ## Dossiers de mailing lists
279 CRANSADMINISTRATIFDIR="${CRANSDIR}.Administratif"
280 CRANSADMINISTRATIFPUBLICDIR="${CRANSADMINISTRATIFDIR}.public"
281 CRANSADMINISTRATIFPRIVATEDIR="${CRANSADMINISTRATIFDIR}.prive"
283 ## Dossiers pour les mails de monitoring
284 MONITORINGDIR="${CRANSDIR}.Monitoring"
285 MONITDIR="${MONITORINGDIR}.Monit"
286 NAGIOSDIR="${MONITORINGDIR}.Nagios"
287 NAGIOSSWITCHSDIR="${NAGIOSDIR}.0-switchs"
288 ARPWATCHDIR="${MONITORINGDIR}.Arpwatch"
289 MUNINDIR="${MONITORINGDIR}.Munin"
290 MUNINIMPRESSIONDIR="${MUNINDIR}.Imprimante"
291 STATUPLOADDIR="${MONITORINGDIR}.Stats-upload"
293 ## Dossiers pour le mails concernant des "problèmes"
295 PROBLEMSDIR="${CRANSDIR}.Problems"
296 # Par ordre de gravité croissant
297 SELFSOLVINGDIR="${PROBLEMSDIR}.0-Self-solving"
298 SOFTDIR="${PROBLEMSDIR}.1-Soft"
299 WILDDIR="${PROBLEMSDIR}.2-Wild"
300 ARGHDIR="${PROBLEMSDIR}.3-Argh"
301 HUMANPROBLEMSDIR="${PROBLEMSDIR}.4-Human-made"
303 FTPDIR="${SELFSOLVINGDIR}.ftp"
304 SQLGREYDIR="${SELFSOLVINGDIR}.sql-errors"
305 BACKUPPCDIR="${SOFTDIR}.backuppc"
306 DJANGODIR="${SOFTDIR}.Django"
307 INTRANET2DIR="${SOFTDIR}.Intranet2"
308 INTRANET1DIR="${SOFTDIR}.intranet-bugreport"
309 CRONDIR="${WILDDIR}.cron"
310 NOLSDIR="${ARGHDIR}.nols"
311 PULSARDIR="${ARGHDIR}.pulsar"
312 MAILMANDIR="${HUMANPROBLEMSDIR}.Mailman"
313 PRINTSTATUSDIR="${HUMANPROBLEMSDIR}.print_status"
314 MULTIDECODIR="${HUMANPROBLEMSDIR}.multi-deco"
316 ## Dossier de surveillance (= surveillance d'actions humaines)
318 SURVEILLANCEDIR="${CRANSDIR}.Surveillance"
319 # Par ordre de sensibilité croissant
320 LOGCHECKDIR="${SURVEILLANCEDIR}.0-logcheck"
321 MODERATEURSDIR="${SURVEILLANCEDIR}.1-Moderateurs"
322 OVHMANAGERDIR="${SURVEILLANCEDIR}.2-OVH"
323 CAMERASDIR="${SURVEILLANCEDIR}.3-Cameras"
324 LDAPDIR="${SURVEILLANCEDIR}.4-LDAP"
325 LDAPSOLDEDIR="${LDAPDIR}.Solde"
326 LDAPMODIFDIR="${LDAPDIR}.Modification"
327 CRANSPASSWORDSDIR="${SURVEILLANCEDIR}.5-cranspasswords"
329 ## Dossier informatif (= pour se tenir au courant de ce qui se passe au Cr@ns)
331 INFORMATIONDIR="${CRANSDIR}.Information"
332 # Mails d'ovh autre que les notifications de connexion au manager
333 OVHDIR="${INFORMATIONDIR}.OVH"
335 APTLISTCHANGESDIR="${INFORMATIONDIR}.apt-listchanges"
336 # Machines supprimées pour chambre invalide
337 DELETEDMACHINES="${INFORMATIONDIR}.machines_supprimees"
339 GITDIR="${INFORMATIONDIR}.git"
340 DARCSDIR="${INFORMATIONDIR}.darcs"
341 # Mail envoyé quotidiennement par bcfg2 avec la liste des serveurs non synchro
342 BCFG2DIR="${INFORMATIONDIR}.bcfg2"
343 # Statistiques des serveurs de news
344 INNDIR="${INFORMATIONDIR}.inn"
346 ## Dossier de discussion techniques
348 TECHNIQUEDIR="${CRANSDIR}.Technique"
349 # Mails de roots@ non catchées avant
350 ROOTSDIR="${TECHNIQUEDIR}.roots"
351 # Mails de câblages demandé/effectué
352 CABLAGEDIR="${TECHNIQUEDIR}.Cablages"
354 TRACKERDIR="${TECHNIQUEDIR}.Tracker"
355 # Mails de la ML nounou
356 NOUNOUDIR="${TECHNIQUEDIR}.Nounou"
357 # Messages laissés sur la Freebox
358 FREEBOXDIR="${TECHNIQUEDIR}.Freebox"
359 # Dossier où atterriront les mails de root@ non triés
360 ROOTDEFAULTDIR="${TECHNIQUEDIR}.root"
362 ### Dossier racine pour Federez
363 FEDEREZDIR=".FedeRez"
364 FEDEREZMONITDIR="${FEDEREZDIR}.Monit"
365 FEDEREZADMINDIR="${FEDEREZDIR}.admin"
366 FEDEREZLOGWATCHDIR="${FEDEREZADMINDIR}.Logwatch"
367 FEDEREZLOGCHECKDIR="${FEDEREZADMINDIR}.Logcheck"
368 FEDEREZDEBIANDIR="${FEDEREZADMINDIR}.Debian-updates"
369 FEDEREZPASSWORDSDIR="${FEDEREZADMINDIR}.federezpasswords"
370 FEDEREZOVHDIR="${FEDEREZADMINDIR}.OVH"
374 ################################################################################
376 ################################################################################
378 # Patch pour traiter les mails qui ont été
379 # reçus avant le 30/06/13, car certaines règles de tri du .procmailrc
380 # n'étaient pas encore valables à l'époque.
381 # très utile si on veut retrier tous ses mails
382 INCLUDERC="${CONFIGDIR}/retrocompatibility_patch.rules"
384 # Fichier de règles prioritaires à personnaliser
385 INCLUDERC="${CONFIGDIR}/custom.high.rules"
387 #################################################################
388 ## Gestion des mails d'Arpwatch ##
389 #################################################################
391 * ^From:.*arpwatch@crans\.org
393 # On trie les différents types de mails d'Arpwatch,
394 # en faisant attention aux . et aux espaces après avoir éliminé
395 # tout ce qui se trouve après " (".
399 TYPE=`echo $MATCH | sed 's/ (.*//;s/\( \|\.\)/_/g;'`
401 ${ARPWATCHDIR}.${TYPE}/
409 #################################################################
410 ## Gestion des mails de Monit ##
411 #################################################################
413 # Les mails de Monit à propos du serveur A sont envoyés dans le dossier
414 # ${MONITDIR}.A/ si le dossier n'existe pas, il est créé mais il
415 # faut encore s'y abonner...
417 * ^(X-Mailer|User-Agent):.*monit
419 # Avant de tester les hostnames Cr@ns, règle spéciale utile pour
420 # certains admin de FedeRez
422 * ^To: federez-monit@
426 * ^Subject:.*monit \/[^ \.]+
427 ${MONITDIR}.${MATCH}/
429 # Dossier de Monit par défaut, si Monit se met à envoyer d'autres mails
435 #################################################################
436 ## Gestion des mails de Nagios ##
437 #################################################################
439 # Les mails de Nagios à propos du serveur A sont envoyés dans le dossier
440 # ${NAGIOSDIR}.A/ si le dossier n'existe pas, il est créé mais il
441 # faut encore s'y abonner
443 * ^(From: nagios@crans\.org|User-Agent:.*nagios)
445 # Tous les switchs vont dans le dossier ${NAGIOSSWITCH}
447 * ^Subject:.*Alert: bat[^/]+-
450 # Chaque serveur a son dossier
452 * ^Subject:.*Alert: \/[^/\.]+
453 ${NAGIOSDIR}.${MATCH}/
455 # Si l'envie prenait à Nagios de raconter un peu plus sa vie
461 #################################################################
462 ## Gestion des mails de Cron ##
463 #################################################################
465 # Attention, si on enlève la ligne qui filtre sur le To:, on catche
466 # aussi tous les mails Cron qui ne sont pas envoyés par un serveur Cr@ns
468 * ^To:.*(roots?|postgres|www-data|list)@crans\.org
469 * ^(X-Cron-Env|From: Anacron)
471 # Par défaut, on ne trie pas les mails de Cron, pensez à décommenter
472 # le INCLUDERC (et à copier le fichier complémentaire) pour les trier
473 INCLUDERC=${CONFIGDIR}/cron.rules
480 #################################################################
481 ## Gestion des mails de root@crans.org ##
482 #################################################################
484 # Statistiques du serveur de news
485 # Désolidarisé du bloc root@crans.org pour séparer les spams
486 # sans qu'ils tombent dans ${ROOTDEFAULTDIR}
488 * ^To:.*(usenet|news)@(crans\.org|crans\.ens-cachan\.fr)
490 # L'intérêt c'est que plein de spam arrive sur ces addresses
491 # et seules les stats d'inn sont censées y arriver.
492 # Donc on peut bazarder tout ce qui n'est pas stat au Spam
494 * ^From: news@crans.org
501 # On matche tous les alias de root@crans.org
503 * ^(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|crans\.ens-cachan\.fr)
507 * ^From:.*logcheck@crans\.org
510 # Mails envoyés par munin quand il trouve qu'un graphe sort des limites
512 * ^From: munin@crans\.org
515 # Mails envoyés en cas d'erreur de synchronisation du ftp
517 * ^From: mirror@crans\.org
520 # Mails envoyés en cas d'erreur sur l'intranet2
522 * ^Subject: \[Intranet2 Cr@ns\]
525 # Mails envoyés en cas d'une autre erreur Django
527 * ^Subject: \[Django\]
530 # Mails envoyés lors de la modification d'un fichier de mot de passe
532 * ^X-Mailer: cranspasswords
533 ${CRANSPASSWORDSDIR}/
535 # Mails envoyés par OVH…
537 * ^From:.*support@ovh\.com
539 # …lors d'une connexion au manager
541 * ^X-Ovh-Template: nic/fr/loginNotification.model
544 # Pour autre chose (facture, newsletter)
549 # Mail envoyés par apt-listchanges lors d'une mise à jour
551 * ^Subject:.*apt-listchanges
552 ${APTLISTCHANGESDIR}/
554 # Tout ce qui traîne sur root et qui n'est pas catché par quelque chose
560 #################################################################
561 ## Gestion des mails de roots@crans.org ##
562 #################################################################
565 * ^(To|Cc|List-Id):.*roots(@|\.lists\.)crans\.org
567 # Il y a aussi des apt-listchanges sur roots@
569 * ^Subject:.*apt-listchanges
570 ${APTLISTCHANGESDIR}/
572 # Mails envoyés par la baie de disques
574 * ^From: nols@crans\.org
577 # Mails envoyés par l'onduleur
579 * ^From: pulsar@adm\.crans\.org
582 # Mails envoyés par le script qui détecte les changements dans la base LDAP
584 * ^Subject:.*Surveillance modifications de la base LDAP
587 # Mails envoyés lors d'une erreur sur la base de donnée sqlgrey
589 * ^From: sqlgrey@crans\.org
592 # Mails envoyés par backuppc
594 * ^From: backuppc@crans\.org
597 # Souriez, vous êtes photographiés
599 * ^From:.*cameras@crans\.org
601 # On trie par lieu de la caméra
611 # I'm in your mailbox, watching your commits
612 # Attention à bien filtrer git avant darcs parce que les mails git
613 # contiennent aussi le header X-DarcsInfo !
618 * ^X-Mailer: /usr/scripts/utils/git-whatsnew
628 * ^X-Mailer: Python Darcs Check
629 ${DARCSDIR}.whatsnew/
637 * ^X-Mailer:.*Redmine
640 # Messages sur la Freebox
642 * ^From: telephonie.freebox@freetelecom.fr
645 # Serveurs non synchronisés avec bcfg2
647 * ^X-Mailer: bcfg2-reports
650 # Si il n'y pas de condition de tri, ça va dans le dossier Technique
656 #################################################################
657 ## Mails envoyés sur des MLs mais par des bots ##
658 #################################################################
659 # Il n'y jamais de dossier par défaut, le mail sera rattrapé
660 # au moment de la gestion gobale des mailing-lists
662 # Sur la ML disconnect@
664 * ^List-Id:.*disconnect\.lists\.crans\.org
666 # Statistiques d'upload
668 * ^X-Mailer: /usr/scripts/surveillance/statistiques.py
672 * ^Subject:.*fois.*en un mois
676 # Câblage demandé/effectué
678 * ^X-Crans-Intranet: cablage
681 # Sur la ML impression@
683 * ^List-Id:.*impression\.lists\.crans\.org
685 # Modification de solde
687 * ^X-Mailer: modif_solde
690 # Informations de print_status
692 * ^X-Mailer: /usr/scripts/impression/print_status.py
695 # Munin stock papier et toners
697 * ^From: munin@crans\.org
698 ${MUNINIMPRESSIONDIR}/
701 # Sur la ML respbats@
703 * ^List-Id:.*respbats\.lists\.crans\.org
705 # Machines supprimées pour chambre invalide
707 * ^X-Mailer: /usr/scripts/gestion/chambres_vides.py
711 #WIP# ###############################################################################
712 #WIP# # ^^^^^^^ Classés le plus possible par ordre de spammage décroissant
714 #WIP# # vvvvvvv Les MLs, à laisser en bas
715 #WIP# ###############################################################################
718 #################################################################
719 ## Gestion des cron perso ##
720 #################################################################
721 # Les Subjects des mails de (Ana)?Cron
722 # sont de la forme "(Ana)?Cron <user@host>"
723 # On parse pour récupérer le host et trier avec
725 * ^(X-Cron-Env|From: Anacron)
728 * ^Subject:.*Cron <[^@>]+@\/[^>]+
730 # On prend garde à ne pas créer un sous-dossier
731 # si jamais le host contient un . ou un espace
732 HOST_=`echo "$MATCH" | sed 's/\(\.\| \)/_/g'`
734 ${CRONPERSODIR}.${HOST_}/
737 # Dans le cas (improbable) où le Subject de matche pas
743 #################################################################
744 ## Inclusion des règles personnelles ##
745 #################################################################
746 # Fichier de règles à personnaliser
747 INCLUDERC="${CONFIGDIR}/custom.normal.rules"
749 #################################################################
750 ## Gestion des mails de Mailman ##
751 #################################################################
752 # La ML mailman@ est un peu particulière
754 * ^(List-Id:.*mailman\.|(To|Cc):.*mailman-(owner|bounces)@)lists\.crans\.org
757 * ^Subject:.*Rappel_pour_les_abonnements_aux_listes
765 #################################################################
766 ## Gestion des mailing-listes ##
767 #################################################################
768 # Ajouter à la suite vos propres règles pour les mailing-listes non gérées ici
771 # On récupère tous les mails qui sont arrivés par l'intermédaire d'une ML
772 * ^List-Id:.*\/<[^<>]+>$
775 ML=`echo "${ML}" | sed 's/<//;s/>//'`
777 #################################################################
778 ## Gestion des mailing-listes Cr@ns ##
779 #################################################################
781 * ^List-Id:.*lists\.crans\.org
783 # On veut ne garder que le nom de la ML sans le nom de domaine
784 ML=`echo "${ML}" | sed 's/\.lists\.crans\.org//'`
785 # On prend garde à ne pas créer un sous-dossier
786 # si jamais le List-Id contient un . ou un espace
787 ML_=`echo "${ML}" | sed 's/\(\.\| \)/_/g'`
789 #################################################################
790 ## Cas où la ML est une ML de membre actif du Cr@ns ##
791 #################################################################
793 # MLs publiques (au sens où il n'y a pas que des cranseux abonnés)
795 * ? grep "^${ML}$" ${CONFIGDIR}/ML_MA_crans.administratif.public
796 ${CRANSADMINISTRATIFPUBLICDIR}.${ML_}/
798 # MLS où il n'y a que des membres actifs abonnés
799 # (on peut y envoyer des informations privées)
801 * ? grep "^${ML}$" ${CONFIGDIR}/ML_MA_crans.administratif.prive
802 ${CRANSADMINISTRATIFPRIVATEDIR}.${ML_}/
804 # La ML federez@lists.crans.org va quand même dans le dossier FedeRez
806 * ? echo "${ML}" | grep federez
807 ${FEDEREZDIR}.${ML_}/
809 # La ML modérateurs va dans le dossier Surveillance
811 * ^List-Id:.*moderateurs\.lists\.crans\.org
814 # La ML intranet-bugreport va dans le dossier Problèmes
816 * ^List-Id:.*intranet-bugreport\.lists\.crans\.org
819 # La ML nounou va dans le dossier Technique
821 * ^List-Id:.*nounou\.lists\.crans\.org
824 #################################################################
825 ## Gestion des autres mailing-list (du campus) ##
826 #################################################################
827 # MLs génériques du campus (des assos et d'autres random trucs)
829 * ? grep "^${ML}$" ${CONFIGDIR}/ML_campus
830 ${MLCAMPUSDIR}.${ML_}/
834 * ? echo "${ML}" | grep bde
839 * ? (grep "^${ML}$" ${CONFIGDIR}/ML_bda) || (echo "${ML}" | grep bda)
844 * ? (grep "^${ML}$" ${CONFIGDIR}/ML_sono) || (echo "${ML}" | grep sono)
849 * ? echo "${ML}" | grep med
854 * ? echo "${ML}" | grep sda
859 * ? echo "${ML}" | egrep "(bdl|interludes)"
864 * ? echo "${ML}" | egrep "bds"
869 * ? echo "${ML}" | egrep "(gala|geec)"
874 * ? (grep "^${ML}$" ${CONFIGDIR}/ML_clubs) || (echo "${ML}" | egrep '^club-')
875 ${MLCLUBSDIR}.${ML_}/
877 #################################################################
878 ## Gestion des MLs de promo ##
879 #################################################################
881 * ? echo "${ML}" | egrep '^(ens-|a\.coeur)'
882 ${MLPROMODIR}.${ML_}/
884 #################################################################
885 ## Gestion des MLs perso ##
886 #################################################################
888 * ? grep "^${ML}$" ${CONFIGDIR}/ML_perso
889 ${MLPERSODIR}.${ML_}/
891 # Si on est tombés sur un ML non-répertoriée
893 ${MLCAMPUSDIR}.${MLFAILSUFFIX}.${ML_}/
896 #################################################################
897 ## Gestion des mailing-listes FedeRez ##
898 #################################################################
900 * ^List-Id:.*federez.net
902 # On veut ne garder que le nom de la ML sans le nom de domaine
903 ML=`echo "${ML}" | sed 's/\(\.lists\)\?\.federez\.net//'`
904 # On prend garde à ne pas créer un sous-dossier
905 # si jamais le List-Id contient un . ou un espace
906 ML_=`echo "${ML}" | sed 's/\(\.\| \)/_/g'`
908 # Gestion de la ML admin
913 * ^Subject:.*Logwatch for.*federez\.net
914 ${FEDEREZLOGWATCHDIR}/
918 ${FEDEREZLOGCHECKDIR}/
921 * ^Subject:.*Debian package update
925 * ^From:.*federezpasswords
926 ${FEDEREZPASSWORDSDIR}/
929 * ^From:.*support@ovh.com
937 ${FEDEREZDIR}.${ML_}/
940 #################################################################
941 ## Gestion des autres mailing-listes ##
942 #################################################################
943 # On récupère le nom de domaine et le nom de la ML
944 DOMAIN=`echo "${ML}" | sed 's/.*\.\([^\.]\+\)\.[^\.]\+$/\1/'`
945 # On ne sait jamais ce qu'on peut rencontrer…
946 DOMAIN_=`echo "${DOMAIN}" | sed 's/ /_/g'`
947 # On prend garde à ne pas créer un sous-dossier
948 # si jamais le List-Id contient un . ou un espace
949 ML_=`echo "${ML}" | sed 's/\.[^\.]\+\.[^\.]\+$//;s/\.lists\?$//;s/\(\.\| \)/_/g'`
951 ${MLDIR}.${DOMAIN_}.${ML_}/
954 # Fichier de règles de faible priorité à personnaliser
955 INCLUDERC="${CONFIGDIR}/custom.final.rules"