Protonmail Config Fixes (#313)
* Run serverinfo query based on if proton or not * If domain is already protonmail don't ask if it is * Fix protonmail fingerprint extraction * Update docs re: protonmail bridge timing out
This commit is contained in:
parent
1ed5c67f75
commit
a3b1bed626
@ -112,6 +112,7 @@ mutt-wizard is free/libre software, licensed under the GPLv3.
|
||||
## Watch out for these things:
|
||||
- Gmail accounts can now create 'App Password' to use with """less secure""" applications. This password is single use (ie. for setup) and will be stored and encrypted locally. Enabling third-party applications requires turning off two-factor authentication and this will circumvent that. You might also need to manually "Enable IMAP" in the settings.
|
||||
- Protonmail accounts will require you to set up "Protonmail Bridge" to access PM's IMAP and SMTP servers. Configure that before running mutt-wizard.
|
||||
- Protonmail bridge is prone to timing out. Watch out for this while adding an account. If the bridge times out, try again.
|
||||
- If you have a university email, or enterprise-hosted email for work, there might be other hurdles or two-factor authentication you have to jump through. Some, for example, will want you to create a separate IMAP password, etc.
|
||||
- `isync` is not fully UTF-8 compatible, so non-Latin characters may be garbled (although sync should succeed). `mw` will also not autocreate mailbox shortcuts since it is looking for English mailbox names. I strongly recommend you to set your email language to English on your mail server to avoid these problems.
|
||||
|
||||
|
18
bin/mw
18
bin/mw
@ -134,8 +134,22 @@ askinfo() { \
|
||||
printf "\033[0m"
|
||||
done
|
||||
domain="$(echo "$fulladdr" | sed "s/.*@//")"
|
||||
search_query=$domain
|
||||
case "$domain" in
|
||||
protonmail.com|protonmail.ch|pm.me)
|
||||
search_query='protonmail.com' && break;;
|
||||
*)
|
||||
while : ; do
|
||||
printf "\nIs your email hosted with Protonmail? [yes/no] "
|
||||
read -r is_protonmail
|
||||
case $is_protonmail in
|
||||
[Yy][Ee][Ss]) search_query='protonmail.com' && break;;
|
||||
[Nn][Oo]) break;;
|
||||
*) printf 'Please answer Yes or No'
|
||||
esac; done;
|
||||
esac
|
||||
printf "\\nSearching for \033[32m%s\033[0m in \033[34m\`domains.csv\`\033[0m..." "$domain"
|
||||
serverinfo="$(grep "^$domain" "$muttshare/domains.csv" 2>/dev/null)"
|
||||
serverinfo="$(grep "^$search_query" "$muttshare/domains.csv" 2>/dev/null)"
|
||||
if [ -z "$serverinfo" ]; then
|
||||
printf "Your email domain is not in mutt-wizard's database yet.\\nmutt-wizard will still autoconfigure everything, but you will have to manually type in your service's IMAP and SMTP server information.\\nYou can usually quickly find this by internet searching for it.\\n"
|
||||
printf "Insert the IMAP server for your email provider (excluding the port number)\\n\033[36m\t"
|
||||
@ -194,7 +208,7 @@ EOF
|
||||
}
|
||||
|
||||
protonfinger() { printf "Getting Protonmail bridge fingerprint...\\n"
|
||||
fingerprint="$(msmtp --serverinfo --host=127.0.0.1 --port=1025 --tls --tls-certcheck=off)" || return 1
|
||||
fingerprint="$(msmtp --serverinfo --host=127.0.0.1 --port=1025 --tls --tls-certcheck=off | grep SHA256: | sed 's/^.*: //')"
|
||||
sed -ibu "s/account $title/&\ntls_trust_file\ntls_fingerprint $fingerprint/" "$msmtprc" ; rm -f "$msmtprc"bu
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user