Freesco, NND, CDN, EOS
http://forum.freesco.pl/

Dostęp do poczty przez www - SquirrelMail
http://forum.freesco.pl/viewtopic.php?f=24&t=8542
Strona 1 z 1

Autor:  Mis' [ poniedziałek, 15 sierpnia 2005, 10:25 ]
Tytuł:  Dostęp do poczty przez www - SquirrelMail

Jak Mac!ek kiedyś zauważył w dyskusji o tym jakie pakiety są ważniejsze: największy priorytet maja pakiety przygotowane dla siebie samego. Podążając tym odkrywczym tropem przygotowałem pakiet SquirrelMail pozwalający na dostęp do poczty za pomocą zwykłej przeglądarki stron www.

Pakiet może być przygotowany przez każdego - nie wymaga kompilacji więc nie ma konieczności instalacji narzędzi developerskich. Poniżej dwa pliki niezbędne do budowy pakietu. Aby zbudować pakiet należy:

1. stworzyć katalog /var/abs/local/squirrelmail
mkdir -p /var/abs/local/squirrelmail

2. umieścić w nim oba pliki

3. zalogować się jako root

4. zbudować pakiet poleceniem
make-nnd_pkg -ca

po zbudowaniu pakietu można go zainstalować poleceniem:
pacman -U /sciezka/nazwa_pliku

SquirrelMail do działania wymaga: Apache z obsługą php, Php, servera smtp (exim), serwera IMAP oraz perla do konfiguracji. Sama konfiguracja, przy założeniu, że server smtp jest już skonfigurowany, jest prosta i sprowadza się do odpowiedzi na kilka pytań (niestety po angielsku). Pakiet zawiera polskie locale i polski help więc nie przewiduję problemów.


#=== Plik PKGBUILD ===
: [/] [] ()
#Wersja dla NND: Mis' <michal@doriath.homeip.net>

pkgname=squirrelmail
pkgver=1.4.5
pkgrel=1nnd
pkgdesc="Webmail z obsługą IMAP i SMTP"
url="http://www.squirrelmail.org"
license="GPL"
depends=('apache' 'php' 'imap' 'smtp-server' 'perl')
makedepends=()
conflicts=()
replaces=()
backup=('/home/httpd/html/webmail/config/config.php')
install=squirrelmail.install
source=(http://heanet.dl.sourceforge.net/sourceforge/squirrelmail/$pkgname-$pkgver.tar.gz \
        http://heanet.dl.sourceforge.net/sourceforge/squirrelmail/pl_PL-1.4.5-20050713.tar.gz)
nosplit=yes
md5sums=('2e2836bd7390cbf5f81f08ee55682116' 'ee2170678766f09bf09a605399c2ae13')

build() {
#instalacja SquirrelMail
    mkdir -p $startdir/pkg/home/httpd/html
    cp -a $startdir/src/$pkgname-$pkgver $startdir/pkg/home/httpd/html
    cd $startdir/pkg/home/httpd/html
    ln -s $pkgname-$pkgver webmail
    cd webmail
    mkdir attachments
    echo "deny from all" > attachments/.htaccess
    chown -R root attachments
    chgrp -R nobody attachments
    chmod -R 730 attachments
    chmod -R 777 attachments data
    chown -R nobody data
    chmod go-w data

#Instalacja polskich locali
cp -r $startdir/src/locale/pl_PL $startdir/pkg/home/httpd/html/webmail/locale
cp -r $startdir/src/help/pl_PL $startdir/pkg/home/httpd/html/webmail/help
}



#=== Plik squirrelmail.install ===
: [/] [] ()
pre_install() {
  /bin/true
}

post_install() {

echo ""
echo "SquirrelMail został zainstalowany. "
echo "Pamiętaj aby uruchomić server IMAP: w pliku /etc/xinetd.d/imap "
echo "należy zmienić linię \"disable = yes\" na \"disable = no\" "
echo "i zrestartować xinetd (/etc/rc.d/xinetd restart)."
echo "Następnie w pliku /etc/rc.conf zmień linię IMAP=0 na IMAP=1 "
echo "i zrestartuj firewall (/etc/rc.d/iptables restart) lub w inny "
echo "sposób otwórz port 143."
echo ""
echo "Aby skonfigurować SquirrelMail w katalogu /home/httpd/html/webmail"
echo "wykonaj polecenie: perl ./conf.pl "
echo "Po poprawnym skonfigurowaniu uruchom dowolną przeglądarkę www "
echo "i połącz się z twoim serwerem (http://adres_twojego_serwera/webmail)."
echo ""

  /bin/true
}

pre_upgrade() {
  /bin/true
}

post_upgrade() {
  /bin/true
}

pre_remove() {
  /bin/true
}

post_remove() {
  /bin/true
}

op=$1
shift
$op $*



Na koniec uwaga. Pakiet powstał dziś rano więc testy ograniczyły się do wysłania 4 maili...
Proszę więc go traktować jako wersję pre-alfa. U mnie działa, ale nie daję gwarancję że zadziała u kogokolwiek innego.

EDIT.
Wprowadzam zauważone poprawki do pliku PKGBUILD oraz opisu budowy pakietu. Powyższa wersja pracuje u mnie juz kilka dni bez kłopotów.
Wszystkich, którzy podczas budowy pakietu otrzymali pakiet-devel proszę o odinstalowanie obu pakietów i przebudowanie pakietu według powyższego opisu.
Aby nie stracić konfiguracji należy zrobic backup pliku /home/httpd/html/squirrelmail-1.4.5/config/config.php. Jednocześnie zalecam dopisanie tego pliku do pacman.conf:

NoUpgrade = home/httpd/html/squirrelmail-1.4.5/config/config.php

Autor:  jamp [ poniedziałek, 15 sierpnia 2005, 13:43 ]
Tytuł: 

Przy kompilacji paczki wywala błąd:

cp: brakuj&plusmn;cy plik docelowy
Spróbuj `cp --help' dla uzyskania informacji.
/usr/bin/make_nnd_pkg: line 24: /var/abs/local/squirrelmail/pkg/home/httpd/html: is a directory
/usr/bin/make_nnd_pkg: line 27: cd: webmail: Nie ma takiego pliku ani katalogu
chmod: nie ma dostępu do `data': Nie ma takiego pliku ani katalogu
chown: nie ma dostępu do `data': Nie ma takiego pliku ani katalogu
chmod: nie ma dostępu do `data': Nie ma takiego pliku ani katalogu
cp: brakuj&plusmn;cy plik docelowy
Spróbuj `cp --help' dla uzyskania informacji.
/usr/bin/make_nnd_pkg: line 39: /var/abs/local/squirrelmail/pkg/home/httpd/html/webmail/locale: Nie ma takiego pliku ani katalogu
cp: brakuj&plusmn;cy plik docelowy
Spróbuj `cp --help' dla uzyskania informacji.
/usr/bin/make_nnd_pkg: line 41: /var/abs/local/squirrelmail/pkg/home/httpd/html/webmail/help: Nie ma takiego pliku ani katalogu

Autor:  Maciek [ poniedziałek, 15 sierpnia 2005, 14:05 ]
Tytuł: 

U mnie błędy były inne ale paczka zbudowała się i zainstalowała bez problemu. Nie jestem pewien, ale nie wystarczy chyba mieć imap, trzeba jeszcze zmienić konfigurację exima (z mbox na maildir).

Autor:  Mis' [ poniedziałek, 15 sierpnia 2005, 14:05 ]
Tytuł: 

jamp pisze:
wywala błąd:

cp: brakuj&plusmn;cy plik docelowy
Spróbuj `cp --help' dla uzyskania informacji.
/usr/bin/make_nnd_pkg: line 24: /var/abs/local/squirrelmail/pkg/home/httpd/html: is a directory


To jest najważniejsze, pozostałe błędy są konsekwencją tego.
Po pierwsze czy przepisywałeś te pliki czy zrobiłeś "copy & paste"? Jeśli przepisywałeś to sprawdź czy nie masz gdzieś jakiejś literówki czy innego błędu. Jeśli skopiowałeś to przczyną może być błąd ściągnięcia źródeł z sieci i w konsekwencji brak katalogu z wiewórką... ale wtedy prawdopodobnie dostałbyś i inne błędy. Osobiście stawiam na błąd w przepisywaniu.

Spróbuj uruchomić make_nnd_pkg -a i sprawdzić czy w katalogu pkg/home/httpd/html jest katalog squirrelmail-1.4.5 oraz symlink do niego pod nazwą webmail. Jeśli nie ma to znaczy że błąd jest w kopiowaniu rozpakowanych źrodeł do pkg
(linia: cp -a $startdir/src/$pkgname-$pkgver $startdir/pkg/home/httpd/html) lub wcześniej (sprawdż czy w src jest katalog squirrelmail-1.4.5).

Autor:  Mis' [ poniedziałek, 15 sierpnia 2005, 14:10 ]
Tytuł: 

Maciek pisze:
U mnie błędy były inne


wiesz co możesz zrobić z taką informacją? :twisted:

Maciek pisze:
Nie jestem pewien, ale nie wystarczy chyba mieć imap, trzeba jeszcze zmienić konfigurację exima (z mbox na maildir).


nie trzeba, jedno z drugim nie ma nic wspólnego

Autor:  Maciek [ poniedziałek, 15 sierpnia 2005, 14:18 ]
Tytuł: 

Błędy wysłałem ci na maila, bo tu za dużo by tego było. Exim ładuje pocztę do mboxów, wiem, że do używania couriera na Freesco trzeba było konfigurację exima zmienić, tu być może nie, sprawdzać nie będę - bo nie mam na czym...

Autor:  makog [ poniedziałek, 15 sierpnia 2005, 14:21 ]
Tytuł: 

Ja to kiedys wpakowalem reczni, bez robienia zadnej paczki, i dzialalo bez zmiany configa exima, jednyna zecz to konfiguracja samego programu i to wszystko.

Autor:  jamp [ poniedziałek, 15 sierpnia 2005, 14:39 ]
Tytuł: 

Mis' pisze:
... czy zrobiłeś "copy & paste"?

zrobiłem: "copy & paste"

Mis' pisze:
...sprawdzić czy w katalogu pkg/home/httpd/html jest katalog squirrelmail-1.4.5 oraz symlink do niego pod nazwą webmail. Jeśli nie ma to znaczy że błąd jest w kopiowaniu rozpakowanych źrodeł do pkg

sumy kontrolne ściągniętych paczek są zgodne z podanymi
katalogu squirrelmail-1.4.5 brak
symlink jest

Autor:  Mis' [ poniedziałek, 15 sierpnia 2005, 16:33 ]
Tytuł: 

Maciek pisze:
Błędy wysłałem ci na maila, bo tu za dużo by tego było.


no niestety, doriath.homeip.net ma problemy od kilkunastu godzin, obawiam się, że znów bedę musiał wymieniać "modem" - ale to chyba dopiero po powrocie. Tak, że maila na razie nie mam :-(

Podejrzewam jednak, że za błędy wziąłeś komunikaty strip'a, o braku plików/katalogów. Strip sprawdza katalogi /lib, /usr/lib, bin, /sbin, /usr/bin i /usr/sbin w poszukiwaniu plików binarnych. Jesli takich katalogów nie znajdzie (a w tym przypadku cała paczka jest w /home/httpd/html/squirrelmail-1.4.5) więc wyświetla komunikaty o braku tych katalogów. To nie błąd tylko normalne zachowanie.Nie chciałem przekierować stderr do /dev/null żeby w razie poważnego błędu nie stracić wszystkich o nim informacji.

Maciek pisze:
Exim ładuje pocztę do mboxów, wiem, że do używania couriera na Freesco trzeba było konfigurację exima zmienić, tu być może nie, sprawdzać nie będę - bo nie mam na czym...


Przez ponad 2 lata używałem wiewióry z eximem i mboxem bez problemów. Zresztą w pierwszym mailu napisałem że wysłałem 4 maile. Czyli że u mnie działa Napisałbym gdyby trzeba było poprawiać konfig exima.

Autor:  D@Ro [ poniedziałek, 15 sierpnia 2005, 16:39 ]
Tytuł: 

u mnie chodzi :D

Autor:  Mis' [ poniedziałek, 15 sierpnia 2005, 16:46 ]
Tytuł: 

jamp pisze:
Mis' pisze:
... czy zrobiłeś "copy & paste"?

zrobiłem: "copy & paste"


gdzieś jednak musiał wkraść się jakiś błąd. Sprawdź dokładnie tę linię:

cp -a $startdir/src/$pkgname-$pkgver $startdir/pkg/home/httpd/html

jeśłi jest dokładnie taka sama to zobacz czy w src masz rozpakowane źrodła (katalog squirrelmail-1.4.5) i skompresowane archiwum pod nazwą squirrelmail-1.4.5.tar.gz, przy okazji sparwdźi jaką wielkość ma to archiwum. Choć jeśli nie masz błędu sum kontrolnych to pewnie wszytko jest OK.

Autor:  jamp [ poniedziałek, 15 sierpnia 2005, 20:44 ]
Tytuł: 

Przepraszam wszystkich za zamieszanie.
Przy przenoszeniu w WINDZIE
cp -a $startdir/src/$pkgname-$pkgver ( nie było spacji ) $startdir/pkg/home/httpd/html)
Moja wina

Autor:  Mis' [ poniedziałek, 15 sierpnia 2005, 21:13 ]
Tytuł: 

jamp pisze:
Przepraszam wszystkich za zamieszanie.
Przy przenoszeniu w WINDZIE
cp -a $startdir/src/$pkgname-$pkgver ( nie było spacji ) $startdir/pkg/home/httpd/html)
Moja wina


wiesz... powinieneś już tu być ze skrzynką piwa... i to Guinnessa najlepiej...

Autor:  jamp [ poniedziałek, 15 sierpnia 2005, 21:26 ]
Tytuł: 

Mis' pisze:
wiesz... powinieneś już tu być ze skrzynką piwa... i to Guinnessa najlepiej...
Wieeeeeeeeeem :D.
Z ciekawości pytam - czy dodasz account'a do kernela i iptables'ów :?:

Autor:  czerwo [ poniedziałek, 15 sierpnia 2005, 22:09 ]
Tytuł: 

jamp z Lodzi do Warszawy mozesz ta skrzynke zawiezc ;]

Autor:  Maciek [ wtorek, 16 sierpnia 2005, 02:13 ]
Tytuł: 

W związku z tym, że Mis' napisał, iż poczta moja nie dotarła jeszcze, to wklejam moje komunikaty o błędach.
: [/] [] ()
/usr/bin/make_nnd_pkg: line 870: 28755 Naruszenie ochrony pamięci  sed -e '/^build\(\)/,/^\}$/d' <$startdir/PKGBUILD >../${pkgname}-devel/PKGBUILD
Pakiet "apache-devel" nie został znaleziony.
Pakiet "php-devel" nie został znaleziony.
Pakiet "imap-devel" nie został znaleziony.
Pakiet "smtp-server-devel" nie został znaleziony.
Pakiet "perl-devel" nie został znaleziony.

Na drugim komputerze nie było błędu o naruszeniu ochrony pamięci. Pozostałem są także.
Ciekawostką jest natomiast to, że w obydwu przypadkach zbudował mi się dodatkowo pakiet devel, zawierający ważny katalog include, bez niego wiewióra nie będzie działać. Obydwa moje doświadczenia przeprowadziłem na standardowych systemach bez pakietów devel.

Autor:  Mis' [ wtorek, 16 sierpnia 2005, 02:26 ]
Tytuł: 

Maciek pisze:
W związku z tym, że Mis' napisał, iż poczta moja nie dotarła jeszcze,


dotarła, ale odpisać mi się już nie udało... jutro lub pojutrze ma być monter.

Maciek pisze:
to wklejam moje komunikaty o błędach.
: [/] [] ()
/usr/bin/make_nnd_pkg: line 870: 28755 Naruszenie ochrony pamięci  sed -e '/^build\(\)/,/^\}$/d' <$startdir/PKGBUILD >../${pkgname}-devel/PKGBUILD
Pakiet "apache-devel" nie został znaleziony.
Pakiet "php-devel" nie został znaleziony.
Pakiet "imap-devel" nie został znaleziony.
Pakiet "smtp-server-devel" nie został znaleziony.
Pakiet "perl-devel" nie został znaleziony.

Na drugim komputerze nie było błędu o naruszeniu ochrony pamięci. Pozostałem są także.
Ciekawostką jest natomiast to, że w obydwu przypadkach zbudował mi się dodatkowo pakiet devel, zawierający ważny katalog include, bez niego wiewióra nie będzie działać. Obydwa moje doświadczenia przeprowadziłem na standardowych systemach bez pakietów devel.


Mój błąd, przepraszam. Oczywiście ten pakiet nie może być podzielony więc konieczne jest dodanie do pliku PKGBUILD linii:

nosplit=yes

Zapomniałem o tym. co do reszty blędow to bez dostępu do komputera z NND niestety nie jestem w stanie nic powiedzieć. Poprosze tylko o wersję pacmana i informację czy plik make_nnd_pkg był modyfikowany lokalnie czy pochodzi wprost z pakietu.
Naruszenie ochrony pamięci jak widac jest zależne od maszyny na której wykonywana jest operacja więc tu też nic mądrego nie wymyślimy.

Strona 1 z 1 Strefa czasowa UTC+2godz.
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/