SliTaz GNU/Linux official and community documentation wiki.
Translations of this page:

Before starting on making slitaz packages, we'll begin with a quick overview of how a package installs programs:

When you click on a package to install (in tazweb), you tell the system to automatically download the package to /var/lib/tazpkg/5.0/packages/. It then automatically un-cpio's itself to ~/fs/ (or /home/tux/fs/ when using the absolute path).

Then, it automatically puts all of the files you included in /fs/ into the correct place on the hard disk, overwriting the old files bearing the same name, … It knows where to place them as you use the exact same path of the files as the path the files are installed to on your harddisk (so if for instance, you want the package to copy a file called to /usr/share, put into /fs/usr/share/ in the package).

After that, it executes the compile rules, genpkg rules, … (assuming you packed it with tazwok; if packed with tazpkg it won't call these rules !)

So, with this, we're all ready now to make a tazpackage ourselves:

compile_rules() {



genpkg_rules() {



post_remove() {



find . -type f -print > ../files.list 
find . -type l -print >> ../files.list
cd ..; sed -i s/'^.'/''/ files.list 

Alternatively, you can also make the package by using the tazpkg pack command; to see what that does exactly, see . In general it will make the md5 checksum and the filelist, and update the filesizes declared in the receipt. If you have already made the description and receipt it will also make the finished tazpackage in /home/tux (make sure you also pre-made the fs folder with the files therein for it to make a working tazpackage). Note that the wok too can be of use here (see

Once you have made a package, you can put it on a personal ftp site/webspace, or you can upload it to the slitaz package database using mercurial. See on how to do this.

Also note you may also want to read:

en/guides/makingtazpackages.txt · Last modified: 2016/01/28 15:07 by brianperry