069e0b55cc
Packaging changes: - Added a bl3 file. Upstream does not provide a changelog, but here's an incomplete and possibly inaccurate reconstruction from source history: 1.1 --- New: - API refactored to take lengths to ease working with partial or non-NULL-terminated strings. (ABI break) Fixes: - Use correct int type for jansson (json_int_t instead of int64_t). - JSON output of different backends is now the same. 1.0 (retacted) -------------- Legal: - License changed to ISC. Fixes: - Possible data leak in memfile_open() by clearing buffers. - Fix build on Solaris-likes by including alloca.h. - Fix Windows build by including malloc.h, using size_t instead of ssize_t, and using the standard tenary operator syntax. - Fix JSON in test3 by using double quote characters. - Fix installation in alternative directories such as /opt/pkg/lib on macOS by setting install_name. - Normalise return values in compare() implementations. New: - Support for cJSON and jansson libraries. - Version info now embedded at build time and shown with mustach(1) usage. - Versioned so-names (e.g. libxlsx.so.1.0). - BINDIR, LIBDIR and INCLUDEDIR variables in Makefile. - New mustach-wrap.{c,h} to ease implementation new libraries, extracted and refactored from the existing implementations. - Makefile now supports 3 modes: single libmustach (default), split libmustache-core etc, and both. - Any or all backends (json-c, jansson, etc) can be enabled at compile time. By default, all available libraries are used. - mustach(1) can use any JSON backend instead of only json-c. - MUSTACH_COMPATIBLE_0_99 can be defined for backwards source compatibility. - 'No extensions' can now be set Mustach_With_NoExtensions instead of passing 0. - pkgconfig (.pc) file for library. - Manual page for mustach(1). Changed: - Many renames. - Maximum tag length increased from 1024 to 4096. - Other headers include json-c.h instead of using forward declarations. - mustach(1) reads from /dev/stdin instead of fd 0. - Several structures are now taken as const. - New/changed Makefile targets. |
||
---|---|---|
archivers | ||
audio | ||
benchmarks | ||
biology | ||
bootstrap | ||
cad | ||
chat | ||
comms | ||
converters | ||
cross | ||
databases | ||
devel | ||
distfiles | ||
doc | ||
editors | ||
emulators | ||
filesystems | ||
finance | ||
fonts | ||
games | ||
geography | ||
graphics | ||
ham | ||
inputmethod | ||
lang | ||
licenses | ||
math | ||
mbone | ||
meta-pkgs | ||
misc | ||
mk | ||
multimedia | ||
net | ||
news | ||
packages | ||
parallel | ||
pkgtools | ||
regress | ||
security | ||
shells | ||
sysutils | ||
templates | ||
textproc | ||
time | ||
wm | ||
www | ||
x11 | ||
_NetBSD-pkgdb | ||
Makefile | ||
pkglocate | ||
README.md |
pkgsrc
pkgsrc is a framework for building software for a variety of UNIX-like systems.
It produces binary packages, which can be managed with tools such as
pkgin. pkgsrc is highly configurable, supporting
building packages for an arbitrary installation prefix (the default is
/usr/pkg
), allowing multiple branches to coexist on one machine, a
build options framework, and a compiler transformation framework, among
other advanced features. Unprivileged use and installation is also supported.
pkgsrc is the default package manager for NetBSD and SmartOS. It's also supported as a first-class option in OmniOS CE and Oasis Linux.
Bootstrapping
To use pkgsrc on operating systems other than NetBSD, you first need to bootstrap:
cd pkgsrc/bootstrap
./bootstrap
Note that this is only for the most simple case, using pkgsrc's defaults.
Please consult bootstrap/README
and bootstrap/README.OS
for detailed
information about bootstrapping.
Building packages
cd pkgsrc/category/package-name
$PREFIX/bin/bmake install
Where $PREFIX
is where you've chosen to install packages
(typically /usr/pkg
)
On NetBSD, bmake
is simply the built-in make
tool.
To build packages in bulk, tools such as pkgtools/pbulk
and
pkgtools/pkg_comp
can be used.
Community / Troubleshooting
- Join the community IRC channel #pkgsrc @ libera.chat.
- Join the community Matrix room #pkgsrc:nil.im
- Subscribe to the pkgsrc-users mailing list
- Send bugs and patches via web form (use the
pkg
category).
Latest sources
To fetch the main CVS repository:
cvs -d anoncvs@anoncvs.NetBSD.org:/cvsroot checkout -P pkgsrc
To work in the Git mirror, which is updated every few hours from CVS:
git clone https://github.com/NetBSD/pkgsrc.git
Additional links
- pkgsrc guide - the authoritative document on pkgsrc, also available as
doc/pkgsrc.txt
- pkgsrc in the NetBSD Wiki - miscellaneous articles and tutorials
- pkgsrc.se - a searchable web index of pkgsrc
- pkgsrc-wip - a project to get more people actively involved with creating packages for pkgsrc
- pkgsrc on Twitter - announcements to the world
- pkgsrcCon - we get together
- BulkTracker - a web application that tracks pkgsrc bulk builds