4e5d688a7c
Major changes between version 1.9.6p1 and 1.9.6: Fixed a regression introduced in sudo 1.9.6 that resulted in an error message instead of a usage message when sudo is run with no arguments. Major changes between version 1.9.6 and 1.9.5p2: Fixed a sudo_sendlog compilation problem with the AIX xlC compiler. Fixed a regression introduced in sudo 1.9.4 where the --disable-root-mailer configure option had no effect. Added a --disable-leaks configure option that avoids some memory leaks on exit that would otherwise occur. This is intended to be used with development tools that measure memory leaks. It is not safe to use in production at this time. Plugged some memory leaks identified by oss-fuzz and ASAN. Fixed the handling of sudoOptions for an LDAP sudoRole that contains multiple sudoCommands. Previously, some of the options would only be applied to the first sudoCommand. Fixed a potential out of bounds read in the parsing of NOTBEFORE and NOTAFTER sudoers command options (and their LDAP equivalents). The parser used for reading I/O log JSON files is now more resilient when processing invalid JSON. Fixed typos that prevented make uninstall from working. Fixed a regression introduced in sudo 1.9.4 where the last line in a sudoers file might not have a terminating NUL character added if no newline was present. Integrated oss-fuzz and LLVM's libFuzzer with sudo. The new --enable-fuzzer configure option can be combined with the --enable-sanitizer option to build sudo with fuzzing support. Multiple fuzz targets are available for fuzzing different parts of sudo. Fuzzers are built and tested via make fuzz or as part of make check (even when sudo is not built with fuzzing support). Fuzzing support currently requires the LLVM clang compiler (not gcc). Fixed the --enable-static-sudoers configure option. Fixed a potential out of bounds read sudo when is run by a user with more groups than the value of max_groups in sudo.conf. Added an admin_flag sudoers option to make the use of the ~/.sudo_as_admin_successful file configurable on systems where sudo is build with the --enable-admin-flag configure option. This mostly affects Ubuntu and its derivatives. The max_groups setting in sudo.conf is now limited to 1024. This setting is obsolete and should no longer be needed. Fixed a bug in the tilde expansion of CHROOT=dir and CWD=dir sudoers command options. A path ~/foo was expanded to /home/userfoo instead of /home/user/foo. This also affects the runchroot and runcwd Defaults settings. Fixed a bug on systems without a native getdelim(3) function where very long lines could cause parsing of the sudoers file to end prematurely. Fixed a potential integer overflow when converting the timestamp_timeout and passwd_timeout sudoers settings to a timespec struct. The default for the group_source setting in sudo.conf is now dynamic on macOS. Recent versions of macOS do not reliably return all of a user's non-local groups via getgroups(2), even when _DARWIN_UNLIMITED_GETGROUPS is defined. Fixed a potential use-after-free in the PAM conversation function. Fixed potential redefinition of sys/stat.h macros in sudo_compat.h. |
||
---|---|---|
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.
Troubleshooting
- Join the community IRC channel #pkgsrc @ freenode.
- 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