PKGTOOL

NAME

pkgtool − software package maintenance tool.

SYNOPSIS

pkgtool [options] [command [arguments]]

DESCRIPTION

pkgtool is the standard package maintenance tool provided with the Slackware Linux distribution. It allows the user to install, upgrade, remove, or view software packages through an interactive menu system. Pkgtool can also be used to re-run the menu-driven scripts normally executed at the end of a Slackware installation. This is useful for doing basic reconfiguration (like changing the mouse type).

pkgtool can be used in two modes: menu based and command line. Menus are created with dialog(1)

There is also a third mode which is used by the installation program. It can be invoked with pkgtool setup source root_device This feature is not properly documented yet.

OPTIONS

−R dir, −−root dir

Use different filesystem root directory. Defaults to /. Instead of −−root you can use the ROOT environment variable. If both are speficied, −−root overrides $ROOT.

−q, −−quiet

Suppress messages except the wget progress bar. This can only be used in command line mode.

COMMANDS

Arguments shown in [brackets] are optional. The default repository is the first repository in the alphabetical order.

GENERAL COMMANDS (NON-INTERACTIVE)

check

Checks package database integrity and reports errors found. Pkgtool checks for valid package names, packages left from failed upgradepkg, orphan installation scripts which do not have a matching package installed.

purge

Empties the cache directory containing the downloaded packages. By default the cache directory is /var/cache/packages. See section FILES for config file options.

tools

Check that the required helper applications are installed and show the results.

INTERACTIVE REPOSITORY COMMANDS
menu
[reponame] search_regex

Abbreviation: m
Search specified repository for package names matching the search_regex. Results are shown in a dialog based menu where you can select packages to be installed. This is equivalent to selecting Repositories −> reponame −> CustomName.

menu−desc [reponame] search_regex

Abbreviation: md
Search specified repository for packages whose description matches regular expression search_regex. Results are shown in a dialog based menu where you can select packages to be installed. This is equivalent to selecting Repositories −> reponame −> CustomDesc.

menu−updates [reponame]

Abbreviation: mu
Show all packages having a different version available in specified repository. You can select which packages to install from a dialog based menu. This is equivalent to selecting Repositories −> reponame −> Updates. Note that this command does not automatically update the repository database; use update for that.

menu−dir directory

Abbreviation: d
Show a dialog based menu of the packages in the specified directory. You will be prompted for how to filter the package list. This is equivalent to selecting Directory from the main menu.

NON-INTERACTIVE REPOSITORY COMMANDS

list

Abbreviation: l

Lists repository names and their addresses.

add reponame address

Adds a new repository. reponame can contain up to 16 characters which can be letters or numbers or underscores. address can be absolute path (begins with a slash) or HTTP or FTP URL (beginning with http:// or ftp://). The speficied directory must contain the properly formatted files FILELIST.TXT and PACKAGES.TXT. The repository is spitted in disksets if it contains packages in directory slackware/a. Otherwise all the packages will be shown in a one list. See slackrepo(1) for information about creating your own repositories.

delete reponame

Deletes a repository. As with all the other non-interactive commands, no confirmation is asked.

rename reponame newname

Renames a repository. See command add for limitations of repository name.

address reponame newaddress

Change repository address to newaddress. See command add for information about address format.

update [reponame]

Abbreviation: u
Update repository database. This means downloading FILELIST.TXT and PACKAGES.TXT from repository address and processing them to them repository database files.

search [reponame] search_regex

Abbreviation: s
List package names one per line from repository reponame matching regular expression search_regex. The installed package version is shown in parenthesis.

search−desc [reponame] search_regex

Abbreviation: sd
List package names one per line from repository reponame whose description matches regular expression search_regex. The installed package version is shown in parenthesis.

install [reponame] package_name

Abbreviation: i
Install a package. package_name can be package basename (foo-bar), basename with version (foo-bar-0.12), or full package name (foo-bar-0.12-i486-1barney).

list−updates [reponame]

Abbreviation: lu
List packages that have a different version available than those that are currently installed.

install−updates [reponame]

Abbreviation: iu
Install all the packages that have a different version available than those that are currently installed. Use list−updates to view the list of packages that this command would update. As with all the other non-interactive commands, no confirmation is asked. Use with care!

CONFIGURATION FILE

/etc/pkgtools/config is the configuration file for pkgtool and other tools in the pkgtools package. Currently supported options and their default values are:
PACKAGE_CACHE_DIR="/var/cache/packages"

Directory to store downloaded packages. If directory does not exist or is a non-directory, it is silently deleted (rm −rf) and then created. For security reasons (avoiding symlink attacks) this directory should be writeable only by trusted people.

KEEP_DOWNLOADED=1

If you want packages installed from the Internet to be removed after installation, change this to KEEP_DOWNLOADED=0. By default downloaded packages are left to the package cache directory.

WGET_FLAGS="−−passive−ftp"

Parameters to pass to wget. See man page wget(1) for more information.

BLACKLIST_FILE="/etc/pkgtools/blacklist"

The file containing the list of the blacklisted packages. If the specified file does not exists this option is silently ignored. The blacklist file should contain one package basename (not fullname) per line. All invalid lines are silently ignored. Note that blacklist is only used by pkgtool, not installpkg or upgradepkg.

VERIFY_GPG_DOWNLOADED=0

When this option is turned on (default: off), no downloaded package without a valid signature will be installed with installpkg or upgradepkg unless −−no−gpg command line option is used. Note that this option is used only by installpkg and upgradepkg; pkgtool has its own per repository configuration for GPG usage. The trusted keys should be in /root/.gnupg/pubring.gpg.

VERIFY_GPG_LOCAL=0

When this option is turned on (default: off), no local package (i.e. no HTTP or FTP URL) without a valid signature is installed. Note that this option is used only by installpkg and upgradepkg; pkgtool has its own per repository configuration for GPG usage.

AUTHORS

Original by Patrick J. Volkerding <volkerdi at slackware.com>

Revised for Tukaani Linux by Lasse Collin <lasse.collin at tukaani.org> and Ville Koskinen <w−ber at iki.fi>

SEE ALSO

pkgtool(8), installpkg(8), removepkg(8), upgradepkg(8), viewpkg(1), explodepkg(1), makepkg(1), convertpkg(1), slackrepo(1), wget(1)