Marty Oehme
03684ce29f
Reflecting the somewhat expanding scope of the module, renamed it to office. Still keeps the old files and setups but also got a new README file.
27 lines
2 KiB
Markdown
27 lines
2 KiB
Markdown
# office module
|
|
|
|
neomutt - terminal mail client
|
|
[mbsync](https://isync.sourceforge.io/mbsync.html) - mirror your Imapped mail directory locally with two-way synchronization
|
|
[notmuch](https://notmuchmail.org/) - index and search your mail
|
|
msmtp - send mail through shell commands
|
|
imapfilter - rule-based filtering engine for your incoming mail
|
|
vdirsyncer - mirror your contacts and calendars locally with two-way synchronization
|
|
khal - terminal vdir-compatible calendar client
|
|
calcurse - a pretty terminal calendar client, but not very vdir compatible
|
|
|
|
Most of the credential/account setup of course is highly specific to my setup and should be changed as required.
|
|
|
|
The current mail setup uses `mbsync` (from the isync project) to locally mirror the GMail imap folder.
|
|
It is run through a `sync-mail` script which can invoke pre- and post-sync hooks
|
|
(e.g. run your incoming mail through filters as soon as they arrive or ingest them into full-text search engines).[^1]
|
|
The sync script also automatically unlocks any pass directory so that credentials can be put into their respective applications and the directory closes again after use.
|
|
`msmtp` is used for mail sending by neomutt (and git if using git send-email).
|
|
`neomutt` then picks up the mail directory filled by `mbsync` and lets you browse it, respond to mail or create new ones.
|
|
|
|
[^1]: That being said, the script is a little dusty and could probably use a little overhaul. It *works* but could be more fantastic I feel.
|
|
|
|
For calendars and contacts, the wonderful `vdirsyncer` is used to sync everything from a remote Dav client (hard-coded to my server currently) to the local directories in documents.
|
|
This is then picked up by `khal` to allow you to browse and edit your events, and create new ones - all of which in turn ends up remotely.
|
|
|
|
You can also browse your events locally with `calcurse` which will import them on each startup, but will not sync back yet;
|
|
meaning, any changes you do through the application will not reflect themselves back on any of your other connected devices unfortunately.
|