PKG-UNREGISTER(8) FreeBSD System Manager's Manual PKG-UNREGISTER(8)
NAME
pkg unregister - deletes package records from the database
SYNOPSIS
pkg unregister [-fnqRy] [-Cgix] pkg-name ...
pkg unregister [-nqy] -a
pkg unregister [--{force,dry-run,quiet,recursive,yes}]
[--{case-sensitive,glob,case-insensitive,regex}]
pkg-name ...
pkg unregister [--{dry-run,quiet,yes}] --all
DESCRIPTION
pkg unregister is used for deleting installed packages from the database.
pkg unregister creates a work-list of all the installed packages matching
the package names on the command line. The list is presented to the
user. If the user confirms that they do want to remove those packages
from the db, or if the ASSUME_ALWAYS_YES configuration option is set, pkg
unregister proceeds to remove from the db the listed packages.
If the set of packages to be unregistered would leave installed packages
with unfulfilled dependencies, pkg unregister will add the packages with
unfulfilled dependencies to the list of packages to be unregistered,
unless forced to proceed without unregistering any other packages by the
-f option.
pkg unregister avoids deleting itself unless named specifically on the
command line. So, for instance, pkg unregister -a will unregister all
packages from the db except for the pkg(8) package. To force all
packages to be unregistered from the db without exception, use pkg
unregister -fa.
OPTIONS
The following options are supported by pkg unregister:
-a, --all Deletes all installed packages from the db except for pkg(8)
and cleans the database of information related to removed
packages.
-C, --case-sensitive
Make the standard or regular expression (-x) matching against
pkg-name case sensitive. This is the default, unless modified
by setting CASE_SENSITIVE_MATCH to false in pkg.conf.
-f, --force
Forces packages to be removed from the db despite leaving
unresolved dependencies. In combination with the -a or --all
flag, causes pkg(8) to be removed as well as all other
packages.
-g, --glob
Treat the package names as shell glob patterns.
-i, --case-insensitive
Make the standard or regular expression (-x) matching against
pkg-name case insensitive.
-n, --dry-run
Dry run mode. The list of packages to delete is always
printed, but no packages are actually deleted.
-q, --quiet
Force quiet output, except where -n is also used, when pkg
unregister will show the list of packages to be deleted.
-R, --recursive
Delete all packages that require the listed packages as well.
-x, --regex
Treat the package names as regular expressions according to
the "modern" or "extended" syntax of re_format(7).
-y, --yes Assume yes when asked for confirmation before package
deletion.
ENVIRONMENT
The following environment variables affect the execution of pkg
unregister. See pkg.conf(5) for further description.
DEFAULT_ALWAYS_YES
ASSUME_ALWAYS_YES
HANDLE_RC_SCRIPTS
PKG_DBDIR
CASE_SENSITIVE_MATCH
FILES
See pkg.conf(5).
SEE ALSO
pkg_checksum(3), pkg_create(3), pkg_printf(3), pkg_repo_create(3),
pkg_repos(3), pkg-keywords(5), pkg-lua-script(5), pkg-repository(5),
pkg-script(5), pkg-triggers(5), pkg.conf(5), pkg(8), pkg-add(8),
pkg-alias(8), pkg-annotate(8), pkg-audit(8), pkg-autoremove(8),
pkg-check(8), pkg-checksum(8), pkg-clean(8), pkg-config(8),
pkg-create(8), pkg-delete(8), pkg-fetch(8), pkg-help(8), pkg-info(8),
pkg-install(8), pkg-key(8), pkg-lock(8), pkg-plugins(8), pkg-query(8),
pkg-register(8), pkg-repo(8), pkg-repositories(8), pkg-rquery(8),
pkg-rwhich(8), pkg-search(8), pkg-set(8), pkg-shell(8), pkg-shlib(8),
pkg-ssh(8), pkg-stats(8), pkg-triggers(8), pkg-update(8),
pkg-updating(8), pkg-upgrade(8), pkg-version(8), pkg-which(8)
FreeBSD 15.1-STABLE-HBSD December 13, 2025 PKG-UNREGISTER(8)