PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Paketierung: fest verdrahtete Verzeichnisstruktur



hippodriver
23.06.2006, 12:55
Hallo Unixfreunde!

Wie paketiere ich in Skriptsprachen geschriebene Programme, die eine vorgegebene Verzeichnisstruktur erwarten, richtig?

Um das Problem zu verdeutlichen, gehe ich hier speziell auf den Newsreader XPN (http://xpn.altervista.org/index-en.html) und dessen Paketierung fuer arch linux ein. Das Programm verfuegt nicht ueber ein setup Skript, sondern wird einfach entpackt und los geht's.
Leider erwartet es, dass sich seine Module in Verzeichnissen unterhalb des Hauptprogramms befinden.


$ ls -l /opt/xpn
drwxrwxr-x 5 root root 4096 2006-06-02 14:32 lang
drwxrwxr-x 2 root root 4096 2006-06-02 14:32 pixmaps
-rwxrwxr-x 1 root root 114117 2006-03-10 15:34 xpn.py
drwxrwxr-x 2 root root 4096 2006-06-23 11:10 xpn_src


Ich habe das Problem jetzt "geloest", indem ich alles unter /opt/xpn installiere und zum Programmstart ein Shellskript in /usr/bin ablege. Siehe dazu PKGBUILD und xpn.install. Das verstoest aber eigendlich gegen die arch linux Paketierungsrichtlinien. Danach sollen nur grosse, eigenstaendige Programme in /opt installiert werden.

Es gibt mindestens noch zwei Alternativen:
Entweder das Programm samt Unterverzeichnisse nach /usr/bin installieren,
oder die import-Anweisungen in xpn.py aendern. Die erste Moeglichkeit muellt /usr/bin zu. Die Zweite muss fuer jede Programmversion angepasst werden und setzt vorraus, dass lediglich xpn.py Module importiert. Bei komplizierteren Programmen ist das sehr aufwaendig.

Gibt es eine standardisierte Vorgehensweise fuer solche Programme? Ich habe naemlich noch einen weiteren Kandidaten (bsvc (http://www4.ncsu.edu/~bwmott/www/bsvc/)), der deutlich komplizierter ist.


Mit freundlichen Gruessen
Michael Krauss

supersucker
23.06.2006, 13:11
Genau das Gleiche hatte ich neulich bei Azureus.

Habs dann ähnlich gemacht wie du:

- Alles nach /opt verschoben
- in /usr/bin darauf verlinkt
- und das startskript angepasst

Das ist aber alles völliger Murks und IMHO echt völlig daneben von den Entwicklern.

AFAIK gibt es keine bessere Möglichkeit als das.

hippodriver
24.06.2006, 12:51
Dann bin ich ja beruhigt, oder auch nicht.
Jetzt ist der bsvc fuer Arch und Fedora dran.

Vielen Dank fuer die Antwort,
Michael Krauss