commit e13c885909310c075620dcaf9eeb4e35c6425235
parent d8beab6d05574d3bcdf6d21320fc4e19923ecb66
Author: Jaromil <jaromil@dyne.org>
Date: Fri, 21 Feb 2014 14:04:29 +0100
fixes for usage on ubuntu with system-wide tools
Diffstat:
3 files changed, 29 insertions(+), 12 deletions(-)
diff --git a/src/jaro b/src/jaro
@@ -72,7 +72,7 @@ typeset -al maildirs
typeset -h formail_cache
# global variable for mutt binary
-typeset -h mutt
+typeset -h mutt pgpewrap dotlock
# global variable for exit code
typeset exitcode
@@ -181,7 +181,7 @@ else
fi
# temporary directory
-TMPDIR="$MAILDIRS/tmp"
+TMPDIR="$MAILDIRS/tmp/jaromil.$USER"
case $OS in
GNU)
touch /dev/shm/jaromail.test.tmp > /dev/null
@@ -253,7 +253,7 @@ GNOMEKEY=0
cleanexit() {
func "Clean exit procedures"
-
+ sleep 3
unset name login host protocol port password auth folders accountopt
# security check
@@ -307,7 +307,7 @@ TRAPINT() {
{ test $CLEANEXIT = 1 } && {
error "Forced removal of locks"
- cleanexit }
+ cleanexit & }
if [ "$DEBUG" = "1" ]; then return 1
else exit 1; fi
@@ -344,9 +344,16 @@ check_bin() {
# which mutt binary to use
if command -v mutt-jaro > /dev/null; then
- mutt="mutt-jaro"
+ # in-house compiled
+ mutt=mutt-jaro
+ pgpewrap=pgpewrap
+ dotlock=dotlock
elif command -v mutt > /dev/null; then
+ # system-wite
mutt="mutt"
+ # TODO: check if this is also the location on Fedora
+ pgpewrap="/usr/lib/mutt/pgpewrap"
+ dotlock="mutt_dotlock"
else
error "Cannot find Mutt. Please install it."
exit 1
@@ -681,5 +688,5 @@ main()
if [ "$1" != "source" ]; then check_bin; fi
main $@
-{ test "$CLEANEXIT" = "1" } && { cleanexit }
+{ test "$CLEANEXIT" = "1" } && { cleanexit & }
return $exitcode
diff --git a/src/zlibs/filters b/src/zlibs/filters
@@ -48,6 +48,10 @@ update() {
######
# MUTT
+ act "configuring Mutt's environment"
+ func "binary: $mutt"
+ func "pgpewrap: $pgpewrap"
+ func "lock: $dotlock"
${=mkdir} $MUTTDIR
${=mkdir} $MUTTDIR/cache
rm -f $MUTTDIR/rc
@@ -89,6 +93,11 @@ EOF
{ test -r $MAILDIRS/Mutt.txt } && {
print "source '$MAILDIRS/Mutt.txt'" >> $MUTTDIR/rc }
+
+
+#####################
+# helper applications
+act "configuring helper applications"
cat <<EOF >> $MUTTDIR/rc
## end of Jaro Mail generated muttrc
####################################
@@ -116,7 +125,8 @@ EOF
text/html; lynx -dump -assume_charset=%{charset} %s; nametemplate=%s.html; copiousoutput
EOF
fi
- apptypes=`cat ${WORKDIR}/Applications.txt`
+
+ apptypes=`cat ${MAILDIRS}/Applications.txt`
for t in ${(f)apptypes}; do
eval `print $t | awk '
{ print "_type=" $1 "; _app=" $2 ";" }'`
@@ -142,7 +152,7 @@ EOF
#######
# SIEVE
- act "generating sieve filters"
+ act "generating procmail and sieve filter rules"
id=$datestamp.$RANDOM
sieve=$MAILDIRS/Filters.sieve
lock $sieve
@@ -191,7 +201,6 @@ EOF
##########
# PROCMAIL
- act "generating procmail filters"
${=mkdir} $PROCMAILDIR
rm -f $PROCMAILDIR/rc
touch $PROCMAILDIR/rc
@@ -231,6 +240,7 @@ zz.bounces/
EOF
#######
+ act "compiling rules for mailinglists"
print "# filters generated from Filters.txt" >> $PROCMAILDIR/rc
typeset -alU filter_from
@@ -313,7 +323,7 @@ EOF
#### SIEVE
-
+act "compiling whitelist rules from addressbook"
func "generating whitelist for sieve filters"
cat <<EOF >> $sieve
# whitelist
@@ -384,7 +394,7 @@ EOF
if header :contains "To" [
EOF
typeset -alU recv
- for f in `${=find} $WORKDIR/Accounts/ -type f | grep -v 'smtp'`; do
+ for f in `${=find} $MAILDIRS/Accounts/ -type f | grep -v 'smtp'`; do
for addr in `cat $f | awk '
/^email/ { print $2 }
/^alias/ { print $2 }
diff --git a/src/zlibs/helpers b/src/zlibs/helpers
@@ -96,7 +96,7 @@ jarovim() {
edit_file() {
{ test ${EDITOR} } && { _editor="${EDITOR}" }
{ test ${JARO_EDITOR} } && { _editor="$JARO_EDITOR" }
-
+ { test "$_editor" = "" } && { _editor=vim }
case $_editor in
# refine settings for email
vi|vim) jarovim "${PARAM}"; return $? ;;