Files
nixos/module.accounts.nix

56 lines
1.5 KiB
Nix

{ ... }:
let
davHost = "cloud.thiccdata.io";
davUser = "mbessette";
mkGmailAccount = address: realName: {
inherit address realName;
flavor = "gmail.com";
thunderbird.enable = true;
};
mkCalendar = collection: {
remote = {
type = "caldav";
url = "https://${davHost}/remote.php/dav/calendars/${davUser}/${collection}/";
userName = davUser;
};
};
mkAddressBook = book: {
remote = {
type = "carddav";
url = "https://${davHost}/remote.php/dav/addressbooks/users/${davUser}/${book}/";
userName = davUser;
};
};
in
{
accounts.calendar.basePath = ".calendars";
accounts.contact.basePath = ".contacts";
accounts.email.accounts = {
personal = mkGmailAccount "blade30912@gmail.com" "Matthew Bessette" // {
primary = true;
};
bessette = mkGmailAccount "bessette.matthew94@gmail.com" "Matthew Bessette";
house = mkGmailAccount "mbessette.house@gmail.com" "Matthew Bessette";
joseph = mkGmailAccount "joseph.lamothe55@gmail.com" "Joseph Lamothe";
};
# Calendars and the address book are consumed via evolution-data-server
# (see module.evolution.nix) rather than Thunderbird's own calendar/address
# book code. Only email accounts opt in to Thunderbird.
accounts.calendar.accounts = {
family = mkCalendar "test";
matt = mkCalendar "matt-calendar" // {
primary = true;
};
joseph-cal = mkCalendar "joseph-calendar";
};
accounts.contact.accounts = {
contacts = mkAddressBook "contacts";
};
}