postfix i $HOME/Mailbox (alsa)

Arkadiusz Miśkiewicz misiek w zsz2.starachowice.pl
Pon, 1 Mar 1999, 08:00:47 CET


Na po czątek o alsie ..
Tomek, pakiet alsa+smp.spec to błąd.
W dystrybucji będzie alsa-driver przekompilowany na dystrybucyjnym
jajku i będzie/nie będzie miał supportu dla SMP zależnie od jajka.
Wszyscy pozostali (mające niedystrybucyjne jajo) i tak będą musieli 
rekompilować alsę bo i tak będą mieli unresolved symbols a skrypt
configure wykrywa sobie czy jajco jest/nie jest SMP.

oki teraz do rzeczy.
podsyłam małego patcha który dodaje taką rzecz w pine:
a) sprawdza czy istnieje zmienna powłoki $MAIL. Jeśli istnieje to traktuje
ją jako mailboxa && koniec mieszania 
b) jeśli nie istnieje zmienna $MAIL to sprawdza czy ma prawo do czytania
$HOME/Mailbox. Jeśli ma to to traktuje jako mailboxa && koniec mieszania
c) jeśli nie ma takiego pliku lub nie ma praw do jego czytania
ustawia sobie, że mailbox jest w /var/spool/mail/$USER i tyle.
(wogóle to w specu powinno być make slx a nie make lnx (make slx i nie trzeba
żadnych patchy dodających -lcrypt ... jak zwykle nie chciało się doców czytać ;))

Mam nadzieję, że taki sposób szukania mailboxa zapewni, że zarówno pine jak
i imapd będą działały z oboma systemami trzymania mailboxów 
(/var/spool/mail i $HOME/Mailbox). Problemy mogą być wtedy gdy zmienna MAIL
wskazuje na jakieś głupoty (może dodać sprawdzanie czy ma prawo czytania
pliku wskazywanego przez $MAIL ? - z drugiej strony nie widzę możliwości 
przypadkowego spaprania się/niespodziewanego pojawienia złej zmiennej MAIL).

3) procmaila niestety nie da się tak prosto przerobić :( 
-/*#define SYSTEM_MBOX  "$HOME/.mail"   /* uncomment and/or change if the
+#define SYSTEM_MBOX    "$HOME/Mailbox" /* uncomment and/or change if the
Samo to niestety nie działa ... W dokumentacji pisze, że to ma działać ale ...
Feb 28 12:19:19 admin postfix/local[3779]: 74A2E2E03E: to=<root w misiek.eu.org>,
relay=local, delay=1, status=bounced (can't create user output file. Command
output: procmail: Couldn't create "//Mailbox" )

Osobiście wolałbym inne rozwiązanie - procmail czytał by
/etc/sysconfig/system i tamtejszą zmienną HOME_MAIL (jeśli "yes" lub "tak"
to skrzynka w $HOME/Mailbox w przeciwnym wypadku /var/spool...).

Zapomniałem napisać o /etc/sysconfig/system. IMHO ten plik powinien zawierać
różne takie zmienne dotyczące ustaień systemu np. zmienną o podstawowej powłoce
czy właśnie HOME_MAIL informującą o tym gdzie znajduje się poczta.

rpm z postfixem w wersji release 3 zawiera w sobie /etc/profile.d/mail.sh
który wygląda tak:
HOME_MAIL=
if [ -r /etc/sysconfig/system ]; then
. /etc/sysconfig/system
fi
if [ "$HOME_MAIL" == "yes" ] || [ "$HOME_MAIL" == "tak" ]; then
MAIL=$HOME/Mailbox
else
MAIL=/var/spool/mail/$USER
fi
MAILDROP=$MAIL (to chyba potrzebne jest qmailowi .. coś z "drop" o ile się nie mylę :)
# things
touch $MAIL
unset HOME_MAIL
# export variables ...
export MAIL MAILDROP

Tyle.

PS. Do poprawienia zostały: procmail, qpopper, qpopper6
PS2. W takim wypadku /var/spool/mail nie może należeć do filesystemu, a tylko
do MTA go wymagających (jak narazie sendmail, zmailer).
PS3. Postfix ma ustawione by default dostarczanie poczty do $HOME/Mailbox ale
ponieważ przeważają głosy za tym rozwiązaniem ..
PS4. Rozdrabnianie się na /var/spool/mail/$USER, $HOME/Mailbox, $HOME/Maildir/
to już przesada więc IMHO powinniśmy zostać tylko przy pierwszych dwóch.
PS5. patch do pine może źle działać jako, że dopiero się uczę C :>

-- 
 _____   __     ____
\  _  \ \  \   \    \   arkadiusz miśkiewicz http://www.misiek.eu.org
|   __/ |  |__ |  |  |   system administrator  @zsz2.starachowice.pl
/__/    /____/ /____/     misiek w pld.org.pl             cron w irc.pl
http://www.pld.org.pl          *polish linux distribution team*
-------------- następna część ---------
Załącznik, który nie był tekstem został usunięty...
Name: pine4.05.home-mailbox.diff
Type: application/x-diff
Size: 949 bytes
Desc: nie znany
Url : /mailman/pipermail/pld-devel-pl/attachments/19990301/7870a45d/pine4.05.home-mailbox.bin


Więcej informacji o liście dyskusyjnej pld-devel-pl