4.10 Package Management

Package management is handled by pacman; it is invoked from the shell by typing its name, pacman. Use pacman to install and remove packages, and to query the local database of installed packages and files. When the network is up pacman can query, download and install packages from appropriate repositories. http://ttylinux.net/ currently is the only known ttylinux package repository. pacman also can make ttylinux packages, which may be handy as pacman is a bash script that can run on any Linux system.

ttylinux packages are tar archives compressed with bzip2. All the packages that come with the ttylinux distribution are available in the CD-ROM ISO image; this is for reinstalling any packages that may have been removed from a ttylinux system.

A list of hostnames to be used as ttylinux repositories may be kept in file /etc/ttylinux-repo; however this file does not need to exist. A package repository hostname can be given to any pacman command that accesses a ttylinux package repository, and ttylinux.net is allways the default if no package repository is given. If /etc/ttylinux-repo exists and has hostnames in it, ttylinux.net will be search first if no package repository is given on the pacman command line. You are not likely to use the /etc/ttylinux-repo file, nor the repo option in general, as there currently is no known ttylinux package repository.

pacman uses directory /usr/share/ttylinux as a database location. In this directory, ttylinux has one file per installed package; each file lists of all the file pathnames that belong that package. pacman makes and removes these package database files as needed. Also in the /usr/share/ttylinux directory will be similar repository cache files, one each for each ttylinux repository that pacman uses.

Pacman Usage
Some of the information from "pacman -help":

Usage: pacman [option ...] operation name [name ...]

Options:
  --repo=<name>  refer to a particular external repository
  --vers=<num>   download for ttylinux version V<num>
  -v|--verbose   verbose operation

Operations:
  -h|--help          display this option summary
  -d|--download      download package files
  -e|--erase         remove packages
  -i|--install       install package files
  -m|--make          make a package
  -qa|--query-all    list all installed packages
  -qf|--query-file   show package that has file
  -ql|--query-list   list files from named package
  -qr|--query-repo   list packages in external repositiory

The pacman command line above shows a specific order for options, operations and names; however, they actually can be arraged in any order.

Options
Options can be repeated. If multiple conflicting options are given, the last one is used and the others are silently ignored. Each option applies only to some operations.

Operations
One operation must be supplied, and only one operation is allowed; all other uses of pacman display a help summary.

Package Names
There are two kinds of package names used with pacman.

Package download, installation, make and query repo operations refer to actual binary package file names. These files are tar archives compressed with bzip2.

Package erase, query all, query file and query list operations refer to package names without the CPU architecture and .tbz suffix. This shorter name conceptually refers to the package as its files are installed in various directories; it is not a name of a literal package file. With the erase and query list operations the name is given on the pacman command line. With the query all and query file operations the name is listed as output from pacman.



Subsections