installs 2.8.4 from latest; from quarterly (2026Q4) 2.8.4
Port
# cd /usr/ports/ports-mgmt/pkg && make install clean
# make -C /usr/ports/ports-mgmt/pkg config # change options first
Size
13 MiB download · 52 MiB installed
Depends on
nothing
License
BSD2CLAUSE
Options
1 of 1 on in the package: DOCS
Packages by version and architecture
latest
FreeBSD version
amd64
aarch64
i386
FreeBSD 16
2.8.4
2.8.4
–
FreeBSD 15
2.8.4
2.8.4
–
FreeBSD 14
2.8.4
2.8.4
2.8.4
quarterly (2026Q4)
FreeBSD version
amd64
aarch64
i386
FreeBSD 15
2.8.4
2.8.4
–
FreeBSD 14
2.8.4
2.8.4
2.8.4
version as in the ports tree (latest) or the most common one (quarterly) · different version · ✗ not built · – no packages for this platform. Package sets that have not been rebuilt for 60 days are left out.
Unaddressed and VuXML only (0)
No unaddressed CVE and nothing reported by pkg audit for the packaged version 2.8.4.
Fixed (2)
Show 2 fixed
VuXML entries whose affected range the packaged version has left.
maintainer-feedback? ports-mgmt/pkg: does not show a dependency for a package, but removing it wants to remove many others; autoremove trying to remove a manually installed package
ports-mgmt/pkg: pkg -r fails to run post install script.
In Progress
2020-05-11
Commits (349)
Baptiste Daroussin (bapt) · 1.4.5
Release 1.4.5 Changes: - Enforce a bit more pkgname a unicity identifier - Fix regression on pkg query with multiline - Fix sql error on some pkg query - Stop again caching files for file:/// repos - Do not trust libarchive to apply modes - Accept tar files in repositories - Handle chflags - Some updates in documentation
Release 1.4.4 Changes: - Remove lots of dead code - Fix pkg stat reporting the size of remote repositories - Remove execinfo dependency - Fix pkg check with no active remote db - Remove outdated example from manpages - More accurate error messages in pkg check - Use the new procctl(2) features when possible to prevent script from spawning daemons - More fixes in integrity check - Improvements in z
Update to 1.4.3 and 1.4.99.3 Changes: - Fix integrity check in multi repository - Document CONSERVATIVE_UPGRADE - Document repository priority - Do not duplicate replacement request
Update pkg to 1.4.2 and pkg-devel to 1.4.99.2: Changes: - Fix applying proper modes on directories on some corner cases (fixes pkg install mailman) - Do not display pkg-message is pkg register fails - During removal, if a directory was already removed by a bogus script, continue removing parents.
Changes specific to -devel:
- pkg -d now set DEBUG_LEVEL -d == DEBUG_LEVEL=1 -dd == 2 etc
Release pkg 1.4.1 and 1.4.99.1 Changes: - Manpages updates - Fix directory removal guard - Fix loading of files from packages - Add new CONSERVATIVE_UPGRADE option to enforce keeping package from the repository they were installed from - Add priority support for multi repository
While this version improves a lot multi repo support please note that there is a
known bug resulting in failures during integrity checking, resulting in some
operations may have to be run twice we are investigating a fix
Update pkg to 1.4.0 Update pkg-devel to 1.4.99.0 (aka 1.5 pre-alpha0) Changes since pkg 1.3.0: Changes you can expect in pkg 1.4 are the following: - Loads of bug fixes - Stricter checking of the path passed via the plist - Removal of the bundled libyaml - new --raw-format to chose the output format for info -R and search -R - ABI (for freebsd, unchanged for dragonfly) is now follwing MACHINE_ARCH
Update to 1.3.8 Changes: - Plist parser do not accept modes like o+w g+s u+r - @owner/@group with no argument reset the default ownership to root/wheel - Plug regression tests into the release mechanism as mandatory - Allow url in repository configuration to be overriden by another configuration file - If one of -P, -I or -R is not explicitly given on the command line do not emit error message
Side effects:
- Convert to install-mtree target into a no-op target Add empty directories to
plist of ports that needs them to run:
- share/aclocal to devel/automake and devel/automake14
- share/applications to devel/desktop-file-utils
- share/xml share/sgml to textproc/xmlcatmgr
- Prevent check-plist to issue warnings about some @dir*
- Adjist check_leftovers.sh to not take in account anything related to mtree
- Bump the default required version of pkg to 1.3.8
Add a minimal version testing for the installed pkg to enforce people to go to the latest version Set minimal version to 1.3.7 for now
Differential Revision: D723
Reviewed by: bdrewery
Remove support for pkg_install Merge back bsd.pkgng.mk into bsd.port.mk Add a note about @stopdaemon not being supported anymore
With hat: portmgr
Differential Revision: https://reviews.freebsd.org/D693
- Update to 1.3.7 Please note announcement for special instructions at: http://lists.freebsd.org/pipermail/freebsd-ports-announce/2014-August/000086.html - Users need to run 'pkg check -Ba' after upgrading to pkg-1.3.7 and before updating any other packages. This avoids needing to reinstall anything not needed due to changed shlibs. - People building packages for serving to other
Changes:
* Test suite fixes
* Documentation updates
* pkg-rquery(8): Add a pointer to EXAMPLES in pkg-query(8)
* If opening the db in READ_ONLY give a warning if it is missing
* Give advice on how to recreate the database if auto-updating was skipped
* Remove pkg --check-activation. It is too tempting to use.
* Make it more clear that the 'Major version' change is non-fatal
* Jobs display: Avoid excessive newline before prompt and after unprompted usage
* Remove references to PACKAGESITE/MIRROR_TYPE/PUBKEY
* Support uppercase ENABLED in repo config.
* Avoid POLA, make PACKAGESITE/MIRROR_TYPE/PUBKEY in pkg.conf fatal
* Fix self upgrade loop with pkg upgrade -Fy
* Fix self upgrade not using the new pkg binary
* pkg-{delete,autoremove}: Use a readonly lock in dry run
* pkg-convert: Add locking. EXCLUSIVE by default, READONLY with -n
* pkg-convert: Check for proper db permissions for both real and dry_run mode
* pkg-convert -r: Only a readonly lock is required for converting from the db
* pkg-convert -r: Add common db access checks
* pkg convert -r: Don't crash if unable to create the package dir
* Revert stripping shlib versions from e127d91d4.
This will require rebuilding packages on the repository and then
running pkg check -Ba to fully utilize. Until packages are rebuilt
there may be false-positive shlib reinstalls.
* pkg {register, check -B}: Fix registering provided shlibs as required
* When analysing ELF files with DEVELOPER_MODE, don't bail on first error
* Fix pkg-ssh when SSH_RESTRICT_DIR is a symlink
* Fix size calculations with hardlinks
* Fix pkg-which glob
* pkg fetch -d: Fix crash (#955)
* Progress bar improvements/fixes
* Fix ETA for fetching (#943)
* Fix progressbar stalled support
* ETA progress: Account for TCP SLOW START and weigh the first few ticks less
* Rework 'pkg update' output slightly to clarify what it is doing.
* pkg check: Add progressbar when not using -v
* pkg check: Add job counter with using -v
* pkg clean: Add progressbar
* Fix hardlink calculations (#958)
* pkg backup: Add -q
* pkg backup: Remove docs for '-d -' as it does not work.
* pkg config: Fix output for arrays/objects (#971)
* Fix RC scripts being started on deinstall rather than stopped
* Add some more asserts
* pkg-fetch.8: Remove reference to removed mirror mode
* Fix a few typos in pkg.conf.5 (#969)
* Document new configuration options. (#969)
* Fix always refetching of file:// and ftp:// repositories
* pkg query -g: Fix handling of ranges such as 'name-[0-9]*' which
is used by ports CONFLICTS checking
* Fix crash when SIGNATURE_TYPE=PUBKEY but PUBKEY is not defined
- Update to 1.3.6
Changes:
* Fix bringing in i386-wine* as a dependency (requires rebuilding
the wine package). This is fixed, for now, by not considering
shlibs as provided by a package if they do not match the target
architecture. (#922)
!!! You should delete the i386-wine and i386-wine-devel !!!
!!! packages from your repository so they rebuild. !!!
!!! Bumping of PORTREVISION is pending due to the !!!
!!! nature of these ports. !!!
* Fix auto reinstallation of packages when shlibs/dependencies
change. This will force a 'pkg update' to run to rebuild
the local repository. Using -U will not work until this is
done. (#933)
* Fix 'pkg rquery %Av' (requires rerunning pkg-repo on remote) (#925)
* Fix pkg_solve_sat_problem assertions (#915)
* Fix 'pkg install -f' (#912)
'pkg install -R[f]' is still known to not work (#926)
* Fix 'pkg rquery -e' (#910)
* Fix 'size mismatch' errors requiring 'pkg update -f' (#906)
* Fix other cases of 'pkg update -f' being required.
* Fix 'pkg clean' to show files before confirming (#887)
* Fix upgrade/install not showing meta packages in the output (#909)
* Fix 'pkg autoremove -n' asking for confirmation
* Fix 'pkg lock' not being respected for forced operations (#911, #937).
Note that a locked package may still be deleted if the solver determines
it is no longer needed.
* Fix 'pkg delete -q'
* Replace the SAT solver with Picosat (#914). This is much more mature
and stable than our previous solver. It, along with other work, fixes
many issues with solving upgrades.
* 'pkg ssh' fixes
* Do not consider shlib versions for package provides/requires as there is
discrepency in what packages provide and what other require. For now only
rely on libname.so.
With hat: portmgr
Update to 1.3.5 Changes: - Fix progress bars when not in a tty to give output - Dragonfly fixes - Multiple fixes in @keywords(user,group,mode) support - Important fixes in repo incremental updates - Fix pkg audit not returning an error in case of vulneraibilities found (making periodic script not working) - Ignore sigpipe - Make the read lock now no op - Directories can be listed in the plist like
Update to 1.3.4 Changes: - Fix repo database manipulation on FS with no proper locking mechanism - Fix regression where options have "true" value instead of "on" - Prevent early destruction of a repo - Workaround new nginx behaviour of if_modified_since - Fix pkg set -o - Improve some error messages - Do not fallback on yaml anymore to parse new keywords
Update to 1.3.3 Changes: - Always use bundled libsbuf - Make pkg help aware of aliases - Add more debug info - Yet another fix for pkg repo - Fix some size to chase ucl changes - Fix a bug if one if creating a package and a directory of that name exists - Fix plist whitspace trimming - Fix pkg_env - Fix pkg ssh - Allow pkg ssh server to serve poudriere made repositories - Fix again pkg install -A
Update to 1.3.2 Changes: - Import fixes from libucl (fixes memory corruption with pkg.conf) - Fix memory corruption when reinstalling packages - Rework pkg repo process distribution
Update to 1.3.1 Changes: - Add a WORKERS_COUNT option to limit the number of workers used during pkg repo - Fix pkg repo hanging on FreeBSD 8 and 9 - Fix migration of local database from 1.2 to 1.3 which was resetting the installation time - Print the repository in search informations - Ignore meta file when rebuilding a repository - Lots of fixes in libucl - Fix pkg info -R to generate a valid ya
Fix the build on PowerPC: apparently it declares that it has atomic builtins, but GCC 4.2 bombs with internal compiler error (= unrecognizable instruction) when compiling libucl/src/ucl_util.c.
Approved by: bapt (portmgr, maintainer)
Update to 1.3.0
Since pkg 1.2:
- 373 files changed, 66973 insertions(+), 38512 deletions(-)
- 29 differents contributors
- Merge of one of the 2013 Summer of code project
Changelog:
- New solver that can support external solvers using the CUDF format and the
internal SAT solver
- pkg-ssh(8) is now sandboxed with capsicum if it is available
- pkg-ssh(8) now uses poll(2)
- Remove StringList usage to improve portability
- Rework the build system to use autotools to help portability
- Now fetching is done to a temporary location and cleaned up if it fails
- Remove PACKAGESITE
- pkg-audit: remove support for portaudit compact database (only VulnXML will be
used)
- Improved UI experience based on jmmv write up
(http://julipedia.meroh.net/search/label/cli-design)
- Reworking the database locking mechanism into a finer grain and more clever
system
- Dynamic conflict handling if a conflict on files is detected at the sanity
check level, try to solve the problem again with the new conflict information
- Fix %t (timestamp) modifier in pkg_printf(3)
- Full output now has a new field "date installed"
- New pkg -o A=B to overwrite configuration from command line without the need
of defining environment variables
- pkg-install now can handle local files
- pkg-add is now an alias on pkg-install
- Simplify API by using more and more libucl objects (hidden behind an opaque
'pkg_object')
- Rework multirepository handling
- Prepare code for repository abstraction support
- Sandbox signature checking and extraction
- Support long options
- Rework the extraction process
- unicity of a package is now origin~name allowing subpackages and flavours
- Improve ui for all commands
- pkg lock -l now list the locked packages
- symlinks now has a checksum to ensure they are valid
- pkg backups generated by the distributed script are now plain sql files
- Tons of bugfixes
- Tons of behavour fixes
- Fix pkg-rquery -I to have all expected output.
Obtained from: upstream 29c9c84e0e11c2c182a8d79634344e57bf2575f1
With hat: portmgr
Reported by: dteske
- Update to 1.2.7
Changes:
- Only fallback to YAML if UCL parsing fails
- pkg2ng: Hide warnings about @mtree, @stopdaemon, @comment
@display and @conflicts
- Fix escaping issues with COMMENT
- pkg add: Fix -A to properly mark package as automatic
- pkg2ng: Fix over NFS
- pkg2ng: Show message while analyzing shared libraries
Update comment and description for pkg(8)
it is not new generation anymore and it is the current package tool
While here remove "for FreeBSD" as it also works on other OSes
Reported by: peter
- Update pkg and pkg-devel to 1.2.6
This update includes a security update for possible arbitrary code
execution from package manifest parsing. All users are advised to
upgrade ASAP. The base pkg(7) was never affected by this. [1]
Changes:
* Fix libyaml head-based buffer overflow [1]
* Fix pkg info -E support for ports, which namely affected
net/openldap* usage. [2]
* Fix packages registering themselves as dependencies [3]
* Bash autocompletion fixes [4]
* autoremove: Don't try to remove locked packages
* Support 'pkg bootstrap -f', which will force a reinstall of pkg
on FreeBSD 10.0+
* Fix %t timestamp formatter with %{...%} modifiers [5]
* pkg info: Show date installed
* Add $daily_status_security_pkgaudit_quiet to control 410.pkg-audit.in
output verbosity level
* Add an error when trying to update repository and none are defined [6]
* Fix typos in manpages [7]
Security: CVE-2013-6393 [1]
Reported by: secteam (delphij) [1]
PR: ports/184797 [2]
Reported by: Pavel Timofeev <timp87@gmail.com> [2], many
Submitted by: smh@ [3]
Submitted by: brd@ [4]
Submitted by: Jamie Landeg Jones [5]
Submitted by: Rodrigo Osorio [6]
Submitted by: Michael Gehring, wblock [7]
With hat: portmgr
MFH: 2014Q1
Update to 1.2.5: - Manpage improvements - fix $auditfile in pkg audit periodic script - Fix repo-*.sqlite being corrupted when pkg update is interrupted by the user - pkg add now tells the version of the package missing - Strop decoding/encoding all fields, only scripts and description are now encoded/decoded
Fix sefault while cleaning up It only happens if one has list or key/value list in pkg.conf a workaround to update is to comment it out the time to upgrade
Reported by: many
Pointyhat to: bapt (again)
Update to 1.2.4 Changes: - Fix segfault in pkg audit -F [1] - Fix multiple segfault when using eventpipe [2] - Fix REPOS_DIR being appended instead of overwritten when modified from pkg.conf
Reported by: many [1]
Reported by: kmoore [2]
Update to pkg 1.2.3 Changes: - Workaround a bug in bsd.*.mk on FreeBSD 8.x - Fix a pkg repo segfault - Document aliases in pkg.conf(5) - Be more verbose when refusing a repository configuration file - Sync libucl with upstream (bug fixes) - Fix a fd leak in pkg repo - Fix memory leaks due bad usage of libarchive
Update to 1.2.2 Changelog: - Fix pkg which returns bogus non-zero exit status on success - Better check libucl returns - Fix bad build system resulting in broken binaries on arm and ia64 - Update pkg.conf documentation - Add manpage for pkg config - OOTB support for dragonfly - Lots of fixes in libucl - Fix pkg register complaining about shared libraries not found - Do not resume a jailed or chroo
Special thanks to mat@ (for bug busting) and cognet@ (tracking down 2 issues
on arm and as a side effect fixing on ia64
ports-mgmt/pkg*: Prepare for alternative PORTSDIR support
With the PKG_PORTSDIR make argument set, Release 1.2.2 will properly build
pkg when PORTSDIR doesn't equal the default /usr/ports, as is the standard
case with DragonFly.
Additionally, pkg(8) and pkg-static(8) man pages are conditionally edited
to remove references to the -j option when libjail isn't found on the
system. This extra-patch should never be used on FreeBSD.
Release pkg 1.2.1 Changes: - Fix pkg rquery always printing index like lines - Fix pkg -vv suggestion so it print something actually usable - Fix shlib's -P and -R options were swapped round. - Replace broken pkg_repos_count() by pkg_repos_total_count() and pkg_repos_activated_count() - Fix parsing of options (in manifest) - pkg add http:// now fetch to a temporary location and cleanup after itsel
Welcome pkg 1.2 final
Changelog:
- Improved build system
- Allow to hook plugins, before closing the local db if it was opened in RW mode
- Allow ARCH to be printed by pkg info
- New pkg bootstrap subcommand that is the counter part of the pkg(7) bootstrap subcommand
- Use port specified in the SRV entries to connect to a given mirror
- Properly support srv priority/weigh when ordering mirrors
- Lots of spelling/grammar fixes
- Broken incremental pkg repo support was removed.
- ABI is now checked again using globs:
* a 'noarch' package should just specify: ARCH: 'freebsd:*'
* a package working on both i386 and amd64: ARCH: 'freebsd:9:x86:*'
- new pkg config subcommand to allow direct query of options
- options can now have a description
- pkg repo can now take new arguments:
pkg repo [path] [rsa_key|'signing_command: <command>']
This allow calling external command to perform the signing and
pass the checksum to be signed in the command stdin.
- in case pkg info is querying a file or is a single direct match
query then default on -f
- pkg info -q is now equivalent of pkg info -qa
- expat is now always bundled (for vuxml)
- vuxml is now the default source for pkg audit
- Accept empty/comment only configuration files
- Print a pkg name only once - even if multiple vulns were found - when using -q
in pkg audit
- pkg info now default on glob matching
- Support for pkg+foo url scheme where foo can be (http, https, ftp).
- pkg add is now able to read the packages from a pipe or a non-regular
file '-' is an alias for stdin, this also works from pipes, fifos,
unix domain sockets etc.
- New 'fingerprint' kind of signature:
if a repository is declared using the fingerprint type of
signature, a fingerprint directory should also be provided.
Inside that fingerprint directory should be 2 directories:
trusted and revoked. Those directories will contains files (in
yaml/ucl format) containing the fingerprint of the trusted
certificated and the revoked ones:
--- begins --
function: sha256
fingerprint: an_hex_representation_of_the_fingerprint
--- ends ---
All unknown attribute will be silently ignored to allow extending
in the future.
It also support multiple signatures inside the catalog. the
catalog should provide the signature in the following form:
name.sig
name.cert
- packagesite in pkg.conf is deprecated in favour using dedicated
repository configuration files
- REPO_DIR is now a list instead of a simple string
- New git like aliases to allow creating custom commands
- Allow using '?' operator in pkg query expressions
- Fix ssh:// support
- New PKG_SSH_ARGS to allow passing custom arguments to ssh command
used for the ssh:// protocol
- Do not generate catalogs in pkg 1.0 format anymore.
- YAML is replaced by UCL format:
Both formats are really simular. pkg(8) will falls back on parsing YAML
when the UCL parser fail. And will emit a warning to the
user showing a syntax that is compatible with both YAML and UCL.
More informations on UCL: https://github.com/vstakhov/libucl
- Dependencies on library is now automatic via pkg register and pkg
create
- Auto upgrade of pkg(8) now restart the upgrade process automatically
- Lots of bug fixes discovered by Coverity Scan
- New debug level traces
- Bug fixes in zsh completion
- rquery can now take a -I argument to output index like lines (needed for
bsdconfig)
- Skip self upgrade with -F is passed
- Autodetect if libelf should be used bundled
- Lots of bug fixes
Thanks a lot to all people allowed this release to happen, may that be from providing
code, ideas, submitting bugs, documenting or just supporting.
- Update to 1.1.4_10 ahead of 1.2 update with critical fixes
Changes:
* When using SRV mirrors, order the mirrors by the advertised
priority and weight. This should fix 'pkg update' using mirror
A while 'pkg upgrade' and 'pkg fetch' end up using mirrors
A, B and C, resulting in checksum errors due to not all mirrors
being updated at the same time.
* Add support for 'pkg+http://' URL scheme and deprecate
'http://' when using SRV mirroring. This is only a cosmetic change
that encourages users to not try loading the PACKAGESITE into
a browser to view it.
Discussed with: bapt
With hat: portmgr
Obtained from: upstream git
- Force pkg to not use base libbsdyml, which was available in head|stable/10 for some months. libbsdyml is being removed for 10-R. The bundled libyaml will be used instead.
Discussed with: bapt
With hat: portmgr