procmail не сохраняет электронные письма в maildir/new

Procmail сохраняет все новые электронные письма непосредственно в нужной папке maildir вместо maildir/new. Мой.procmailrc следующий:

SHELL=/bin/bash
LINEBUF=4096
PATH=/bin:/usr/bin:/usr/local/bin:/opt/local/bin
VERBOSE=off
MAILDIR=/mnt/data/maildir
DEFAULT=$MAILDIR/inbox/ # See the slash!
LOGFILE=$HOME/procmaillog
FORMAIL=/opt/local/bin/formail
SENDMAIL=/usr/sbin/sendmail

# Nuke duplicate messages
:0 Wh: msgid.lock
| $FORMAIL -D 8192 msgid.cache
:0 a: 
$MAILDIR/duplicates

# SpamAssassin sample procmailrc
:0fw: spamassassin.lock
* < 256000
| spamassassin-5.24 

# Mails with a score of 15 or higher are almost certainly spam (with 0.05%
# false positives according to rules/STATISTICS.txt). Let's put them in a
# different mbox. (This one is optional.)
:0:
* ^X-Spam-Level: \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*
$MAILDIR/junk

# All mail tagged as spam (eg. with a score higher than the set threshold)
:0:
* ^X-Spam-Status: Yes
$MAILDIR/junk

:0:
* ^List-id: .*(somelist_id|someother_list_id|etc)
$MAILDIR/nerdy_groups_and_lists

# Work around procmail bug: any output on stderr will cause the "F" in "From"
# to be dropped.  This will re-add it.
:0
* ^^rom[ ]
{
  LOG="*** Dropped F off From_ header! Fixing up. "
  :0 fhw
  | sed -e '1s/^/F/'
}

проблема в том, что вместо того, чтобы найти мои электронные письма, например, под /mnt/data/maildir/junk/new или же /mnt/data/maildir/nerdy_groups_and_lists/new Я нахожу их под /mnt/data/maildir/junk а также /mnt/data/maildir/nerdy_groups_and_listsсоответственно и mu4e не может их найти. Что я делаю неправильно?

1 ответ

Решение

Синтаксис для доставки в папку maildir требует значительной косой черты в имени каталога. Как вы обнаружили, без косой черты Procmail записывает в более старом устаревшем формате, который создает монотонно пронумерованные файлы в самом каталоге. (Существует также режим MH, который создает файлы с использованием соглашений MH, который использует dir/. с косой чертой и точкой.)

Другие вопросы по тегам