- pkg_add -U to rplace an installed version
- refactored man pages
- PKG_DBDIR / PKG_REFCOUNT_DBDIR as pkg_install.conf options
- synced license list
- use connection cache from libfetch
Completely ignore @src in pkg_create. Silently ignore the -L option.
The combination of -I and -p are used by pkgsrc for the same result.
Do not overwrite a string with itself using snprintf. This breaks
setting the pkgdb directory internally on Linux. Explicitly check
if the string is the same and otherwise just use xstrdup.
Add support to query arbitrary variables with pkg_admin config-var.
- pkg_add: add support to check license conditions before installation
- pkg_delete: add -k option to skip over preserve packages.
- WARNS=4 clean, fix some potential uses of uninitialized variables
Make pkg_delete -d the default behavior, remove the option.
Remove pkg_create -R support (reorder @dirrm entries).
Introduce new plist command @pkgdir, which makes pkg_add add
this directory if it doesn't exist already and pkg_delete remove it
only if no other package has a @pkgdir entry for it. Otherwise
directories are pruned when the last file or directory in them is
removed. @dirrm is now a pure hint, if the directory doesn't exist, it
will be silently skipped.
- DB support is always included from libnbcompat if needed
- pkg_view and linkfarm are not installed any more; they are not moved
into the attic yet, so they can easily be installed as separte package
- common configuration file to customise the behavior of various
components; this supersedes the old audit-packages.conf
- support for PKSC7 signatures (using X509 certs) and GPG signatures for
packages in a secure way. See pkg_admin(8) for how to create them and
pkg_install.conf(5) for the options to use them
- audit-packages and download-vulnerability-list are wrapper scripts
around pkg_admin. They try to mimic the classic options if used
sanely.
"pkg_admin audit" is now an order of magnitude faster than before
- pkg_add uses libarchive and libfetch instead of external ftp and tar:
- progress bar is currently missing for downloads
- "pkg_add -" is no longer supported
- no adhoc check for conficts between dependencies and already
installed packages
- "pkg_add -s" has been replaced with an option in pkg_install.conf,
verification of plain detached GPG signatures is no longer supported
- optional check for vulnerabilities before adding a package
- if /var and /usr/pkg are on different fileystems it is twice as fast
now
- conflicts due to overlapping plists are checked before installation
- pkg_add no longer plays with the process limits
- pkg_add and pkg_delete have a new destdir option; scripts have to
either be modified to use PKG_DESTDIR or should be disabled
- pkg_add -u for now can't be used to update to the exact same version
- internal "rm -rf" and "mkdir_p" code
- all memory allocation failures are not explicitly fatal
- if a file is not removed due to a failed checksum, still remove the
entry from pkgdb
- vulnerability check backend moved into lib for reuse in pkg_add
- add pkg_install.conf parsing for common configuration of the various
pkg_install components
- fix crashes related to uninitialised PLIST structures
- check explicitly if the required files in pkgdb are present, fixing
issues with ~empty left-over directories
- improve hardlink handling in pkg_create using the libarchive link
resolver
- pkg_delete with -P overwrite now updates the pkgdb correctly
- silence warning about empty /var/db/pkg, it provides no value
- pkg_info uses libfetch for remote locations and works without
temporary files, speeding up operation a lot