Translations of this page:

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



 
de/guides/makingtazpackages.txt · Last modified: by hgt