Vor der Beschreibung der Erzeugung von Slitaz-Paketen ein kurzer Überblick darüber, wie ein Paket installiert wird: Wenn (in tazpanel) ein zu installierendes Paket ausgewählt und die Installation gestartet wird, wird das Paket aus dem Depot in das Verzeichnis /var/lib/tazpkg/5.0/packages transferiert und nach ~/fs entpackt. Dann werden alle Dateien aus dem Verzeichnis fs an die richtige Stelle im Dateisystem kopiert; dabei werden alte Dateien mit demselben Namen überschrieben! Der Installationsort ergibt sich aus dem Pfadnamen unterhalb von fs. Wenn also zum Beispiel eine Datei namens foo.bar nach /usr/share im Dateisystem kopiert werden soll, so muss sie sich im Paket im Ordner fs/usr/share befinden. Danach werden die "post_install"-Regeln (wenn vorhanden) ausgeführt. Jetzt zur Erzeugung eines SliTaz-Paketes: \\ * alle benötigten Dateien und Verzeichnisse müssen in ein Verzeichnis fs kopiert werden; dies sollten nur ausführbare Programme, Bibliotheken, Kommandoprozeduren, Konfigurationsdateien oder ähnliches sein. Quellprogrammdateien, Lizenzdateien, Readmes oder ähnliches sollten dort nicht enthalten sein. Diese Dateien werden dann in ein cpio-Archiv gepackt und mit lzma komprimiert: cpio -o -H newc --quiet xz --format=lzma fs.cpio.lzma fs.cpio oder alternativ mit einem grafischen Komprimierungsprogramm (wie xarchiver, ...) * die Dateigrößenangaben des Archivs fs.cpio.lzma werden in das Rezept eingetragen (Diese findet man in PCManFm durch Rechtsklick->Eigenschaften auf die Datei). Das Rezept sollte auch die folgenden Zeilen enthalten (wobei //text// durch geeignete Kommandos zu ersetzen ist; weitere Regeln findet man bei http://doc.slitaz.org/de:cookbook:receipt): compile_rules() { //text// } genpkg_rules() { //text// } post_install() { //text// } post_remove() { //text// } * Die Datei files.list kann erzeugt werden, indem das Verzeichnis fs als Arbeitsverzeichnis eingestellt wird und dann die folgenden Kommandos eingegeben werden: find . -type f -print > ../files.list find . -type l -print >> ../files.list cd .. sed -i s/'^.'/''/files.list * Eine md5-Datei kann mit dem Kommando "md5sum //filename//" erzeugt werden, oder mit einem anderen Programm (unter Windows kann dies winmd5, FCIV, certutil, hashtab, hashcheck, ... sein) * Die Datei fs.cpio.lzma wird zusammen mit dem Rezept, files.list, md5sum und description.txt in ein cpio-Archiv gepackt, das //filename//.tazpkg benannt wird. Dazu kann das folgende Kommando verwendet werden: cpio -oH < fs.cpio.lzma receipt files.list md5sum description.txt > //filename//.tazpkg oder ein grafisches Komprimierungsprogramm (wie xarchiver, ...). Alternativ kann ein Paket auch mit dem Kommando tazpkg pack erzeugt werden. Was dabei geschieht, ist in /usr/libexec/tazpkg/pack ersichtlich. Im Allgemeinen wird die md5-Prüfsumme und die Dateiliste erstellt und die im Rezept angegebenen Dateigrößen werden aktualisiert. Wenn die Beschreibung und das Rezept bereits erstellt wurden, wird auch das fertige SliTaz-Paket im Arbeitsverzeichnis erstellt (dazu muss das Verzeichnis fs wie oben beschrieben mit den benötigten Dateien vorhanden sein). Auch ein "Wok" kann hierzu von Nutzen sein \\ (siehe http://doc.slitaz.org/de:cookbook:wok). Wenn ein Paket erstellt wurde, kann es in einer persönlichen "website" zur Verfügung gestellt werden oder es kann mit mercurial in die SliTaz-Paketdatenbank eingebracht werden. \\ Dazu mehr bei http://doc.slitaz.org/de:cookbook:wok. Weitere Informationen unter: \\ http://hg.slitaz.org/tazpkg/raw-file/tip/doc/tazpkg.de.html \\ http://hg.slitaz.org/cookutils/raw-file/tip/doc/cookutils.de.html ---- \\ ^ Qualitätsbericht ^^ |Qualität | | |Überprüfung | muss überprüft werden | |Priorität | mittel | |Probleme | Fehler im englischen Original | |Verbesserungsvorschläge | Die Paketerzeugung mit tazpkg und cook in den Vordergrund stellen | \\ ----