@@ -1,3 +1,3 @@ | |||
github: lukesmithxyz | |||
custom: ["https://lukesmith.xyz/donate", "https://paypal.me/lukemsmith", "https://lukesmith.xyz/crypto"] | |||
custom: ["https://lukesmith.xyz/donate", "https://paypal.me/lukemsmith"] | |||
patreon: lukesmith |
@@ -45,8 +45,8 @@ cd mutt-wizard | |||
sudo make install | |||
``` | |||
A user of Arch-based distros can also install mutt-wizard from the AUR as | |||
[mutt-wizard-git](https://aur.archlinux.org/packages/mutt-wizard-git/). | |||
A user of Arch-based distros can also install the current mutt-wizard release from the AUR as | |||
[mutt-wizard](https://aur.archlinux.org/packages/mutt-wizard/), or the Github master branch, [mutt-wizard-git](https://aur.archlinux.org/packages/mutt-wizard-git/). | |||
### Optional Dependencies | |||
@@ -22,7 +22,7 @@ pgrep -x mbsync >/dev/null && { echo "mbsync is already running." ; exit ;} | |||
# will work on the maximum number of machines. | |||
eval "$(grep -h -- \ | |||
"^\s*\(export \)\?\(MBSYNCRC\|PASSWORD_STORE_DIR\|NOTMUCH_CONFIG\|GNUPGHOME\)=" \ | |||
"$HOME/.profile" "$HOME/.bash_profile" "$HOME/.zprofile" "$HOME/.bashrc" "$HOME/.zshrc" "$HOME/.pam_environment" 2>/dev/null)" | |||
"$HOME/.profile" "$HOME/.bash_profile" "${ZDOTDIR:-$HOME}/.zprofile" "$HOME/.bashrc" "${ZDOTDIR:-$HOME}/.zshrc" "$HOME/.pam_environment" 2>/dev/null)" | |||
# One alternative to this kind of command would be marking the script for | |||
# /bin/sh -l. That might cause other problems on other particular setups that | |||
# do more complicated things on login, or those people who assign environmental | |||
@@ -33,6 +33,8 @@ case "$(readlink -f /sbin/init)" in | |||
esac | |||
export GPG_TTY=$TTY | |||
muttconfig="${XDG_CONFIG_HOME:-$HOME/.config}/mutt" | |||
[ -n "$MBSYNCRC" ] && alias mbsync="mbsync -c $MBSYNCRC" || MBSYNCRC="$HOME/.mbsyncrc" | |||
# Settings are different for MacOS (Darwin) systems. | |||
@@ -58,7 +60,7 @@ esac | |||
syncandnotify() { | |||
acc="$(echo "$account" | sed "s/.*\///")" | |||
if [ -z "$opts" ]; then mbsync "$acc"; else mbsync "$opts" "$acc"; fi | |||
new=$(find "$HOME/.local/share/mail/$acc/INBOX/new/" "$HOME/.local/share/mail/$acc/Inbox/new/" "$HOME/.local/share/mail/$acc/inbox/new/" -type f -newer "$HOME/.config/mutt/.mailsynclastrun" 2> /dev/null) | |||
new=$(find "$HOME/.local/share/mail/$acc/INBOX/new/" "$HOME/.local/share/mail/$acc/Inbox/new/" "$HOME/.local/share/mail/$acc/inbox/new/" -type f -newer "$muttconfig/.mailsynclastrun" 2> /dev/null) | |||
newcount=$(echo "$new" | sed '/^\s*$/d' | wc -l) | |||
if [ "$newcount" -gt "0" ]; then | |||
notify "$acc" "$newcount" & | |||
@@ -91,4 +93,4 @@ wait | |||
notmuch new 2>/dev/null | |||
#Create a touch file that indicates the time of the last run of mailsync | |||
touch "$HOME/.config/mutt/.mailsynclastrun" | |||
touch "$muttconfig/.mailsynclastrun" |
@@ -25,7 +25,7 @@ checkbasics() { command -V gpg >/dev/null 2>&1 && GPG="gpg" || GPG="gpg2" | |||
[ -r "$PASSWORD_STORE_DIR/.gpg-id" ] && | |||
"$GPG" --list-secret-keys "$(cat "$PASSWORD_STORE_DIR/.gpg-id")" >/dev/null 2>&1 || { | |||
echo "First run \`pass init <yourgpgemail>\` to set up a password archive." | |||
echo "(If you don't already have a GPG key pair, first run \`$GPG --fullgenkey\`.)" | |||
echo "(If you don't already have a GPG key pair, first run \`$GPG --full-gen-key\`.)" | |||
exit 1 ;} ;} | |||
getaccounts() { accounts="$(find -L "$accdir" -type f | grep -o "[0-9]-.*.muttrc" | sed "s/-/: /;s/\.muttrc$//" | sort -n)" ;} | |||
@@ -122,6 +122,7 @@ bind index,pager g noop | |||
bind index,pager M noop | |||
bind index,pager C noop | |||
bind index gg first-entry | |||
unmacro index o | |||
unmailboxes * | |||
" | |||
fi | |||
@@ -236,7 +237,7 @@ Junk | |||
Trash | |||
Sent | |||
Archive" && return 0 | |||
info="$(curl --location-trusted -s -m 5 --user "$login:$(pass $pass_prefix$fulladdr)" --url "${protocol:-imaps}://$imap")" | |||
info="$(curl --location-trusted -s -m 5 --user "$login:$(pass $pass_prefix$fulladdr)" --url "${protocol:-imaps}://$imap:${iport:-993}")" | |||
[ -z "$info" ] && echo "Log-on not successful." && return 1 | |||
mailboxes="$(echo "$info" | sed "s/.*\" //;s/\"//g" | tr -d ' ')" | |||
} | |||
@@ -351,6 +352,7 @@ while getopts "fplhodTYD:y:i:I:s:S:u:a:n:x:m:t:" o; do case "${o}" in | |||
t) setact toggle || exit 1 ; cronmin="$OPTARG" ;; | |||
T) setact toggle || exit 1 ;; | |||
p) echo "NOTE: Protonmail users must install and configure Protonmail Bridge first for the first sync to work." | |||
protocol="imap" | |||
imap="127.0.0.1" | |||
iport="1143" | |||
smtp="127.0.0.1" | |||
@@ -12,6 +12,7 @@ airmail.cc,mail.cock.li,993,mail.cock.li,587 | |||
allergist.com,imap.mail.com,993,smtp.mail.com,587 | |||
alumni.bits-pilani.ac.in,imap.gmail.com,993,smtp.gmail.com,465 | |||
alumni.com,imap.mail.com,993,smtp.mail.com,587 | |||
alumni.unitn.it,imap.gmail.com,993,smtp.gmail.com,587 | |||
alumnidirector.com,imap.mail.com,993,smtp.mail.com,587 | |||
alunos.utfpr.edu.br,imap.gmail.com,993,smtp.gmail.com,587 | |||
anche.no,mail.autistici.org,993,smtp.autistici.org,465 | |||
@@ -93,6 +94,7 @@ ethancoe.com,mail.privateemail.com,993,mail.privateemail.com,465 | |||
ethz.ch,mail.ethz.ch,993,mail.ethz.ch,587 | |||
etu.upmc.fr,courriel.upmc.fr,993,smtps.upmc.fr,587 | |||
europe.com,imap.mail.com,993,smtp.mail.com,587 | |||
ex-studenti.unitn.it,imap.gmail.com,993,smtp.gmail.com,587 | |||
fastmail.com,imap.fastmail.com,993,smtp.fastmail.com,465 | |||
fastmail.fm,imap.fastmail.com,993,smtp.fastmail.com,465 | |||
firemail.cc,mail.cock.li,993,mail.cock.li,587 | |||
@@ -241,6 +243,7 @@ student.tuwien.ac.at,mail.student.tuwien.ac.at,993,mail.student.tuwien.ac.at,587 | |||
student.uj.edu.pl,outlook.office365.com,993,smtp.office365.com,587 | |||
student.utwente.nl,imap.gmail.com,993,smtp.gmail.com,587 | |||
studenti.unipi.it,outlook.office365.com,993,smtp.office365.com,587 | |||
studenti.unitn.it,imap.gmail.com,993,smtp.gmail.com,587 | |||
students.rmcacs.org,imap.gmail.com,993,smtp.gmail.com,587 | |||
students.southwales.ac.uk,imap.gmail.com,993,smtp.gmail.com,587 | |||
studio.unibo.it,outlook.office365.com,993,smtp.office365.com,587 | |||
@@ -267,6 +270,7 @@ uni-jena.de,imap.uni-jena.de,993,smtp.uni-jena.de,587 | |||
unilodz.eu,outlook.office365.com,993,smtp.office365.com,587 | |||
unitybox.de,mail.unity-mail.de,993,mail.unity-mail.de,587 | |||
univ-ubs.fr,partage.univ-ubs.fr,993,partage.univ-ubs.fr,587 | |||
unitn.it,imap.gmail.com,993,smtp.gmail.com,587 | |||
uoregon.edu,imap.uoregon.edu,993,smtp.uoregon.edu,587 | |||
uqtr.ca,outlook.office365.com,993,smtp.office365.com,587 | |||
usa.com,imap.mail.com,993,smtp.mail.com,587 | |||