.\" .\" FreeBSD pkg - a next generation package for the installation and maintenance .\" of non-core utilities. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" .\" @(#)pkg.8 .\" .Dd August 27, 2025 .Dt PKG-SET 8 .Os .Sh NAME .Nm "pkg set" .Nd modify information in the installed database .Sh SYNOPSIS .Nm .Op Fl a .Op Fl A Ar 0|1 .Op Fl n Ar oldname:newname .Op Fl o Ar oldorigin:neworigin .Op Fl p .Op Fl v Ar 0|1 .Op Fl y .Op Fl Cgix .Ar pkg-name .Pp .Nm .Op Cm --all .Op Cm --automatic Ar 0|1 .Op Cm --change-name Ar oldname:newname .Op Cm --change-origin Ar oldorigin:neworigin .Op Cm --partial .Op Cm --yes .Op Fl v Ar 0|1 .Op Cm --{case-sensitive,glob,case-insensitive,regex} .Ar pkg-name .Sh DESCRIPTION .Nm is used to modify information concerning installed packages. .Nm should always be used with caution. .Sh OPTIONS The following options are supported by .Nm : .Bl -tag -width automatic .It Fl A Ar 01 , Cm --automatic Ar 01 Set automatic flag for the package: 0 is not automatic, 1 is automatic. This affects the operation of .Xr pkg-autoremove 8 . .It Fl a , Cm --all Match all installed packages. .It Fl C , Cm --case-sensitive Make the standard or the regular expression .Fl ( x ) matching against .Ar pkg-name case sensitive. .It Fl g , Cm --glob Match .Ar pkg-name as a globbing expression. .It Fl i , Cm --case-insensitive Make the standard or regular expression .Fl ( x ) matching against .Ar pkg-name case insensitive. This is the default, unless modified by setting .Ev CASE_SENSITIVE_MATCH to true in .Pa pkg.conf . .It Fl n Ar oldname:newname , Cm --change-name Ar oldname:newname Change the package name of a given dependency from .Ar oldname to .Ar newname . .It Fl o Ar oldorigin:neworigin , Cm --change-origin Ar oldorigin:neworigin Change the port origin of a given dependency from .Ar oldorigin to .Ar neworigin . This corresponds to the port directory that the package originated from. Typically, this is only needed for upgrading a library or package that has MOVED or when the default version of a major port dependency changes. (DEPRECATED) Usually this will be explained in /usr/ports/UPDATING. Also see .Xr pkg-updating 8 and .Sx EXAMPLES . .It Fl p , Cm --partial Turn the .Fl o or .Fl -n options from exact match renames into substring search in replace in all installed packages. .It Fl x , Cm --regex Match .Ar pkg-name as a regular expression according to the "modern" or "extended" syntax of .Xr re_format 7 . .It Fl v Ar 01 Set or unset the .Qq vital flag on the target package(s). Set to .Ar 0 to disable the .Qq vital flag, and .Ar 1 to enable it. .It Fl y , Cm --yes Assume yes rather than asking for confirmation before modifying package information. .El .Pp If neither the .Fl g nor .Fl x options are used, the default is to match pkg-name exactly. .Sh FILES See .Xr pkg.conf 5 . .Sh EXAMPLES Change a package from automatic to non-automatic, which will prevent .Ic autoremove from removing it: .Dl % pkg set -A 0 perl-5.14 .Pp Change a package from non-automatic to automatic, which will make .Ic autoremove allow it be removed once nothing depends on it: .Dl % pkg set -A 1 perl-5.14 .Pp Rename all the php83- packages into php84- packages in order to prepare for an upgrade .Dl % pkg set -p -n php83:php84 .Sh ENVIRONMENT The following environment variables affect the execution of .Nm . See .Xr pkg.conf 5 for further description. .Bl -tag -width ".Ev NO_DESCRIPTIONS" .It Ev CASE_SENSITIVE_MATCH .El .Sh SEE ALSO .Xr pkg_create 3 , .Xr pkg_printf 3 , .Xr pkg_repo_create 3 , .Xr pkg_repos 3 , .Xr pkg-keywords 5 , .Xr pkg-lua-script 5 , .Xr pkg-repository 5 , .Xr pkg-script 5 , .Xr pkg-triggers 5 , .Xr pkg.conf 5 , .Xr pkg 8 , .Xr pkg-add 8 , .Xr pkg-alias 8 , .Xr pkg-annotate 8 , .Xr pkg-audit 8 , .Xr pkg-autoremove 8 , .Xr pkg-check 8 , .Xr pkg-clean 8 , .Xr pkg-config 8 , .Xr pkg-create 8 , .Xr pkg-delete 8 , .Xr pkg-fetch 8 , .Xr pkg-info 8 , .Xr pkg-install 8 , .Xr pkg-key 8 , .Xr pkg-lock 8 , .Xr pkg-query 8 , .Xr pkg-register 8 , .Xr pkg-repo 8 , .Xr pkg-repositories 8 , .Xr pkg-rquery 8 , .Xr pkg-search 8 , .Xr pkg-shell 8 , .Xr pkg-shlib 8 , .Xr pkg-ssh 8 , .Xr pkg-stats 8 , .Xr pkg-triggers 8 , .Xr pkg-update 8 , .Xr pkg-updating 8 , .Xr pkg-upgrade 8 , .Xr pkg-version 8 , .Xr pkg-which 8