Что: b54eee0a42cf88a1bc85e18e682797405b8f7608
Когда: 2022-07-28 22:25:44+03:00
Темы: mail perl
Познакомился с public-inbox https://public-inbox.org/README.html Упоминал в 24cb57beb1d53c4822b881300c73a37f1f36cc03 про то, что не плохо бы иметь NNTP интерфейс к архивам почтовых рассылок. Я не нашёл ни одного простого средства, как минимум без серьёзных СУБД типа PostgreSQL или MySQL, чтобы Maildir/mbox можно было выдавать. Я не прочь бы был и просто через pipe в команду скармливать по сообщению, чтобы оно попадало в какую-нибудь БД, но ничего не нашёл удовлетворительно простого. Вспомнил про public-inbox, который уже не помню почему не рассматривал (05bfb59b71520599ab105f0b189a5876988c0dcc). Наверное потому что показалось большим overhead-ом хранить это всё в репозитории и потому что нужно иметь запущенный демон в качестве frontend-а. Но посмотрел и попробовал это поближе. Мне очень понравилась аккуратность документации и минималистичность проекта. Я не ожидал что настолько легко будет сделать архив и отдавать его. public-inbox-init с тривиальными аргументами, public-inbox-mda скормить через stdin просто все файлы архива mlmmj (aac872add6b3defe52aef4d70dbb54a6fcddf973), public-inbox-index --all, а дальше просто запускать или -httpd, или -nntpd, или -imapd. Но обнаружились проблемы: он отказывается помещать в архив HTML письма, как минимум. В рассылке про криптопати многие письма отсутствуют, есть только ответы в plain text-е. И public-inbox настолько минималистичен, что настроить это ничего нельзя. Хотя оно на Perl и в качестве преимущества указывается (7140d7a5634957df1b459a4d6dae976b642d18f4) возможность всё это править, но не думаю что я возьмусь за это. Люди использующие HTML в письмах заслуживают презрения и неуважительного отношения и недостойны помещения в архив. Другая, более важная проблема: я не нашёл ни одного клиента который бы отображал мне кириллические письма. Впервые пробовал использовать NNTP и поэтому опыта никакого. slrn, tin и NeoMutt пробовал, а также Lynx. В общем-то, кириллические письма всегда в закодированных MIME сообщениях встречаются. tin показывает содержимое писем, но не декодирует их темы, поэтому список сообщений в криптопати-рассылке состоит из сплошных вопросительных знаков. slrn наоборот отображает темы, но не тела. Или наоборот -- уже запутался. Lynx ничего не декодирует. А NeoMutt не показывает список сообщений вообще, хотя список доступных групп имеется. С Gmane-ом он сообщения показывает, так что наверное что-то с public-inbox не стыкуется у него. Причём нашёл пару ошибок в нём: на одной строчке из muttrc он падает и ругается что там какая-то ошибка. На одном из предыдущих коммитов, когда я пробовал "другую" версию NNTP реализации, увидел что он явно написал мне про ошибку (mailboxes указывал на несуществующий mailbox). То есть явно произошла деградация в нём. А другая ошибка была в том, что в нём по умолчанию включён всякий force TLS, он выдаёт ошибке о невозможности провести STARTTLS, но зачем же при этом показывать мне список групп новостей? То есть, не смотря на force TLS, он всё равно общается с сервером. В итоге NNTP как бы отпадает, ибо всё плачевно с MIME поддержкой в популярных клиентах. Но, зато работает IMAP! Анонимный пользователь без проблем может войти, ну и отдаётся всё в этом почтовом ящике. Уж IMAP-capable софта гораздо больше и с MIME проблем быть не должно ни в каком виде уже. Наверное буду переезжать на эту штуку. С daemontools тривиально интегрируется. godlighty надо научить проксировать запросы в -httpd. Посмотреть как бы красиво письмо можно бы было скармливать -mda. Понять нужен ли IMAP. Скорее всего нет, ибо если в news:// ещё можно указывать конкретное сообщение, то в imap:// не слышал о таком.
Сгенерирован: SGBlog 0.34.0