#!/bin/bash set -e if [[ -z "$GMAIL" ]]; then echo >&2 'error: missing GMAIL environment variable' echo >&2 ' try running again with -e GMAIL=your-email@gmail.com' echo >&2 ' optionally, you can also specify -e GMAIL_PASS' echo >&2 ' -e GMAIL_NAME="Your Name" and GMAIL_FROM=email@your-domain.com' echo >&2 ' if not specified, both default to the value of GMAIL' exit 1 fi if [[ -z "$GMAIL_NAME" ]]; then GMAIL_NAME="$GMAIL" fi if [[ -z "$GMAIL_FROM" ]]; then GMAIL_FROM="$GMAIL" fi if [[ -z "$IMAP_SERVER" ]]; then IMAP_SERVER="imap.gmail.com:993" fi if [[ -z "$SMTP_SERVER" ]]; then SMTP_SERVER="smtp.gmail.com" fi sed -i "s/%GMAIL_LOGIN%/$GMAIL/g" "$HOME/.mutt/muttrc" sed -i "s/%GMAIL_NAME%/$GMAIL_NAME/g" "$HOME/.mutt/muttrc" sed -i "s/%GMAIL_PASS%/$GMAIL_PASS/g" "$HOME/.mutt/muttrc" sed -i "s/%GMAIL_FROM%/$GMAIL_FROM/g" "$HOME/.mutt/muttrc" sed -i "s/%IMAP_SERVER%/$IMAP_SERVER/g" "$HOME/.mutt/muttrc" sed -i "s/%SMTP_SERVER%/$SMTP_SERVER/g" "$HOME/.mutt/muttrc" if [[ -d "$HOME/.gnupg" ]]; then # sane gpg settings to be a good encryption # social citizen of the world { echo echo 'source /usr/share/doc/mutt/examples/gpg.rc' if [[ ! -z "$GPG_ID" ]]; then echo "set pgp_sign_as = $GPG_ID" fi echo 'set crypt_replysign=yes' echo 'set crypt_replysignencrypted=yes' echo 'set crypt_verify_sig=yes' # auto encrypt replies to encrypted mail echo 'set pgp_replyencrypt=yes' # auto sign replies to signed mail echo 'set pgp_replysign=yes' # auto sign & encrypt to signed & encrypted mail echo 'set pgp_replysignencrypted=yes' # show which keys are no good anymore echo 'set pgp_show_unusable=no' # auto sign emails echo 'set pgp_autosign=yes' } >> "$HOME/.mutt/muttrc" fi if [[ -e "$HOME/.muttrc.local" ]]; then echo "source $HOME/.muttrc.local" >> "$HOME/.mutt/muttrc" fi exec "$@"