diff options
Diffstat (limited to 'bin')
| -rwxr-xr-x | bin/mailsync | 5 | ||||
| -rwxr-xr-x | bin/mw | 18 | 
2 files changed, 19 insertions, 4 deletions
| diff --git a/bin/mailsync b/bin/mailsync index d79507d..c56ccb2 100755 --- a/bin/mailsync +++ b/bin/mailsync @@ -2,12 +2,13 @@  # Sync mail and give notification if there is new mail.  export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin -export DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$(id -u)/bus +DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$(id -u)/bus +export DBUS_SESSION_BUS_ADDRESS  export DISPLAY=:0.0  [ -d "$HOME/.local/share/password-store" ] && export PASSWORD_STORE_DIR="$HOME/.local/share/password-store"  # Run only if user logged in (prevent cron errors) -pgrep -u "$USER" >/dev/null || { echo "$USER not logged in; sync will not run."; exit ;} +pgrep -u "${USER:=$LOGNAME}" >/dev/null || { echo "$USER not logged in; sync will not run."; exit ;}  # Run only if not already running in other instance  pgrep -x mbsync >/dev/null && { echo "mbsync is already running." ; exit ;} @@ -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  } | 
