summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDerek Stevens <nilix@nilfm.cc>2021-08-28 21:35:59 -0600
committerDerek Stevens <nilix@nilfm.cc>2021-08-28 21:35:59 -0600
commit07efac0e7f9b8868f32a1963cd2228f02e84a2ce (patch)
tree92f3737d9f7282e1945b3faf6bf987dbd9958a0d
parenta73e912971f716485fa2cff05eb5fcc0252c193d (diff)
use mbsync and fix some bugs
-rwxr-xr-xmail2mms.sh17
1 files changed, 6 insertions, 11 deletions
diff --git a/mail2mms.sh b/mail2mms.sh
index f84b4ef..adc51d6 100755
--- a/mail2mms.sh
+++ b/mail2mms.sh
@@ -5,8 +5,7 @@
# and the body will contain the From and Subject fields of up to the 3
# most recent new mails. If the new mail count is above 3, there will also
# be 'and more...' at the end.
-# Assumes you have a maildir inbox on this machine;
-# you can use offlineimap or similar to sync recent mail to a maildir
+# Assumes you either have mbsync setup to sync your inbox folder,
# or use -l if this machine is actually your mailserver
# import the config file ./.config
@@ -23,7 +22,7 @@ oldnew=0
summary() {
i=0
- for m in $(ls -1r ${inbox}/new/*); do
+ for m in $(\ls -1r ${inbox}/new/*); do
i=$((i + 1))
if [ ${i} -gt 3 ]; then
echo "and more..."
@@ -39,17 +38,13 @@ summary() {
while true; do
- # Start offlineimap if it's not running and we are not on the mailserver
- # Sometimes it can crash, so it's in the loop here instead of at startup
-
- if [ "$1" != -l ]; then
- if ! pgrep offlineimap; then
- offlineimap &
- fi
+ # sync mailbox if this is not the mailserver
+ if [ "$1" = "-l" ]; then
+ mbsync -a
fi
# Count the number of new mails
- newnew=$(ls -1 ${inbox}/new | wc -l)
+ newnew=$(\ls -1 ${inbox}/new | wc -l)
# If the number of new mails has increased
if [ ${newnew} -gt ${oldnew} ]; then