В Alpine есть опция конфигурации «NewMail FIFO Path». Цитирую помощь:
Возможно, Alpine создаст специальный файл FIFO (также называемый именованным каналом), где он будет отправлять однострочное сообщение при каждом получении нового сообщения в текущей папке, INBOX или любых открытых папках Stayopen. Для защиты от двух разных Alpine, одновременно записывающих данные в один и тот же FIFO, Alpine будет создавать FIFO и записывать в него, только если он еще не существует.
Итак, я установил параметр '/tmp/alpine.fifo' и написал простую утилиту для чтения сообщений из FIFO и вызова 'notify-send':
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>
#include <fcntl.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#define FIFO_NAME "/tmp/alpine.fifo"
int main(void)
{
char s[512];
char cmd[512];
int num;
int fd = open(FIFO_NAME, O_RDONLY);
do {
if ((num = read(fd, s, 300)) == -1)
perror("read");
else {
s[num] = '\0';
sprintf(cmd, "notify-send -t 0 'New mail:' '%s'", s);
system(cmd);
}
} while (num > 0);
return 0;
}
Сохраните его в alpine-notifier.c и скомпилируйте с помощью команды 'gcc alpine-notifier.c -o alpine-notifier'. Запустите «alpine-notifier» после запуска alpine. Наслаждайтесь всплывающими уведомлениями.