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:
|
## 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.
|
- 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 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.
|
- 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.
|
- `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"
|
printf "\033[0m"
|
||||||
done
|
done
|
||||||
domain="$(echo "$fulladdr" | sed "s/.*@//")"
|
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"
|
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
|
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 "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"
|
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"
|
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
|
sed -ibu "s/account $title/&\ntls_trust_file\ntls_fingerprint $fingerprint/" "$msmtprc" ; rm -f "$msmtprc"bu
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user