NAME
pkg register
—
register a package into the local
package database
SYNOPSIS
pkg register |
[-dlt ] [-f
plist-file] -m
metadatadir -i
input-path |
pkg register |
[-dlt ] -M
metadatafile |
pkg register |
[--{debug,legacy,test} ]
[--relocate location]
[--plist plist-file]
--metadata metadatadir
--root input-path |
pkg register |
[--{debug,legacy,test} ]
[--relocate location]
--manifest metadatafile |
DESCRIPTION
pkg register
is used for registering a package into the
local package database.
pkg register
assembles a full set of
package metadata from various possible inputs, and writes the metadata into
the package registry database. This is one of the final steps when
installing software from ports: the package files are installed into the
filesystem, and then pkg register
is called to
record what was installed into the package database.
pkg register
can derive package metadata
from a number of different sources:
- The package manifest
- The metadata directory
- Direct analysis of files installed by the package
The package manifest is a UCL
format
listing of package metadata. It can contain all of the necessary metadata
needed by the package, but the more usual approach is to provide selected
items via the manifest, and fill in the rest, either from legacy files such
as pkg-plist, +DESC,
+DISPLAY or +MESSAGE which are
optional and mostly located in the metadatadir given
as the argument to the -m
option.
Other information about shared library requirements and the packages necessary to provide them may be obtained by direct analysis of the files installed by the package. File checksums may be left blank in the input metadata: all checksums will be recalculated from the installed or staged files overwriting the input. This is the mechanism currently used when installing software directly from the ports tree, as it provides reasonable backwards compatibility with the old style pkg_add(1) command.
Reading in a complete and comprehensive manifest from one file is a simpler alternative, but requires all the metadata to have been assembled beforehand.
Direct analysis of the installed files can be suppressed by use of
the -t
option. This is intended for testing the
functionality of
pkg(8) itself, and should not be routinely used.
OPTIONS
The following options are supported by pkg
register
:
-A
,--automatic
- Mark the package to be automatically removed if no other packages depend on it. For more information please refer to pkg-autoremove(8)
-d
,--debug
- Enable debugging output.
-f
plist-file,--plist
plist-file- Specifies a pkg-plist style packing list file.
-i
input-path,--root
input-path- Specifies the package input path or staging directory.
-l
,--legacy
- Tells
pkg register
to generate an old-style package registry entry in a sub-directory of $PKG_DBDIR rather than updating the local.sqlite database. -M
manifest,--manifest
manifest- Specifies the package manifest file. Use of this option means that the
only file which will be used as a source of package metadata is the named
manifest file. The
-M
option is mutually exclusive with-m
. -m
metadatadir,--metadata
metadatadir- Specifies the metadata directory to use when registering the package. This
directory will hold the package manifest, and optionally may contain a
number of other old-style metadata input files. The
-m
option is mutually exclusive with-M
. -t
,--test
- Enable testing mode. This allows
pkg register
to update the package database without performing any of the usual analyses of files installed by the package. This option should only be used with caution, and preferably only for the intended purpose of performing regression tests on pkg(8) itself. --relocate
location- Annotates the package as having been relocated to location, which is an alternate system root. This is an experimental feature and intended for cross-architecture package management. There is no corresponding single letter option. (DEPRECATED)
ENVIRONMENT
The following environment variables affect the execution of
pkg register
. See
pkg.conf(5) for further description.
PKG_DBDIR
FILES
See pkg.conf(5).
SEE ALSO
pkg_printf(3), pkg_repos(3), pkg-repository(5), pkg.conf(5), pkg(8), pkg-add(8), pkg-annotate(8), pkg-audit(8), pkg-autoremove(8), pkg-backup(8), pkg-check(8), pkg-clean(8), pkg-config(8), pkg-convert(8), pkg-create(8), pkg-delete(8), pkg-fetch(8), pkg-info(8), pkg-install(8), pkg-lock(8), pkg-query(8), pkg-repo(8), pkg-rquery(8), pkg-search(8), pkg-set(8), pkg-shell(8), pkg-shlib(8), pkg-ssh(8), pkg-stats(8), pkg-update(8), pkg-updating(8), pkg-upgrade(8), pkg-version(8), pkg-which(8)