jaromail

a commandline tool to easily and privately handle your e-mail
git clone git://parazyd.org/jaromail.git
Log | Files | Refs | Submodules | README

commit fbe9ff23cb70d29655d5dee406af2bd1c9575b7f
parent 53822257c95add3dee9270aa6aae411d68a90940
Author: Jaromil <jaromil@dyne.org>
Date:   Mon, 14 May 2012 22:54:52 +0200

fixed identity update switch

Diffstat:
Minstall.sh | 17++++++++---------
Msrc/jaro | 39+++++++++++++++++++++++++++++++++++++--
2 files changed, 45 insertions(+), 11 deletions(-)

diff --git a/install.sh b/install.sh @@ -53,15 +53,11 @@ ${=mkdir} $WORKDIR/tmp $WORKDIR/cache if ! [ -r $WORKDIR/Filters.txt ]; then cat <<EOF > $WORKDIR/Filters.txt -# Example filter configuration for Jaromail +# Example filter configuration for Jaro Mail -# accepted email addresses -to jaromil@dyne.org save priv -to jaromil@kyuzz.org save priv -to jaromil@enemy.org save priv -to jaromil@montevideo.nl save priv +# mailinglist filters are in order of importance +# syntax: to <list email> save <folder> -# mailinglist filters, in order of importance to crypto@lists.dyne save dyne.crypto to dynebolic save dyne.dynebolic to freej save dyne.freej @@ -75,6 +71,9 @@ to debian-blends save debian.blends to freedombox-discuss save debian.freedombox # other filters for web 2.0 services +# using folder names with a prefix. can facilitate +# folder maintainance. + from identi.ca save web.identica from Twitter save web.twitter from linkedin save web.linkedin @@ -213,10 +212,10 @@ case $OS in cp -a build/osx/* $WORKDIR/bin fi touch $HOME/.profile - cat $HOME/.profile | grep '^# Jaromail' > /dev/null + cat $HOME/.profile | grep '^# Jaro Mail' > /dev/null if [ $? != 0 ]; then cat <<EOF >> $HOME/.profile -# Jaromail Installer addition on `date` +# Jaro Mail Installer addition on `date` export PATH=$WORKDIR/bin:\$PATH # Finished adapting your PATH EOF diff --git a/src/jaro b/src/jaro @@ -280,6 +280,37 @@ read_account() { esac return 0 } +# read a default account +# arg: "in" or "out" +# meaning an account to receive or send emails +read_default_account() { + adir=$WORKDIR/Accounts + typeset -al all + if [ -z $1 ]; then + error "Error: read_default_account called without argument" + return 1 + fi + case $1 in + "in") + if [ -r $adir/imap.default ]; then + read_account imap.default + else + for a in `find $adir -name "imap*"`; do all+=($a); done + for a in `find $adir -name "pop*"`; do all+=($a); done + read_account `basename ${all[1]}` # take the first found + fi + ;; + "out") + if [ -r $adir/smtp.default ]; then + read_account smtp.default + else + for a in `find $adir -name "smtp*"`; do all+=($a); done + read_account `basename ${all[1]}` # take the first found + fi + ;; + esac + return 0 +} queue() { local base; @@ -523,10 +554,14 @@ source $MUTTDIR/identity EOF - # just the header, will be completed later in procmail loop + # just the header, will be completed later in procmail loop rm -f $MUTTDIR/mboxes echo -n "mailboxes +priv" > $MUTTDIR/mboxes - + + # update identity with default + read_default_account "in" + switch_identity + ########## # PROCMAIL ${=mkdir} $PROCMAILDIR