[thunderbird] WIP: Declarative extensions

This commit is contained in:
Tibo De Peuter 2025-10-30 19:56:57 +01:00
parent 48463104ab
commit 99ae637b8c
Signed by: tdpeuter
GPG key ID: 38297DE43F75FFE2

View file

@ -3,6 +3,9 @@
let let
cfg = config.sisyphus.users.tdpeuter; cfg = config.sisyphus.users.tdpeuter;
user = config.users.users.tdpeuter.name; user = config.users.users.tdpeuter.name;
profile = "tdpeuter";
signatures = { signatures = {
default = '' default = ''
Met vriendelijke groeten Met vriendelijke groeten
@ -25,95 +28,108 @@ let
}; };
in { in {
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
home-manager.users.tdpeuter = lib.mkIf config.sisyphus.programs.home-manager.enable { home-manager.users."${user}" = lib.mkIf config.sisyphus.programs.home-manager.enable {
accounts.email.accounts = { accounts = {
Telenet = { calendar.accounts = {
address = "tibo.depeuter@telenet.be"; Nextcloud = {
userName = "tibo.depeuter@telenet.be"; primary = true;
imap = { remote = {
host = "imap.telenet.be"; type = "caldav";
port = 993; url = "https://cloud.depeuter.dev/remote.php/dav";
tls.enable = true; userName = "tdpeuter";
};
}; };
smtp = { };
host = "smtp.telenet.be";
port = 587; email.accounts = {
tls = { Telenet = {
address = "tibo.depeuter@telenet.be";
userName = "tibo.depeuter@telenet.be";
imap = {
host = "imap.telenet.be";
port = 993;
tls.enable = true;
};
smtp = {
host = "smtp.telenet.be";
port = 587;
tls = {
enable = true;
useStartTls = true;
};
};
realName = config.users.users.tdpeuter.description;
signature = {
showSignature = "append";
text = signatures.default;
};
primary = true;
thunderbird = {
enable = true; enable = true;
useStartTls = true; settings = id: {
"mail.identity.id_${id}.htmlSigText" = signatures.default;
};
}; };
}; };
UGent = {
flavor = "outlook.office365.com";
address = "tibo.depeuter@ugent.be";
realName = config.users.users.tdpeuter.description; realName = config.users.users.tdpeuter.description;
signature = { signature = {
showSignature = "append"; showSignature = "append";
text = signatures.default; text = signatures.academic;
}; };
primary = true; thunderbird = {
thunderbird = { enable = true;
enable = true; settings = id: {
settings = id: { "mail.server.server_${id}.authMethod" = 10;
"mail.identity.id_${id}.htmlSigText" = signatures.default; "mail.smtpserver.smtp_${id}.authMethod" = 10;
"mail.identity.id_${id}.htmlSigText" = signatures.academic;
# Allow PGP
"mail.identity.id_${id}.openpgp_key_id" = "9B11F5243089DB5B"; # Your 'master' key
"mail.identity.id_${id}.attachPgpKey" = true;
};
}; };
}; };
}; Gmail = {
UGent = { flavor = "gmail.com";
flavor = "outlook.office365.com"; address = "tibo.depeuter@gmail.com";
address = "tibo.depeuter@ugent.be";
realName = config.users.users.tdpeuter.description; realName = config.users.users.tdpeuter.description;
signature = { signature = {
showSignature = "append"; showSignature = "append";
text = signatures.academic; text = signatures.default;
};
thunderbird = {
enable = true;
settings = id: {
"mail.server.server_${id}.authMethod" = 10;
"mail.smtpserver.smtp_${id}.authMethod" = 10;
"mail.identity.id_${id}.htmlSigText" = signatures.academic;
# Allow PGP
"mail.identity.id_${id}.openpgp_key_id" = "9B11F5243089DB5B"; # Your 'master' key
"mail.identity.id_${id}.attachPgpKey" = true;
}; };
}; thunderbird = {
}; enable = true;
Gmail = { settings = id: {
flavor = "gmail.com"; "mail.identity.id_${id}.htmlSigText" = signatures.default;
address = "tibo.depeuter@gmail.com"; };
realName = config.users.users.tdpeuter.description;
signature = {
showSignature = "append";
text = signatures.default;
};
thunderbird = {
enable = true;
settings = id: {
"mail.identity.id_${id}.htmlSigText" = signatures.default;
}; };
}; };
MrFortem = {
flavor = "gmail.com";
address = "fortemfiducia@gmail.com";
}; realName = "Fortem Fiducia";
MrFortem = { signature = {
flavor = "gmail.com"; showSignature = "append";
address = "fortemfiducia@gmail.com"; text = signatures.MrFortem;
};
realName = "Fortem Fiducia"; thunderbird = {
signature = { enable = true;
showSignature = "append"; settings = id: {
text = signatures.MrFortem; "mail.server.server_${id}.directory" = ".thunderbird/tdpeuter/ImapMail/imap.gmail.com-mrfortem";
}; "mail.server.server_${id}.directory-rel" = "[ProfD]ImapMail/imap.gmail.com-mrfortem";
"mail.identity.id_${id}.htmlSigText" = signatures.alias;
thunderbird = { };
enable = true;
settings = id: {
"mail.server.server_${id}.directory" = ".thunderbird/tdpeuter/ImapMail/imap.gmail.com-mrfortem";
"mail.server.server_${id}.directory-rel" = "[ProfD]ImapMail/imap.gmail.com-mrfortem";
"mail.identity.id_${id}.htmlSigText" = signatures.alias;
}; };
}; };
}; };
@ -122,7 +138,7 @@ in {
programs = { programs = {
thunderbird = { thunderbird = {
enable = true; enable = true;
profiles.tdpeuter = { profiles."${profile}" = {
isDefault = true; isDefault = true;
settings = { settings = {
# View # View
@ -139,5 +155,17 @@ in {
}; };
}; };
}; };
programs = {
thunderbird = {
enable = true;
policies.ExtensionSettings = {
"cardbook" = {
installation_mode = "normal_installed";
install_url = "https://addons.thunderbird.net/thunderbird/downloads/latest/cardbook/addon-634298-latest.xpi";
};
};
};
};
}; };
} }