Packages: Difference between revisions
Merge-delete (talk | contribs) No edit summary |
|||
Line 1: | Line 1: | ||
Slackware's package management system utilizes .tgz/.txz tarballs as its standard package format. These tarballs are tar.gz/tar.xz archives which contain Slackware built binaries, support files, a description file and installation script. Although they can be unzipped and untarred like a normal archive, they are (usually) binary-only packages intended to be installed through Slackware's provided package management tools. | Slackware's package management system utilizes .tgz/.txz tarballs as its standard package format. These tarballs are tar.gz/tar.xz archives which contain Slackware built binaries, support files, a description file and installation script. Although they can be unzipped and untarred like a normal archive, they are (usually) binary-only packages intended to be installed through Slackware's provided package management tools. | ||
Information about a package is stored in two ways, in the filename of the package and a description file inside that package. | Information about a package is stored in two ways, in the filename of the package and a description file inside that package. |
Latest revision as of 14:13, 9 December 2011
Slackware's package management system utilizes .tgz/.txz tarballs as its standard package format. These tarballs are tar.gz/tar.xz archives which contain Slackware built binaries, support files, a description file and installation script. Although they can be unzipped and untarred like a normal archive, they are (usually) binary-only packages intended to be installed through Slackware's provided package management tools.
Information about a package is stored in two ways, in the filename of the package and a description file inside that package.
Package Tools
See the respective manual pages for more information on each of the following commands.
pkgtool
installpkg
removepkg
explodepkg
makepkg
upgradepkg
Slackware Package Layout
A typical Slackware package is laid out as such:
./ ./install/doinst.sh ./install/slack-desc [./usr/bin] [./usr/lib] [...]
The install directory as well as the files within it will be deleted after the installation of the package to the root install directory (usually '/'). The install directory is not necessarily required for the most basic packages but allows additional functionality: slack-desc contains the package description, and doinst.sh contains post-installation instructions such as creating symbolic links.
Every other file within the package is simply untarred (extracted) to the root directory. Most of these files are in standard locations.
There are other special files within packages:
usr/doc/<appname><version> All documentation included with the package (such as README, INSTALL, ChangeLog, docs/, etcetera) should be placed in this directory. Some of the files in this directory should be manually copied from the source archive, since Makefiles usually don't copy these documentation files to the package build tree.