Abgelegt unter: Computer
Ich hatte die Idee auf meinem Rootserver, der mit Debian Etch 4.0 läuft, einen Jabber-Server aufzusetzen. Es gibt dort verschiedene Möglichkeiten, ich hab mich für den sehr ausgereiften ejabberd entschieden.
Jabber ist ja schön und gut, für die Übergangszeit wollte ich aber gerne noch meine alten ICQ-Kontakte weiter nutzen können. Anstatt einen Multiprotokoll-Chat-Client zu nutzen habe ich mich für die (technisch anspruchsvollere) Lösung entschieden einen sogenannten ICQ-Transport zu verwenden. Also eine Erweiterung des ejabberd-Servers, mit dem der Server auch mit der ICQ-Infrastruktur kommunizieren kann.
Dafür gibt es das unter Debian das fertige Paket pyicqt. Leider ist es nur unter lenny zu finden, bei der Stable Version etch ist es nicht vorhanden. Das Problem hatten auch andere, z.B. im die-welt.net Blog , Zhenech und Lueri.
Das Paket aus lenny ließ sich nicht installieren, da die Abhängigkeiten nicht gestimmt haben.
Depends: python, python-support (>= 0.7.1), lsb-base (>= 3.0-6), python-twisted (>= 2.0.0), python-twisted-web (>= 0.5.0), python-twisted-words (>= 0.1.0), python-crypto, adduser
Das Problem liegt am python-support, Version 0.7.1 ist nicht für etch verfügbar. Nach Anpassen der DEBIAN/control Abhängigkeiten im Paket und Neubauen mit einem netten Skript
#!/bin/bash if [[ -z "$1" ]]; then echo "Syntax: $0 debfile" exit 1 fi DEBFILE="$1" TMPDIR=`mktemp -d /tmp/deb.XXXXXXXXXX` || exit 1 OUTPUT=`basename "$DEBFILE" .deb`.modfied.deb if [[ -e "$OUTPUT" ]]; then echo "$OUTPUT exists." rm -r "$TMPDIR" exit 1 fi dpkg-deb -x "$DEBFILE" "$TMPDIR" dpkg-deb --control "$DEBFILE" "$TMPDIR"/DEBIAN if [[ ! -e "$TMPDIR"/DEBIAN/control ]]; then echo DEBIAN/control not found. rm -r "$TMPDIR" exit 1 fi CONTROL="$TMPDIR"/DEBIAN/control MOD=`stat -c "%y" "$CONTROL"` vi "$CONTROL" if [[ "$MOD" == `stat -c "%y" "$CONTROL"` ]]; then echo Not modfied. else echo Building new deb... dpkg -b "$TMPDIR" "$OUTPUT" fi rm -r "$TMPDIR"
mit folgenden Abhängigkeiten:
Depends: python, python-support (>= 0.5.1), lsb-base (>= 3.0-6), python-twisted (>= 2.0.0), python-twisted-web (>= 0.5.0), python-twisted-words (>= 0.1.0), python-crypto, adduser
hatte Erfolg. Es funktioniert einwandfrei mit python-support Version 0.5.1
Das fertige Paket stelle ich hier auch zum Download:
Installation mit
dpkg -i pyicqt_08b-5_all.modfied.deb
Das wars.I planned to install a Jabber Server on my rootserver running Debian Etch. Having several options I decided to use ejabberd.
Jabber is fine but I would still like to contact my ICQ friends in the transition time. Despite using a multiprotocol chat client I decided to use a so-called ICQ transport. This is an extension to the ejabberd-servers, which enables it to communicate with the ICQ infrastructure.
Debian provides a pyicqt package, unfortunately only available under lenny not etch.
The lenny package didn’t install because of missing dependencies.
Depends: python, python-support (>= 0.7.1), lsb-base (>= 3.0-6), python-twisted (>= 2.0.0), python-twisted-web (>= 0.5.0), python-twisted-words (>= 0.1.0), python-crypto, adduser
The one to blame was python-support. Only available up to version 0.5.1 on etch. After some tweaking in DEBIAN/control I rebuilt it with this nice script
#!/bin/bash if [[ -z "$1" ]]; then echo "Syntax: $0 debfile" exit 1 fi DEBFILE="$1" TMPDIR=`mktemp -d /tmp/deb.XXXXXXXXXX` || exit 1 OUTPUT=`basename "$DEBFILE" .deb`.modfied.deb if [[ -e "$OUTPUT" ]]; then echo "$OUTPUT exists." rm -r "$TMPDIR" exit 1 fi dpkg-deb -x "$DEBFILE" "$TMPDIR" dpkg-deb --control "$DEBFILE" "$TMPDIR"/DEBIAN if [[ ! -e "$TMPDIR"/DEBIAN/control ]]; then echo DEBIAN/control not found. rm -r "$TMPDIR" exit 1 fi CONTROL="$TMPDIR"/DEBIAN/control MOD=`stat -c "%y" "$CONTROL"` vi "$CONTROL" if [[ "$MOD" == `stat -c "%y" "$CONTROL"` ]]; then echo Not modfied. else echo Building new deb... dpkg -b "$TMPDIR" "$OUTPUT" fi rm -r "$TMPDIR"
and the following dependencies:
Depends: python, python-support (>= 0.5.1), lsb-base (>= 3.0-6), python-twisted (>= 2.0.0), python-twisted-web (>= 0.5.0), python-twisted-words (>= 0.1.0), python-crypto, adduser
This made it. python-support 0.7.1 is not needed for proper function.
The modfied package is available for download here:
Just install it with
dpkg -i pyicqt_08b-5_all.modfied.deb
Thats it.
4 Kommentare bisher • RSS-Feed für Kommentare • TrackBack URI
Hinterlasse deinen Kommentar!
Hey! You rocked my jabber server, thank you!
Rob
Danke für das Paket
Wenn jetzt noch jemand eine idee hätte, wie man den Transport so konfiguriert, dass ihn nur User des eigenen Servers nutzen können wäre es perfekt
In der ejabberd.cfg im ICQ-Transport
“{access, all}” durch “{access, local}” ersetzen.
[...] des schoenen Jabberpakets von hier spricht mein Jabber-Server jetzt auch [...]