PKG_MKLOCATEDB(1) | General Commands Manual | PKG_MKLOCATEDB(1)

# NAME

`pkg_mklocatedb` — create a locate database for packages

# SYNOPSIS

`pkg_mklocatedb` | [`-aKnPqu`] [`-d` repository] [`-p` portsdir] [pkg-name ...]

# DESCRIPTION

The `pkg_mklocatedb` command is used to create a file database for binary packages, which can be searched using the locate(1) utility.

Entries created for each package will have the package name prepended: `kdelibs-3.3.2p2:/usr/local/bin/meinproc`.

If the `-p` option is used, and `SUBDIRLIST` is not defined, `pkg_mklocatedb` will retrieve all package entries from the ports tree.

If the `-p` option is used together with `SUBDIRLIST`, `pkg_mklocatedb` will retrieve the package entries listed in `SUBDIRLIST` from the ports tree.

Otherwise, `pkg_mklocatedb` will build database entries for every file object for each pkg-name given on the command line, or for every package in a repository specified as the `-d` option. If no package name is given, `pkg_mklocatedb` will build database entries for all currently installed packages.

By default (unless standard output is a terminal), the list of names is fed to /usr/libexec/locate.mklocatedb and the end result should be redirected to a file.

The options are as follows:

`-a`
  Prepend file names with pkgpath information and package names.
`-d` repository
  Scan directory repository for packages.
`-K`
  Include keyword in each object full name. This is more accurate, but defeats locate(1) compression.

  However, note that some meta annotations always make it into the database: `@*exec*`, `@define-tag`, `@newgroup`, `@newuser`, `@option` no-default-conflict and `@tag`.

`-n`
  Do not pipe output to /usr/libexec/locate.mklocatedb (default if standard output is a terminal).
`-P`
  Prepend file names with pkgpath information instead of package name.
`-p` portsdir
  Retrieve packing-lists from the ports tree instead of binary packages.
`-q`
  Be quiet: do not report every package processed to standard error.
`-u`
  Update an existing list. The list must come from standard input, and contain pkgpath information for items to be replaced.

# SEE ALSO

locate(1), pkg_info(1)

# AUTHORS

Marc Espie

November 26, 2021 | Debian