PKGNG overview, status and FAQ

Bryan Drewery bdrewery at FreeBSD.org
Mon Dec 10 04:30:10 UTC 2012


I've seen some confusion on what pkgng is and what the current status of
it is, so I decided to writeup a small explanation.

PKGNG is a replacement for pkg_add/pkg_install. Before pkgng came along,
ports already used pkg_install and binary packages were installed with
pkg_add -r. These old tools did not properly handle upgrades or
dependencies very well.

PKGNG is a replacement for pkg_add/pkg_install, but much smarter. It is
similar to apt-get, yum, etc. All pkgng packages are built from ports at
some point, so it is still limited by limitations of ports. PkgPrimer
[1] provides some comparison of the old commands to the new commands.

PKGNG is not necessarily a replacement for ports. You can continue to
use ports just like before (with portmaster / portupgrade / manual), or
you can opt to use a binary package repository.

Ports allow you to select which OPTIONS are used, while binary packages
generally do not. Your local Ports checkout may have different versions
of the remote repository you choose to use. As such, if you try to use
both binary packages and ports, you may run into surprises.

The plan is to provide a pkg.freebsd.org repository that is updated
frequently, uses SRV mirrors, and has signed packages. This part of the
plan is stalled. More information on the roadmap for pkgng is on the
PKGNG Charter wiki page [2]

The nature of mirrors means that http://pkg.freebsd.org will not have a
site on it as it is an SRV mirror, not an FTP or HTTP server. If it had
packages, you would not be able to browse them. You should use 'pkg
search' instead. You can see which mirrors are available by running:

    dig SRV _http._tcp.pkg.freebsd.org

However, due to the recent security incident [3], the pkg.freebsd.org
repository was cleared and will be rebuilt in the future [4]. As such,
no packages except for 'ports-mgmt/pkg' are currently available.

However, you can build your own packages and run your own repository
using poudriere (ports-mgmt/poudriere) or tinderbox
(ports-mgmt/tinderbox-devel); or just continue using ports.


[1] http://wiki.freebsd.org/PkgPrimer
[2] http://wiki.freebsd.org/pkgng/CharterAndRoadMap
[3] http://www.freebsd.org/news/2012-compromise.html
[4]
http://lists.freebsd.org/pipermail/freebsd-ports/2012-November/079711.html

More information, blog posts, and resources can be found on the PKGNG
wiki page: http://wiki.freebsd.org/pkgng


Hope this helps,
Bryan Drewery


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 897 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20121209/d73785a9/attachment.sig>


More information about the freebsd-ports mailing list