|UPDATE-PLIST(1)||General Commands Manual||UPDATE-PLIST(1)|
update-plistis a helper script for the target update-plist in bsd.port.mk(5).
Along with options and environment variables,
update-plist uses the exact same options and
arguments that would be passed to
pkg_create(1) normally takes one
single actual pkgname, there is no ambiguity in
The first set of arguments correspond to the ‘default package’.
PORTS_PRIVSEP is in effect,
update-plist is run as root, but will switch back to
FAKE_TREE_OWNER for scanning the installation
directory and to
PORTS_TREE_OWNER for writing
update-plist may need to know the
PORTSDIR location in order to scan dependencies to
trim common directories.
The options are as follows:
update-plist assumes all multi-packages
live under the same installation directory
-B option), and it will scan all paths under that
directory and dispatch them into corresponding subpackages, using the
As far as possible, everything that looks like actual files will be sorted in alphabetical order, after variable substitutions.
update-plist will warn for a lot of
conditions, such as pre-formatted manpages, or files ending in pre-patch
suffixes. Adding a
intentional<reason> will silence the warning.
@man man/ja_JP.EUC/cat1/kakasi.0 @comment intentional: mandoc does't handle this locale
update-plist will also scan dependencies,
in order to strip common directories.
If the pkglocatedb package is installed,
update-plist will make use of it and report
unregistered conflicts. This can be disabled with
as it is time-consuming.
SUBST_VARS variables will be
back-substituted into the regenerated packing-lists, starting from the
longest variable values.
update-plist tries to keep
existing substitutions. It does not add new substitutions on
BUILD_PKGPATH, it does only substitute
share/doc/pkg-readmes and it currently does not add
new substitutions for
Specific items such as shared libraries or binaries will gain
annotations and special handling, for instance
Existing packing-lists are scanned for non-file entries, such as
exec markers. Those will be inserted into the
updated packing-lists at the most likely position.
update-plist will first write files as
<file>.new, then it will display which files
are new and which files have changed. If old packing-lists already exist, it
will move old packing lists into <file>.orig
unless these already exist, then move the new files into position.
update-plistmight be the most complicated piece of the ports infrastructure. There will always be cases that require manual intervention. Since fake is now run as non-root,
update-plistcan't figure out users and groups for new files, so these should be considered carefully.
|June 26, 2018||OpenBSD-current|