diff options
| -rw-r--r-- | README.md | 2 | ||||
| -rwxr-xr-x | bin/mailsync | 13 | ||||
| -rwxr-xr-x | bin/mw | 7 | ||||
| -rw-r--r-- | share/domains.csv | 65 | ||||
| -rw-r--r-- | share/mailcap | 2 | ||||
| -rw-r--r-- | share/mutt-wizard.muttrc | 5 | 
6 files changed, 72 insertions, 22 deletions
| @@ -81,7 +81,7 @@ To give you an example of the interface, here's an idea:  - `isync`/`mbsync` has replaced `offlineimap` as the backend. Offlineimap was error-prone, bloated, used obsolete Python 2 modules and required separate steps to install the system.  - `mw` is now an installed program instead of just a script needed to be kept in your mutt folder. -- `dialog` is no long used (le bloat) and the interface is simply text commands. +- `dialog` is no longer used (le bloat) and the interface is simply text commands.  - More autogenerated shortcuts that allow quickly moving and copying mail between boxes.  - More elegant attachment handling. Image/video/pdf attachments without relying on the neomutt instance.  - abook integration by default. diff --git a/bin/mailsync b/bin/mailsync index 202d9be..d79507d 100755 --- a/bin/mailsync +++ b/bin/mailsync @@ -1,17 +1,20 @@  #!/usr/bin/env sh  # 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 +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 || exit +pgrep -u "$USER" >/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 && exit +pgrep -x mbsync >/dev/null && { echo "mbsync is already running." ; exit ;}  # Checks for internet connection and set notification script. -ping -q -c 1 1.1.1.1 > /dev/null || exit +ping -q -c 1 1.1.1.1 > /dev/null || { echo "No internet connection detected."; exit ;}  command -v notify-send >/dev/null || echo "Note that \`libnotify\` or \`libnotify-send\` should be installed for pop-up mail notifications with this script." -export DISPLAY=:0.0 -  # Settings are different for MacOS (Darwin) systems.  if [ "$(uname)" = "Darwin" ]; then      notify() { osascript -e "display notification \"$2 in $1\" with title \"You've got Mail\" subtitle \"Account: $account\"" && sleep 2 ;} @@ -22,7 +22,7 @@ muttrc="$muttdir/muttrc"  msmtprc="$HOME/.config/msmtp/config"  ssltype="IMAPS"				# This is later changed to `None` later in the script if using Protonmail -for x in "/etc/ssl/certs/ca-certificates.crt" "/etc/pki/tls/certs/ca-bundle.crt" "/etc/ssl/ca-bundle.pem" "/etc/pki/tls/cacert.pem" "/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem" "/etc/ssl/cert.pem" +for x in "/etc/ssl/certs/ca-certificates.crt" "/etc/pki/tls/certs/ca-bundle.crt" "/etc/ssl/ca-bundle.pem" "/etc/pki/tls/cacert.pem" "/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem" "/etc/ssl/cert.pem" "/usr/local/share/ca-certificates/"  do  	[ -f "$x" ] && sslcert="$x" && break  done || { echo "CA Certificate not found. Please install one or link it to /etc/ssl/certs/ca-certificates.crt" && exit 1 ;} @@ -103,7 +103,7 @@ set folder = \"imaps://$fulladdr@$imap:$iport\"  set imap_user = \"$login\"  set header_cache = $cachedir/$title/headers  set message_cachedir = $cachedir/$title/bodies -set imap_pass = \`pass mutt-wizard-$title\` +set imap_pass = \"\`pass mutt-wizard-$title\`\"  set mbox_type = Maildir  set ssl_starttls = yes @@ -190,7 +190,7 @@ EOF  }  protonfinger() { printf "Getting Protonmail bridge fingerprint...\\n" -	fingerprint="$(msmtp --serverinfo --tls --tls-certcheck=off -a "$title")" || return 1 +	fingerprint="$(msmtp --serverinfo --host=127.0.0.1 --port=1025 --tls --tls-certcheck=off)" || return 1  	sed -ibu "s/account $title/&\ntls_trust_file\ntls_fingerprint $fingerprint/" "$msmtprc" ; rm -f "$msmtprc"bu  } @@ -289,6 +289,7 @@ asktype() { while : ; do  purge() { confirm "delete all account data" || exit  	rm -rf "$mbsyncrc" "$accdir" "$HOME/.config/msmtp" "$cachedir" +	crontab -l | sed '/mailsync/d' | crontab - >/dev/null  	echo "All configs and account settings have been purged."  	sed -ibu "/\# mw-autogenerated/d" "$muttrc" ; rm -f "$muttrc"bu  } diff --git a/share/domains.csv b/share/domains.csv index ba85eeb..8c94237 100644 --- a/share/domains.csv +++ b/share/domains.csv @@ -19,10 +19,10 @@ archaeologist.com,imap.mail.com,993,smtp.mail.com,587  arcticmail.com,imap.mail.com,993,smtp.mail.com,587  artlover.com,imap.mail.com,993,smtp.mail.com,587  asia.com,imap.mail.com,993,smtp.mail.com,587 -autograf.pl,imap.poczta.onet.pl,993,smtp.poczta.onet.pl,465  auctioneer.net,imap.mail.com,993,smtp.mail.com,587  autistiche.org,mail.autistici.org,993,smtp.autistici.org,465  autistici.org,mail.autistici.org,993,smtp.autistici.org,465 +autograf.pl,imap.poczta.onet.pl,993,smtp.poczta.onet.pl,465  autoproduzioni.net,mail.autistici.org,993,smtp.autistici.org,465  bartender.net,imap.mail.com,993,smtp.mail.com,587  bastardi.net,mail.autistici.org,993,smtp.autistici.org,465 @@ -35,15 +35,16 @@ brew-meister.com,imap.mail.com,993,smtp.mail.com,587  bruttocarattere.org,mail.autistici.org,993,smtp.autistici.org,465  canaglie.net,mail.autistici.org,993,smtp.autistici.org,465  canaglie.org,mail.autistici.org,993,smtp.autistici.org,465 +carleton.ca,imap-mail.outlook.com,993,smtp-mail.outlook.com,587  cash4u.com,imap.mail.com,993,smtp.mail.com,587  cheerful.com,imap.mail.com,993,smtp.mail.com,587  chef.net,imap.mail.com,993,smtp.mail.com,587  chemist.com,imap.mail.com,993,smtp.mail.com,587  chrissx.ga,chrissx.ga,993,chrissx.ga,25 +clarkson.edu,imap.gmail.com,993,smtp.gmail.com,587  clerk.com,imap.mail.com,993,smtp.mail.com,587  clubmember.org,imap.mail.com,993,smtp.mail.com,587  cmail.carleton.ca,imap-mail.outlook.com,993,smtp-mail.outlook.com,587 -carleton.ca,imap-mail.outlook.com,993,smtp-mail.outlook.com,587  cocaine.ninja,mail.cock.li,993,mail.cock.li,587  cock.email,mail.cock.li,993,mail.cock.li,587  cock.li,mail.cock.li,993,mail.cock.li,587 @@ -74,10 +75,12 @@ eneco.com,outlook.office365.com,993,smtp.office365.com,587  engineer.com,imap.mail.com,993,smtp.mail.com,587  erciyes.edu.tr,posta.erciyes.edu.tr,993,smtp.erciyes.edu.tr,587  ethancoe.com,mail.privateemail.com,993,mail.privateemail.com,465 +etu.upmc.fr,courriel.upmc.fr,993,smtps.upmc.fr,587  europe.com,imap.mail.com,993,smtp.mail.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 +forpsi.com,imap.forpsi.com,993,smtp.forpsi.com,465  forthnet.gr,mail.forthnet.gr,993,smtp-auth.forthnet.gr,465  fsmpi.rwth-aachen.de,mail.fsmpi.rwth-aachen.de,993,mail.fsmpi.rwth-aachen.de,465  fsu-jena,exchange.uni-jena.de,993,smtp.uni-jena.de,587 @@ -87,10 +90,10 @@ gmx.at,imap.gmx.net,993,mail.gmx.net,587  gmx.com,imap.gmx.net,993,mail.gmx.net,587  gmx.de,imap.gmx.net,993,mail.gmx.net,587  gmx.eu,imap.gmx.net,993,mail.gmx.net,587 +gmx.fr,imap.gmx.com,993,mail.gmx.com,587  gmx.info,imap.gmx.net,993,mail.gmx.net,587  gmx.net,imap.gmx.net,993,mail.gmx.net,587  gmx.org,imap.gmx.net,993,mail.gmx.net,587 -gmx.fr,imap.gmx.com,993,mail.gmx.com,587  go2.pl,poczta.o2.pl,993,poczta.o2.pl,465  goat.si,mail.cock.li,993,mail.cock.li,587  googlemail.com,imap.googlemail.com,993,smtp.googlemail.com,587 @@ -98,11 +101,48 @@ grrlz.net,mail.autistici.org,993,smtp.autistici.org,465  hacari.com,mail.autistici.org,993,smtp.autistici.org,465  hacari.net,mail.autistici.org,993,smtp.autistici.org,465  hacari.org,mail.autistici.org,993,smtp.autistici.org,465 +hhu.de,mail.hhu.de,993,mail.hhu.de,465  hitler.rocks,mail.cock.li,993,mail.cock.li,587  horsefucker.org,mail.cock.li,993,mail.cock.li,587  hostgator,gator4171.hostgator.com,993,gator4171.hostgator.com,587 +hotmail.be,outlook.office365.com,993,smtp.office365.com,587 +hotmail.ca,outlook.office365.com,993,smtp.office365.com,587 +hotmail.cl,outlook.office365.com,993,smtp.office365.com,587 +hotmail.co.id,outlook.office365.com,993,smtp.office365.com,587 +hotmail.co.il,outlook.office365.com,993,smtp.office365.com,587 +hotmail.co.in,outlook.office365.com,993,smtp.office365.com,587 +hotmail.co.jp,outlook.office365.com,993,smtp.office365.com,587 +hotmail.co.kr,outlook.office365.com,993,smtp.office365.com,587 +hotmail.co.th,outlook.office365.com,993,smtp.office365.com,587 +hotmail.co.uk,outlook.office365.com,993,smtp.office365.com,587 +hotmail.co.za,outlook.office365.com,993,smtp.office365.com,587  hotmail.com,imap-mail.outlook.com,993,smtp-mail.outlook.com,587 +hotmail.com.ar,outlook.office365.com,993,smtp.office365.com,587 +hotmail.com.au,outlook.office365.com,993,smtp.office365.com,587 +hotmail.com.br,outlook.office365.com,993,smtp.office365.com,587 +hotmail.com.hk,outlook.office365.com,993,smtp.office365.com,587 +hotmail.com.tr,outlook.office365.com,993,smtp.office365.com,587 +hotmail.com.tw,outlook.office365.com,993,smtp.office365.com,587 +hotmail.com.vn,outlook.office365.com,993,smtp.office365.com,587 +hotmail.cz,outlook.office365.com,993,smtp.office365.com,587 +hotmail.de,outlook.office365.com,993,smtp.office365.com,587 +hotmail.dk,outlook.office365.com,993,smtp.office365.com,587 +hotmail.es,outlook.office365.com,993,smtp.office365.com,587 +hotmail.fi,outlook.office365.com,993,smtp.office365.com,587  hotmail.fr,imap-mail.outlook.com,993,smtp-mail.outlook.com,587 +hotmail.gr,outlook.office365.com,993,smtp.office365.com,587 +hotmail.hu,outlook.office365.com,993,smtp.office365.com,587 +hotmail.it,outlook.office365.com,993,smtp.office365.com,587 +hotmail.lt,outlook.office365.com,993,smtp.office365.com,587 +hotmail.lv,outlook.office365.com,993,smtp.office365.com,587 +hotmail.my,outlook.office365.com,993,smtp.office365.com,587 +hotmail.nl,outlook.office365.com,993,smtp.office365.com,587 +hotmail.no,outlook.office365.com,993,smtp.office365.com,587 +hotmail.ph,outlook.office365.com,993,smtp.office365.com,587 +hotmail.rs,outlook.office365.com,993,smtp.office365.com,587 +hotmail.se,outlook.office365.com,993,smtp.office365.com,587 +hotmail.sg,outlook.office365.com,993,smtp.office365.com,587 +hotmail.sk,outlook.office365.com,993,smtp.office365.com,587  hushmail.com,imap.hushmail.com,993,smtp.hushmail.com,465  illinois.edu, imap.gmail.com,993,smtp.gmail.com,465  iname.com,imap.mail.com,993,smtp.mail.com,587 @@ -110,10 +150,11 @@ inf.h-brs.de,imap.inf.h-brs.de,993,smtp.inf.h-brs.de,587  infomaniak.com,imap.infomaniak.com,993,imap.infomaniak.com,587  insiberia.net,mail.autistici.org,993,smtp.autistici.org,465  insicuri.net,mail.autistici.org,993,smtp.autistici.org,465 +interactio.io,imap.gmail.com,993,smtp.gmail.com,587  interia.eu,poczta.interia.pl,993,poczta.interia.pl,465  interia.pl,poczta.interia.pl,993,poczta.interia.pl,465 -interactio.io,imap.gmail.com,993,smtp.gmail.com,587  inventati.org,mail.autistici.org,993,smtp.autistici.org,465 +itu.dk,imap-mail.outlook.com,993,smtp-mail.outlook.com,587  kipras.org,mail.kipras.org,993,mail.kipras.org,587  krutt.org,mail.autistici.org,993,smtp.autistici.org,465  lavabit.com,lavabit.com,993,lavabit.com,587 @@ -124,6 +165,7 @@ loves.dicksinhisan.us,mail.cock.li,993,mail.cock.li,587  loves.dicksinmyan.us,mail.cock.li,993,mail.cock.li,587  lukesmith.xyz,mail.lukesmith.xyz,993,mail.lukesmith.xyz,587  mail.com,imap.mail.com,993,smtp.mail.com,587 +mail.polimi.it,outlook.office365.com,993,smtp.office365.com,587  mail.ru,imap.mail.ru,993,smtp.mail.ru,465  mailbox.org,imap.mailbox.org,993,smtp.mailbox.org,587  memeware.net,mail.cock.li,993,mail.cock.li,587 @@ -139,6 +181,7 @@ nigge.rs,mail.cock.li,993,mail.cock.li,587  nuke.africa,mail.cock.li,993,mail.cock.li,587  nyu.edu,imap.gmail.com,993,smtp.gmail.com,587  o2.pl,poczta.o2.pl,993,poczta.o2.pl,465 +odu.edu,imap.gmail.com,993,smtp.gmail.com,587  one.com,imap.one.com,993,send.one.com,465  onenetbeyond.org,mail.autistici.org,993,smtp.autistici.org,465  onet.com.pl,imap.poczta.onet.pl,993,smtp.poczta.onet.pl,465 @@ -148,15 +191,14 @@ online.de,imap.1und1.de,993,smtp.1und1.de,465  op.pl,imap.poczta.onet.pl,993,smtp.poczta.onet.pl,465  opoczta.pl,imap.poczta.onet.pl,993,smtp.poczta.onet.pl,465  orange.fr,imap.orange.fr,993,smtp.orange.fr,465 +outlook.at,imap-mail.outlook.com,993,smtp-mail.outlook.com,587  outlook.com,imap-mail.outlook.com,993,smtp-mail.outlook.com,587  outlook.de,imap-mail.outlook.com,993,smtp-mail.outlook.com,587 -outlook.at,imap-mail.outlook.com,993,smtp-mail.outlook.com,587  paranoici.org,mail.autistici.org,993,smtp.autistici.org,465  pm.me,127.0.0.1,1143,127.0.0.1,1025  poczta.fm,poczta.interia.pl,993,poczta.interia.pl,465  poczta.onet.pl,imap.poczta.onet.pl,993,smtp.poczta.onet.pl,465  polimi.it,outlook.office365.com,993,smtp.office365.com,587 -mail.polimi.it,outlook.office365.com,993,smtp.office365.com,587  post.com,imap.mail.com,993,smtp.mail.com,587  posteo.de,posteo.de,993,posteo.de,587  posteo.net,posteo.de,993,posteo.de,587 @@ -172,6 +214,7 @@ sapo.pt,imap.sapo.pt,993,smtp.sapo.pt,587  smail.inf.h-brs.de,imap.inf.h-brs.de,993,smtp.inf.h-brs.de,587  southwales.ac.uk,imap.gmail.com,993,smtp.gmail.com,587  spoko.pl,imap.poczta.onet.pl,993,smtp.poczta.onet.pl,465 +stevens.edu,imap-mail.outlook.com,993,smpt-mail.outlook.com,587  stronzi.org,mail.autistici.org,993,smtp.autistici.org,465  stud.tu-darmstadt.de,imap.stud.tu-darmstadt.de,993,smtp.tu-darmstadt.de,465  stud.uis.no,outlook.office365.com,993,smtp.office365.com,587 @@ -185,13 +228,17 @@ teknik.io,mail.teknik.io,993,mail.teknik.io,587  telenet.be,imap.telenet.be,993,smtp.telenet.be,587  tfwno.gf,mail.cock.li,993,mail.cock.li,587  tlen.pl,poczta.o2.pl,993,poczta.o2.pl,465 +tquad.ai,imap.mail.eu-west-1.awsapps.com,993,smtp.mail.eu-west-1.awsapps.com,465  tu-harburg.de,mail.tu-harburg.de,993,mail.tu-harburg.de,587  tuhh.de,mail.tu-harburg.de,993,mail.tu-harburg.de,587  txstate.edu,outlook.office365.com,993,smtp.office365.com,587  uach.mx,imap.gmail.com,993,smtp.gmail.com,587 +uni-duesseldorf.de,mail.hhu.de,993,mail.hhu.de,465  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 +utas.edu.au,outlook.office365.com,993,smtp.office365.com,587 +utdallas.edu,outlook.office365.com,993,smtp.office365.com,587  uw.edu,imap.gmail.com,993,smtp.gmail.com,465  uymail.com,imap.mail.com,993,smtp.mail.com,587  vip.onet.pl,imap.poczta.onet.pl,993,smtp.poczta.onet.pl,465 @@ -206,8 +253,9 @@ web.de,imap.web.de,993,smtp.web.de,587  wp.pl,imap.wp.pl,993,smtp.wp.pl,465  writeme.com,imap.mail.com,993,smtp.mail.com,587  ya.ru,imap.yandex.com,993,smtp.yandex.com,587 -yahoo.fr,imap.mail.yahoo.com,993,smtp.mail.yahoo.com,587  yahoo.com,imap.mail.yahoo.com,993,smtp.mail.yahoo.com,587 +yahoo.fr,imap.mail.yahoo.com,993,smtp.mail.yahoo.com,587 +yahoo.gr,imap.mail.yahoo.com,993,smtp.mail.yahoo.com,587  yandex.by,imap.yandex.com,993,smtp.yandex.com,587  yandex.com,imap.yandex.com,993,smtp.yandex.com,587  yandex.kz,imap.yandex.com,993,smtp.yandex.com,587 @@ -215,6 +263,3 @@ yandex.net,imap.yandex.com,993,smtp.yandex.com,587  yandex.ru,imap.yandex.com,993,smtp.yandex.com,587  yandex.ua,imap.yandex.com,993,smtp.yandex.com,587  zoho.com,imap.zoho.com,993,smtp.zoho.com,465 -clarkson.edu,imap.gmail.com,993,smtp.gmail.com,587 -odu.edu,imap.gmail.com,993,smtp.gmail.com,587 -utdallas.edu,outlook.office365.com,993,smtp.office365.com,587 diff --git a/share/mailcap b/share/mailcap index c9c0a68..a265aa4 100644 --- a/share/mailcap +++ b/share/mailcap @@ -1,5 +1,5 @@  text/plain; $EDITOR %s ; -text/html; openfile %s ; +text/html; openfile %s ; nametemplate=%s.html  text/html; w3m -I %{charset} -T text/html; copiousoutput;  image/*; muttimage %s ; copiousoutput  video/*; setsid mpv --quiet %s &; copiousoutput diff --git a/share/mutt-wizard.muttrc b/share/mutt-wizard.muttrc index bd20d50..978341f 100644 --- a/share/mutt-wizard.muttrc +++ b/share/mutt-wizard.muttrc @@ -4,7 +4,6 @@  # In the interest of seamless updating, do not edit this file.  # If you want to override any settings, set those in your muttrc.  set mailcap_path = /usr/local/share/mutt-wizard/mailcap -set certificate_file = ~/.cache/mutt-wizard/certificates  set date_format="%y/%m/%d %I:%M%p"  set index_format="%2C %zs %?X?A& ? %D %-15.15F %s (%-4.4c)"  set sort = 'reverse-date' @@ -45,7 +44,9 @@ bind index U undelete-message  bind index L limit  bind index h noop  bind index l display-message -bind browser h goto-parent +#bind browser h goto-parent +macro browser h '<change-dir><kill-line>..<enter>' "Go to parent folder" +bind index,pager H view-raw-message  bind browser l select-entry  bind pager,browser gg top-page  bind pager,browser G bottom-page | 
