NAME

Tazpkg - Tiny autonomous zone package manager

SYNTAX

 tazpkg [command] [package|dir|pattern|list|cat|--opt] [dir|--opt]

DESCRIPTION

Tazpkg is an ultralightweight (~ 35KB) package manager to install, list, download, update or remove precompiled packages on a GNU/Linux system. Tazpkg offers commands for searching and creating packages and was created independently. The format of the packages using the *.tazpkg extension is a cpio archive containing a filesystem compressed with gzip, a receipt and an optional description. Tazpkg also manages dependencies based on package receipts. Each receipt contains all the information about a package and can also include pre and post installation functions. The same receipt is used by Tazwok to compile sources and generate a .tazpkg package.

Tazpkg is entirely built from scratch using SHell script, compatible with Bash, it runs under Ash - part of the Busybox project. Tazpkg is distributed under the free GNU license GPL V3.

COMMANDS

list

List packages installed on the system. This command displays a column list of all installed packages, It also allows you to list the categories, packages based on category and packages placed on hold. You can also use the 'search' command for a list based on a term or package name:

 # tazpkg list
 # tazpkg list cat|categories
 # tazpkg list blocked

xhtml-list

The 'xhtml-list' command can create a XHTML list of all the packages installed on the system which can be read with your preferred Web browser. It can be run as a normal user and creates a page 'installed-packages.html' in your current directory. Note that you can change the name of the generated list via the command line:

 # tazpkg xhtml-list
 # tazpkg xhtml-list list-name.html

list-mirror

List packages available on the mirror. This command will display the 'packages.list' file recharged from the mirror. If this doesn't exist, you will be asked to launch 'tazpkg recharge' as administrator (root) for a list of available packages . The --diff option is used to display the differences between the last and current list of packages:

 # tazpkg list-mirror
 # tazpkg list-mirror --diff

info

Display any information available in the receipt for the package in question - its version, category, maintainer, Web site and any dependencies (see also Tazwok for more information on receipts):

 # tazpkg info busybox

desc

Description of the package (if it exists). This command displays the 'description.txt' file of each package (a simple text file, justified to 80 characters to fit in a standard terminal):

 # tazpkg desc busybox

list-files

List all files installed with a package. This command will simply read and display the 'files.list' of each package which is automatically generated when the package is created and is also used to remove files when uninstalling a package. To list the files installed with the package bc:

 # tazpkg list-files bc

search

Search for packages by owner or package name. This command will search for the term wanted in the installed packages and the list of available packages on the mirror. To obtain the latest list of installable packages on the mirror, just run 'tazpkg recharge' before conducting a search:

 # tazpkg search gcc

search-file

The 'search-file' command allows you to search for a file among the files installed by the packages. This command is very useful to find the full path to a file and determine if a file is present on the system. Example:

 $ tazpkg search-file libnss

install

This command allows the installation of a local package with the .tazpkg extension. See 'get-install' to install a package from the internet. Note that you can force the installation via the --forced, uninstall and reinstall options or specify the root system where you want to install the packages via the -root= option:

 # tazpkg install package-1.0.tazpkg
 Or :
 # tazpkg install path/to/package-1.0.tazpkg --forced
 Or :
 # tazpkg install path/to/package-1.0.tazpkg --root=/mnt/rootfs

install-list

Install a set of packages listed in a file. This command allows you to install several packages with a single command and can also be forced:

 # tazpkg install-list my-packages.list
 # tazpkg install-list my-packages.list --forced

remove

Remove a package. You will be asked for confirmation (y/N). This command will delete all files installed with the package. To view the list of files, use the 'list-files' command followed by the name of the package. Example with the package bc:

 # tazpkg remove bc

extract

Extract a package into a directory. If you do not specify the destination directory, the package will be extracted in the current directory using the name package-version:

 # tazpkg extract package.tazpkg
 # tazpkg extract package.tazpkg target/dir

pack

The 'pack' command will create a package from a directory prepared in advance or from an unpacked package. It can also manually create a .tazpkg package (see the Tazwok documentation for the automatic creation of packages). To pack a package:

 # tazpkg pack package-version

repack

The 'repack' command allows us to recreate a package from the files on a system where it was previously installed. To repack a package:

 # tazpkg repack package

recharge

Recharge the list of available packages on the mirror. This command will download the most recent 'packages.list' of installable packages on the mirror and before starting will save the old list. Once the list is updated you can then use the 'list' and 'search' commands. To view and list the differences, you can use 'list-mirror --diff' and to view and update packages, you can 'upgrade'. To recharge the latest list of packages:

 # tazpkg recharge

upgrade

Upgrade allows you to update all installed packages available on the current mirror. Upgrading packages is an important part of system security, it helps to keep you secure with the latest updates and fixes. The SliTaz project, although tiny, provides regular updates on security and generally offers the latest versions of software. Note that this function is aimed at people with SliTaz installed on a hard drive. Updated packages in LiveCD mode will be lost on system shutdown. To upgrade:

 # tazpkg upgrade

check

The 'check' command can check dependencies on installed packages and determine whether all the files needed for the repacking of packages are present:

 # tazpkg check package

block or unblock

The 'block' and 'unblock' commands permit you to block installed package versions so that they are not maintained by an 'upgrade'. The list of packages on hold are contained in the /var/lib/tazpkg/blocked-packages.list, this file can also be edited by hand. To block or unblock a package such as Grub:

 # tazpkg block grub
 Or :
 # tazpkg unblock grub

get

Get a package from the mirror (if it exists). The downloaded package is stored in the current directory. To find the path you can use 'pwd'. To get the Grub package:

 # tazpkg get grub

get-install

Get and install a package from a mirror on the internet. The 'get-install' command begins by checking whether the package exists on the mirror and if it has been already downloaded. For a list of packages on the mirror, we must use the 'list-mirror' command. To install the package Grub:

 # tazpkg get-install grub

clean-cache

Remove *.tazpkg packages downloaded to the cache. During installation, Tazpkg keeps a copy of packages downloaded from the web. This is done to save bandwidth in case of reinstallation, but you may want to free up space on the hard drive or re-download the packages:

 # tazpkg clean-cache

setup-mirror

Setup the URL for the mirror. The 'setup-mirror' command will ask for the URL for the new mirror. You can specify multiple URLs separated by spaces. Note that you can also modify the main /var/lib/tazpkg/mirror file. The URL must point to the directory containing the 'packages.list' and packages:

 # tazpkg setup-mirror

MAINTAINER

Christophe Lincoln <pankso at slitaz.org>