pkg.
Here is the list of new features that happened in pkg 1.1:
- new simpler and more reliable solver
- shared libraries are now always tracked
- ssh:// is supported as a protocol to distribute packages (needs pkg 1.1+ on
the server hosting the packages)
- multirepository is no longer considered experimental and works by default.
- incremental update of the catalog (only if the repository was created by pkg
1.1+)
- simplification of the public API
- stabilisation of the public API (we will now try to keep it stable and if
change are needed there will be deprecation time before removal of some old
functions)
- new experimental pkg convert (can convert from and to legacy pkg database)
pkg2ng now uses pkg convert (still recommanded to use pkg2ng)
- new pkg lock/unlock to prevent any manipulation of a given package (no
upgrade,delete,etc)
- improved UI (now you can see the progress of an upgrade what is left to be
done)
- new pkg annotation to allow one to add annotations (free form key/value) to a
package)
- pkg audit is now able to directly parse the vuxml native format and not only
the compact version
- pkg -vv now shows all available options and their current settings
- pkg -vvv now shows a description of all the available options
- pkg info now automatically considers the query as globbing if * is in the
requested pattern
- new hook plugin interface (allows users to create hooks that get called at
anytime during and upgrade/installation/deletion of a package)
- new cmd plugin interface (allows users to create new sub command available for
pkg)
- pkg register can now register a port installation in the legacy database
format
- repository can be defined in simple yaml files
Internal:
- massive usage of hash tables (uthash), which simplifies a lot of the code,
and improves performances
- lots of optimisation in plist and manifest parsing
- lots of optimisation in loading packages (mmap used when possible)
- lots of cleanup in memory usage
- regression test framework is now ready (using atf) regression test are slowly
being added and populated.
To use this new version:
Ports users (or in building factories: poudriere/tinderbox):
Add WITH_PKGNG=devel to your make.conf
pkg set -o ports-mgmt/pkg:ports-mgmt/pkg-devel
Binary package users, if the remote repository is providing pkg 1.1:
pkg set -o ports-mgmt/pkg:ports-mgmt/pkg-devel
pkg upgrade
Note that pkg 1.1 can use a repository created for pkg 1.0 and vis versa.
Huge thanks to all the people that have contributed to the pkg developement:
- may that be by code
- documentation
- bug report
- feedback
- ideas
List of people who contributed code:
Baptiste Daroussin, Matthew Seaman, Bryan Drewery, Vsevolod Stakhov,
Marin Atanasov Nikolov, Alexandre Perrin, Romain Tartière, Julien Laffaye,
Glen Barber, John Marino, Alex Kozlov, Roman Naumann, Sofian Brabez,
Alberto Villa, Will Andrews, Eitan Adler, Dan McGregor, namor, niamtokik,
Arthur Gautier, Garrett Cooper, Andrew Turner, Jeremy Chadwick,
Hajimu UMEMOTO, Mark Lokowich, Eygene Ryabinkin, Pietro Cerutti,
Rolf Grossmann, Ed Schouten, Dimitry Andric, David Forsythe, Stefan Grundmann,
Craig Rodrigues, Antoine Brodin, Andrey Zonov, Joel Dahl
Stats between 1.0 and 1.1:
287 files changed, 63418 insertions(+), 18763 deletions(-)
1198 commits
bsd.linux-rpm.mk. The default linux version is now Fedora 10.
- Remove now obsolete checks for Linux 2.4 in emulators/linux_base-c6,
emulators/linux_base-f10, and emulators/linux_dist-gentoo-stage3.
While there, remove superfluous -p argument from ${MKDIR}.
- Remove now obsolete check for Linux 2.4 or FreeBSD 6 and lower from
astro/google-earth.
- Remove expired Fedora Core 4 ports which were only used on FreeBSD 7
and below.
- Update LEGAL and MOVED
PR: ports/176877
Submitted by: myself
Approved by: portmgr (bapt)
Exp-run by: bapt
MAKE_ENV or CONFIGURE_ENV. I.e., don't set PATH in MAKE_ENV twice as
env(1) only takes one, in which case some ports fail to build. One
example is any USES=ada port (such as textproc/xmlada). Instead,
add the ccache path into PATH via := and let it fall into there
via the sourcing port's MAKE_ENV=PATH=...:${PATH} line.
A more comprehensive solution to this could be to add a MACRO/feature
to modify the PATH for all ports without using MAKE_ENV via
something like ADDPATH=...
With hat: portmgr
Tested by: several exp-runs
The problem is that WITH_CCACHE_BUILD adds PATH to the MAKE_ENV, but
the gnustep support sources a GNUStep.sh file that already sets the
PATH. Next when env PATH=... is called, it overwrites and losers the
gnustep PATH additions. This is a temporary fix until a better
solution is found.
an zeising, kwm, miwi, bapt, eadler production:
Xorg 7.7
Starring:
xserver 1.12.4 (new xorg only)
Mesa 8.0.4, including libGL, libGLU and dri (new xorg only)
libX11 1.5.0
libxcb 1.9
libdrm 2.4.42 (new xorg only)
freeglut 2.8.1
Also starring:
Updates to drivers and other libraries and utilities
Additional notes:
Change pkgconf to be a build dependency.
Add a new USE_XORG, xcb, to depend on libxcb and update all ports to use
this.
Trim makefile headers.
Take maintanership of x11/xcb-proto, ok'd by ashish.
If you are running WITH_NEW_XORG=, you need to rebuild all installed
drivers, see UPDATING for more information.
Various fixes to make ports compile.
PR: ports/177942
Exp-run by: miwi
Approved by: portmgr (miwi)
Thanks to all who helped testing!
This was a pkg-1.0.9 regression. The impact of this is
that some ld cache files would show as leftovers.
PR: ports/178837
Submitted by: Antoine Brodin <antoine@FreeBSD.org>
Tested by: miwi, bdrewery
With hat: portmgr
- Split off documentation to print/texlive-docs from print/texlive-texmf.
The document part was 1.3GB (30k files). Now the size of texlive-texmf
package is 557MB (this was 1.5GB before the split).
- do-texhash, do-fmtutil, do-updmap targets now run after post-install.
. lang/python27: 2.7.3 -> 2.7.5
. lang/python32: 3.2.3 -> 3.2.4
. lang/python33: 3.3.0 -> 3.3.1
- update Mk/bsd.python.mk with new versions
- mark lang/python26 and lang/python31 as deprecated (set them to
upstream EoL dates)
- update docs (lang/python-doc-html)
- align databases/py-bsddb patch for python27 - most of it was applied
upstream. Raise BDB version to 4.3 atleast, according to
upstream requirements.
Many thanks to Martin (miwi) for his time on this update.
PR: 178506
Submitted by: rm (myself)
Exp-run by: portmgr (miwi)
- revert erroneous threads patch in lang/python26 and lang/python27,
that was added after ports/131080. It was rejected upstream, because it's
not actually a bug, but misuse.
Gabor Pali (pgj) in collaboration with Kubilay Kocak (koobs) did an
independent investigation regard the issue. See here for details:
http://lists.freebsd.org/pipermail/freebsd-python/2013-April/005376.html
PR: 153167
Submitted by: Duncan Findlay <duncan@duncf.ca>
Reported by: pgj/koobs (at python@ ML)
Exp-run by: portmgr (miwi)
TEX_DEFAULT:
A knob to choose teTeX or TeXLive. One can specify in /etc/make.conf.
USE_TEX:
A knob for port developers. Valid keywords are listed in
bsd.tex.mk.
for an exp-run of updated python versions.
- trim Makefile headers
- remove leading indefinite article from COMMENT
- use PYTHON shortcut in MASTER_SITES
- whitespace fixes
- remove checks for unsupported versions of FreeBSD
- use static value ``33'' instead of PYTHON_SUFFIX in lang/python33/pkg-plist,
because this value is not supposed to be changed across the branch and for
consistency with other python3 ports
- remove conflicts in lang/python-mode.el with not more existing python-2.4
if none of DISABLE_MAKE_JOBS or MAKE_JOBS_UNSAFE or
MAKE_JOBS_SAFE or FORCE_MAKE_JOBS were set. This fixes
the build for several ports updated in r317320.
Reported by: miwi
With hat: portmgr
support. dvipdfmx's default paper size can be set by
${LOCALBASE}/etc/papersize and/or PAPERSIZE environment variable as
other programs like print/psutils do.
- Use absolute pathname in {fmtutil,texconfig,updmap}-sys programs because
manually-installed and/or old TeXLive files can prevent them from
working. [1]
- Fix pkg-plist in print/texlive-texmf.
- Remove DIST_SUBDIR from Mk/bsd.tex.mk.
Reported by: bsam, Stephen Montgomery-Smith [1]
use it to fix shebang on files specified by SHEBANG_FILES macro, by default it
proposes default values for bash, perl, php, python, ruby, it can be customized
and extended
* Meta port
- print/texlive-full: meta port to install all of the TeXLive components
* Libraries
- devel/tex-kpathsea: kpathsea library
- devel/tex-web2c: WEB2C toolchain and TeX engines
- print/tex-ptexenc: character code conversion library for pTeX
* Base part of the TeXLive
- print/texlive-base: binary programs in TeXLive
- print/texlive-texmf: macro and font data in TeXLive
- print/texlive-infra: tlmgr dependency (Perl modules)
* TeX Formats
- print/tex-formats: TeX, LaTeX, PDFTeX, AMSTeX, ConTeXT, CSLaTeX,
EplainTeX, METAFONT, MLTeX, PDFTeX, TeXsis
- print/tex-aleph: Aleph/Lambda
- print/tex-xetex: XeTeX
- print/tex-luatex: LuaTeX
- print/tex-jadetex: JadeTeX
- print/tex-xmltex: XMLTeX
- japanese/tex-ptex: pTeX
* DVI ware
- print/tex-xdvik: XDvi
Mk/bsd.tex.mk is added for common part and USE_TEX knob [1].
Approved by: portmgr (old version) [1]
PR: ports/171571
PR: ports/176399 [1]