270 lines
9.3 KiB
Nix
270 lines
9.3 KiB
Nix
{config, pkgs, lib, ...}:
|
|
let
|
|
filterToString = (m: f:
|
|
if builtins.isString f
|
|
then "(${m},contains,${f})"
|
|
else if builtins.isList f
|
|
then "OR "+(lib.strings.concatStringsSep " OR " (builtins.map (filterToString m) f))
|
|
else builtins.throw "Wrong filter content"
|
|
);
|
|
convertFilters = (filz: builtins.map (fil: {
|
|
enabled = true;
|
|
type = "17";
|
|
name = "Moving emails to folder "+fil.folder;
|
|
action = "Move to folder";
|
|
actionValue = "imap://mysaa%40hadoly.fr@imap.hadoly.fr/"+(fil.folderEscaped or fil.folder);
|
|
condition = filterToString (fil.matching or "all addresses") fil.email;
|
|
}) filz);
|
|
restFilter = (out: {
|
|
enabled = true;
|
|
type = "17";
|
|
name = "Moving other emails to "+out;
|
|
action = "Move to folder";
|
|
actionValue = "imap://mysaa%40hadoly.fr@imap.hadoly.fr/INBOX/"+out;
|
|
condition = "ALL";
|
|
});
|
|
rules = [
|
|
{
|
|
folder = "Assos/AliENS";
|
|
email = [
|
|
"aliens.discussion@ens-lyon.fr"
|
|
"aliens.discussion@listes.ens-lyon.fr"
|
|
"azertoutes@listes.ens-lyon.fr"
|
|
];
|
|
}
|
|
{
|
|
folder = "Assos/AliENS/CA";
|
|
email = [
|
|
"aliens.ca@ens-lyon.fr"
|
|
"aliens.ca@listes.ens-lyon.fr"
|
|
"aliens.contact@ens-lyon.fr"
|
|
"aliens.contact@listes.ens-lyon.fr"
|
|
];
|
|
}
|
|
{
|
|
folder = "Assos/BuL/Murders";
|
|
email = [
|
|
"bul.murder.decouverte@ens-lyon.fr"
|
|
"bul.murder.decouverte@listes.ens-lyon.fr"
|
|
"bul.murder@ens-lyon.fr"
|
|
"bul.murder@listes.ens-lyon.fr"
|
|
];
|
|
}
|
|
{
|
|
folder = "Assos/Démesures";
|
|
folderEscaped = "Assos/D&AOk-mesures";
|
|
email = [
|
|
"demesures@ens-lyon.fr"
|
|
"demesures@listes.ens-lyon.fr"
|
|
];
|
|
}
|
|
{
|
|
folder = "Assos/Diffs";
|
|
email = [
|
|
"fede.diffusion@ens-lyon.fr"
|
|
"fede.diffusion@listes.ens-lyon.fr"
|
|
"info.elus.etudiants@ens-lyon.fr"
|
|
"info.elus.etudiants@listes.ens-lyon.fr"
|
|
"bde.diffusion@ens-lyon.fr"
|
|
"bde.diffusion@listes.ens-lyon.fr"
|
|
"bul.diffusion@ens-lyon.fr"
|
|
"bul.diffusion@listes.ens-lyon.fr"
|
|
"enverts.diffusion@ens-lyon.fr"
|
|
"enverts.diffusion@listes.ens-lyon.fr"
|
|
"trensistor.diffusion@ens-lyon.fr"
|
|
"trensistor.diffusion@listes.ens-lyon.fr"
|
|
"aliens.diffusion@ens-lyon.fr"
|
|
"aliens.diffusion@listes.ens-lyon.fr"
|
|
"bde.foyer.diffusion@ens-lyon.fr"
|
|
"bde.foyer.diffusion@listes.ens-lyon.fr"
|
|
"bde.kfet.diffusion@ens-lyon.fr"
|
|
"bde.kfet.diffusion@listes.ens-lyon.fr"
|
|
"as-ensl@ens-lyon.fr"
|
|
"as-ensl@listes.ens-lyon.fr"
|
|
"bde.foyer@ens-lyon.fr"
|
|
"bde.foyer@listes.ens-lyon.fr"
|
|
"asset.diffusion@ens-lyon.fr"
|
|
"asset.diffusion@listes.ens-lyon.fr"
|
|
"echarde.diffusion@framalistes.org"
|
|
"echarde.membres@framalistes.org"
|
|
"enverts.enselle@ens-lyon.fr"
|
|
"enverts.enselle@listes.ens-lyon.fr"
|
|
"enverts.engraines.descartes@ens-lyon.fr"
|
|
"enverts.engraines.monod@listes.ens-lyon.fr"
|
|
"discourse+noreply@openstreetmap.fr"
|
|
"grrrndzero@grrrndzero.org"
|
|
"info@cinefac.fr"
|
|
"arcensiel.diffusion@ens-lyon.fr"
|
|
"arcensiel.diffusion@listes.ens-lyon.fr"
|
|
"bde.absurde@ens-lyon.fr"
|
|
"bde.absurde@listes.ens-lyon.fr"
|
|
"presences.diffusion@ens-lyon.fr"
|
|
"presences.diffusion@listes.ens-lyon.fr"
|
|
];
|
|
}
|
|
{
|
|
folder = "Assos/ENSeigner";
|
|
email = [
|
|
"enseigner.tuteurices@ens-lyon.fr"
|
|
"enseigner.tuteurices@listes.ens-lyon.fr"
|
|
];
|
|
}
|
|
{
|
|
folder = "Assos/ENvertS";
|
|
email = [
|
|
"enverts.bureau@ens-lyon.fr"
|
|
"enverts.bureau@listes.ens-lyon.fr"
|
|
];
|
|
}
|
|
{
|
|
folder = "Assos/ENvertS/Framavox";
|
|
email = [
|
|
"notifications@framavox.org"
|
|
];
|
|
}
|
|
{
|
|
folder = "Assos/Fédé";
|
|
folderEscaped = "Assos/F&AOk-d&AOk-";
|
|
email = [
|
|
"fede.ca@ens-lyon.fr"
|
|
"fede.ca@listes.ens-lyon.fr"
|
|
];
|
|
}
|
|
{
|
|
folder = "Assos/Fédé/Art Total";
|
|
folderEscaped = "Assos/F&AOk-d&AOk-/Art Total";
|
|
email = [
|
|
"fede.art-total@ens-lyon.fr"
|
|
"fede.art-total@listes.ens-lyon.fr"
|
|
];
|
|
}
|
|
{
|
|
folder = "Assos/Fédé/Bureau";
|
|
folderEscaped = "Assos/F&AOk-d&AOk-/Bureau";
|
|
email = [
|
|
"federation@ens-lyon.fr"
|
|
"federation@listes.ens-lyon.fr"
|
|
"fede.communications@ens-lyon.fr"
|
|
];
|
|
}
|
|
{
|
|
folder = "Assos/Fédé/Informatique";
|
|
folderEscaped = "Assos/F&AOk-d&AOk-/Informatique";
|
|
email = [
|
|
"fede.informatique@ens-lyon.fr"
|
|
"fede.informatique@listes.ens-lyon.fr"
|
|
];
|
|
}
|
|
|
|
{
|
|
folder = "Assos/Fédé/Juridique";
|
|
folderEscaped = "Assos/F&AOk-d&AOk-/Juridique";
|
|
email = [
|
|
"fede.juridique@ens-lyon.fr"
|
|
"fede.juridique@listes.ens-lyon.fr"
|
|
];
|
|
}
|
|
{
|
|
folder = "Assos/Modération";
|
|
folderEscaped = "Assos/Mod&AOk-ration";
|
|
email = [
|
|
"sympa@listes.ens-lyon.fr"
|
|
"sympa-request@listes.ens-lyon.fr"
|
|
];
|
|
}
|
|
{
|
|
folder = "Assos/Modération";
|
|
folderEscaped = "Assos/Mod&AOk-ration";
|
|
email = [
|
|
"sympa@listes.ens-lyon.fr"
|
|
];
|
|
matching = "\\\"reply-to\\\"";
|
|
}
|
|
{
|
|
folder = "Assos/tous-spam";
|
|
email = [
|
|
"tous.ens@ens-lyon.fr"
|
|
"tous.ens@listes.ens-lyon.fr"
|
|
"tous.culture@ens-lyon.fr"
|
|
"tous.culture@listes.ens-lyon.fr"
|
|
"tous.manifestations.scientifiques@ens-lyon.fr"
|
|
"tous.manifestations.scientifiques@listes.ens-lyon.fr"
|
|
"tous.etudiants@ens-lyon.fr"
|
|
"tous.etudiants@listes.ens-lyon.fr"
|
|
"tous.normaliens-eleves@ens-lyon.fr"
|
|
"tous.normaliens-eleves@listes.ens-lyon.fr"
|
|
"culture@ens-lyon.fr"
|
|
"culture@listes.ens-lyon.fr"
|
|
"information.patrimoine@ens-lyon.fr"
|
|
"information.patrimoine@listes.ens-lyon.fr"
|
|
"tous.transition.ecologique@ens-lyon.fr"
|
|
"tous.transition.ecologique@listes.ens-lyon.fr"
|
|
"manifestations.ife@ens-lyon.fr"
|
|
"manifestations.ife@listes.ens-lyon.fr"
|
|
"cercc@ens-lyon.fr"
|
|
"cercc@listes.ens-lyon.fr"
|
|
"info.syndicat.cgt@ens-lyon.fr"
|
|
"info.syndicat.cgt@listes.ens-lyon.fr"
|
|
"info.syndicat.sud@ens-lyon.fr"
|
|
"info.syndicat.sud@listes.ens-lyon.fr"
|
|
"info.syndicat.cfdt@ens-lyon.fr"
|
|
"info.syndicat.cfdt@listes.ens-lyon.fr"
|
|
"info.syndicat.snesup-fsu@ens-lyon.fr"
|
|
"info.syndicat.snesup-fsu@listes.ens-lyon.fr"
|
|
"info.syndicat.sud@ens-lyon.fr"
|
|
"info.syndicat.sud@listes.ens-lyon.fr"
|
|
"newsletter@national.lescrous.fr"
|
|
"infos@national.lescrous.fr"
|
|
];
|
|
}
|
|
{
|
|
folder = "Notif";
|
|
email = [
|
|
"nepasrepondre@credit-cooperatif.coop"
|
|
"noreply@github.com"
|
|
"no-reply@twitch.tv"
|
|
"ne_pas_repondre@sfr.fr"
|
|
"expiry@letsencrypt.org"
|
|
"info@mail.sncfconnect.com"
|
|
"service@paypal.fr"
|
|
"purchase-noreply@twitch.tv"
|
|
"no-reply@doctolib.fr"
|
|
"no-reply@canva.com"
|
|
"notifications@transifex.com"
|
|
"ne-pas-repondre@inscriptionelectorale.service-public.fr"
|
|
"noreply@steampowered.com"
|
|
"noreply@connect.sncf"
|
|
"no-reply@spotify.com"
|
|
"messagerie.leboncoin.fr"
|
|
"no.reply@leboncoin.fr"
|
|
"nepasrepondre-filesender@renater.fr"
|
|
"gitlab@aliens-lyon.fr"
|
|
"postman@ulule.com"
|
|
"no-reply@accounts.google.com"
|
|
"notifications@discord.com"
|
|
"help@acct.epicgames.com"
|
|
"no-reply+framateam@framasoft.org"
|
|
];
|
|
}
|
|
{
|
|
folder = "Etudes";
|
|
email = [
|
|
"types-announce@lists.seas.upenn.edu"
|
|
"types-announce@LISTS.SEAS.UPENN.EDU"
|
|
"categories@mq.edu.au"
|
|
"ice@framalistes.org"
|
|
"cashreadinggroup@listes.ens-lyon.fr"
|
|
];
|
|
}
|
|
];
|
|
in {
|
|
home-manager.users.mysaa.accounts.email.accounts = {
|
|
personal.thunderbird.messageFilters = convertFilters rules ++ [ (restFilter "s@nc") ];
|
|
ens.thunderbird.messageFilters = convertFilters rules ++ [ (restFilter "ENS-Lyon") ];
|
|
junk.thunderbird.messageFilters = convertFilters rules ++ [ (restFilter "q@nc") ];
|
|
google.thunderbird.messageFilters = convertFilters rules ++ [ (restFilter "Google") ];
|
|
ecloud.thunderbird.messageFilters = convertFilters rules ++ [ (restFilter "ECloud") ];
|
|
hadoly.thunderbird.messageFilters = [ (restFilter "Hadoly") ];
|
|
};
|
|
}
|