email tools across platforms
[Arch
email
GnuPG
Linux
pass
Windows
]
Ugh, email - modern wonder, and scourge. It’s so easy to send that now anyone that’s online is saturated with emails that we really should read, but largely don’t. I consider myself really bad at reading through my emails - my problem is that I don’t read my emails every day. I have a reason for this: No matter how important my incoming emails might be, I want to be in charge of what I do next - I don’t want to be a slave to my emails. I’m already a slave to the clock, which I free myself from whenever I can, just to remember what it felt like to have “bags of time”.
So, to survive in all our contractual and friendly arrangements, we need our preferred email tools. In my case I’ve several principal email accounts:
- Gmail also gets me a Google Account, and in return Google gets to know me in some ways better than I know myself, and Google Ads follows me around the web. I’m happy with that deal. I use my
Gmail
account for general administration, shopping, and for my son’sAndroid
phone. I also sometimes haveGmail
accounts specifically for work. The web browser client is excellent. - FastMail I pay a small annual fee for an email account. I use this for private emails, and some work. I was originally motivated by
Gmail
(some years ago) refusing to send one of my attachments, and somewhat by privacy. The web browser client is excellent. - GMX Mail I’ve used for years, and keep for legacy reasons. The web interface is a little clunky and interfering, but works well enough.
- Outlook.com I signed up to originally when it was
Hotmail
, and keep those accounts for my science-related work and for configuring myWindows 10 Pro
laptop.
I also occasionally use a Disposable email address.
Thunderbird
I use Thunderbird on both Linux
and Windows 10 Pro
. These are the huge advantages:
- I can quickly see the contents of all of my principal email accounts, and drag & drop emails between them.
- I can
Delete
attachments (that I’ve downloaded) from emails, thus vastly reducing my Archive folders storage size.
connect to an email account
alt > f (= File) > n (= New) > e > e (= Existing Mail Account...)
and you’ll enter your credentials
If it’s a Gmail
account, Thunderbird
will pop-up Sign in with your Google Account in its internal web browser where you’ll have to re-enter your password to move on to complete your 2-Step Verification
process. (See Signing in with 2-Step Verification.)
global settings
Thunderbird
has many internal shortcut keys which I can’t always remember, so I have my own quick-reference always just a few Vim
keystrokes away misc/CrossPlatform/QR/QR.md. tbkeys-lite is a big help.
Occasionally I do File > Compact Folders
.
Sometimes Thunderbird
shows the wrong message contents for a folder, which is fixed by right-clicking on the broken folder for Properties > Repair
.
By default Thunderbird
threads emails, which I strongly dislike, so I alt+v (= View) > s (= Sort by) > h (= Unthreaded)
.
account settings
Thunderbird
is good at detecting your email account’s server settings when you give it your email address.
You’ll probably want to tweak your Account Settings
for each email account.
Settings > Privacy > Passwords > Saved Passwords... > Show Passwords
gets a small window named Saved Logins
Gmail
Gmail
is tricky because it uses labels to represent mail folders, so Server settings > When I delete > Just mark it as deleted
has the disadvantage of leaving the message in All Mail
, and so you’ll discover that messages you thought you’d deleted are still there, in the less visible All Mail
folder, but labelled by Gmail
as deleted. My fix is, for each Gmail
account, Server settings > When I delete > Move > Bin
, then I occasionally empty the Bin
, truly getting rid of all that junk mail. (Remember of course that whatever’s on the internet lingers on in hidden corners for years, including our private emails…)
Off-tick Thunderbird’s default setting of Copies & Folders > [ When sending messages, automatically: > Place a copy in:
as Gmail
handles this with labels effectively placing sent mail in [Gmail]/Sent Mail
folder.
syncing my Profile between machines
Profile backup is easy. If you tweak your Thunderbird
settings on one machine, you can copy that to another machine to transfer your tweaks. Your ~/.thunderbird/profiles.ini
shows you where your Thunderbird
profile is installed. I used to do this manually, but now I have Dropbox do it for me.
syncing my Profile with Dropbox
On my Arch linux
machines:
export Drpbx='<location_of_my_Dropbox_directory>'
export T91="$DJH/T91-default-release" # where I'd like my Thunderbird v91 profile to be
sed -i "/Name=default-release/,/^$/ { s/IsRelative=1/IsRelative=0/; s:Path=.*:Path=$Thb: }" ~/.thunderbird/profiles.ini
On my Windows 10 Pro
laptop, I run Thunderbird
once, empty ~\AppData\Roaming\Thunderbird\Profiles\xxxxxxxx.default-release
, then edit ~\AppData\Roaming\Thunderbird\profiles.ini
:
[Profile0] section:
IsRelative=0
Path=D:\Dropbox\JH\Thb-dr
There’s one catch with this - I shouldn’t open Thunderbird
simultaneously on different machines. To help me enforce this I made a few small scripts:
- $MSwin10\Thb\runSafely.ps1
- $MSwin10\Thb\clearWin10ProLock.ps1
- $OSAB/jo/wm/TS/thunderbird_safely.sh
- $ABjo/wm/TS/thunderbird_safely.desktop
- $ABjo/wm/TS/locks.sh
mutt with notmuch
I went down this rabbit hole, which pleased my inner geek, but it ain’t for everyone. The result though is amazing: I get command-line control of my emails on my linux
machines. My configurations are here $clMail/README.md.
The Mutt slogan is “All mail clients suck. This one just sucks less.”
When you start out you’ll be clueless. mutt
is useless until it’s configured. You really have to decide for yourself how you want to do that. Here are some clues:
- OS-ArchBuilds/jo/clm/neomutt/muttrc-accounts-all - an entry point into my NeoMutt configuration
- OS-ArchBuilds/jo/Bash/bashrc-clm - my
Bash
commands for usingmbsync
(see isync: free IMAP and MailDir mailbox synchronizer)- in my mbsyncrc-template you’ll see that I use
pass
(see Pass (software)), for which you might want to look over my GnuPG - short primer
- in my mbsyncrc-template you’ll see that I use
neomutt
, the evolvedmutt
notmuch
(see Getting Started with Notmuch).
With this setup I can sync all of my emails from their servers, move them around, sync them again back to the servers, and do powerful regex searches across all of my email accounts.
providing account password to mbsync
pass init '<email_associated_with_my_GnuPG_key>' # sets up ~/.password-store
pass insert <location> # (in ~/.password-store/), then type in your password
Then, when mbysnc
is configured to access your email account’s password with pass
, you’ll give your GnuPG
authentification - I use pinentry configured to be needed just once per login.
sending emails
I can send text-only emails for my non-Gmail accounts - see About msmtp.
I did transcribe some handy code that allowed me to send Gmails (OS-ArchBuilds/jo/clm/msmtprc/oauth2tool.sh), but then Google decided to stop OAuth out-of-band flow, which effectively excluded msmtp
from sending Gmails…