Automatic conversion of the NetBSD pkgsrc CVS module, use with care
Find a file
adam c7474e7cfc python39 py39-html-docs: updated to 3.9.11
Python 3.9.11 final

Core and Builtins

bpo-46852: Rename the private undocumented float.__set_format__() method to float.__setformat__() to fix a typo introduced in Python 3.7. The method is only used by test_float. Patch by Victor Stinner.
bpo-46794: Bump up the libexpat version into 2.4.6
bpo-46762: Fix an assert failure in debug builds when a ‘<’, ‘>’, or ‘=’ is the last character in an f-string that’s missing a closing right brace.
bpo-46732: Correct the docstring for the __bool__() method. Patch by Jelle Zijlstra.
bpo-40479: Add a missing call to va_end() in Modules/_hashopenssl.c.
bpo-46615: When iterating over sets internally in setobject.c, acquire strong references to the resulting items from the set. This prevents crashes in corner-cases of various set operations where the set gets mutated.
bpo-43721: Fix docstrings of getter, setter, and deleter to clarify that they create a new copy of the property.
bpo-46503: Fix an assert when parsing some invalid N escape sequences in f-strings.
bpo-46417: Fix a race condition on setting a type __bases__ attribute: the internal function add_subclass() now gets the PyTypeObject.tp_subclasses member after calling PyWeakref_NewRef() which can trigger a garbage collection which can indirectly modify PyTypeObject.tp_subclasses. Patch by Victor Stinner.
bpo-46383: Fix invalid signature of _zoneinfo’s module_free function to resolve a crash on wasm32-emscripten platform.

Library

bpo-43253: Fix a crash when closing transports where the underlying socket handle is already invalid on the Proactor event loop.
bpo-47004: Apply bugfixes from importlib_metadata 4.11.3, including bugfix for EntryPoint.extras, which was returning match objects and not the extras strings.
bpo-46985: Upgrade pip wheel bundled with ensurepip (pip 22.0.4)
bpo-46968: faulthandler: On Linux 5.14 and newer, dynamically determine size of signal handler stack size CPython allocates using getauxval(AT_MINSIGSTKSZ). This changes allows for Python extension’s request to Linux kernel to use AMX_TILE instruction set on Sapphire Rapids Xeon processor to succeed, unblocking use of the ISA in frameworks.
bpo-46955: Expose asyncio.base_events.Server as asyncio.Server. Patch by Stefan Zabka.
bpo-46932: Update bundled libexpat to 2.4.7
bpo-25707: Fixed a file leak in xml.etree.ElementTree.iterparse() when the iterator is not exhausted. Patch by Jacob Walls.
bpo-44886: Inherit asyncio proactor datagram transport from asyncio.DatagramTransport.
bpo-46827: Support UDP sockets in asyncio.loop.sock_connect() for selector-based event loops. Patch by Thomas Grainger.
bpo-46811: Make test suite support Expat >=2.4.5
bpo-46252: Raise TypeError if ssl.SSLSocket is passed to transport-based APIs.
bpo-46784: Fix libexpat symbols collisions with user dynamically loaded or statically linked libexpat in embedded Python.
bpo-39327: shutil.rmtree() can now work with VirtualBox shared folders when running from the guest operating-system.
bpo-46756: Fix a bug in urllib.request.HTTPPasswordMgr.find_user_password() and urllib.request.HTTPPasswordMgrWithPriorAuth.is_authenticated() which allowed to bypass authorization. For example, access to URI example.org/foobar was allowed if the user was authorized for URI example.org/foo.
bpo-45863: When the tarfile module creates a pax format archive, it will put an integer representation of timestamps in the ustar header (if possible) for the benefit of older unarchivers, in addition to the existing full-precision timestamps in the pax extended header.
bpo-46672: Fix NameError in asyncio.gather() when initial type check fails.
bpo-45948: Fixed a discrepancy in the C implementation of the xml.etree.ElementTree module. Now, instantiating an xml.etree.ElementTree.XMLParser with a target=None keyword provides a default xml.etree.ElementTree.TreeBuilder target as the Python implementation does.
bpo-46591: Make the IDLE doc URL on the About IDLE dialog clickable.
bpo-46400: expat: Update libexpat from 2.4.1 to 2.4.4
bpo-46487: Add the get_write_buffer_limits method to asyncio.transports.WriteTransport and to the SSL transport.
bpo-46539: In typing.get_type_hints(), support evaluating stringified ClassVar and Final annotations inside Annotated. Patch by Gregory Beauregard.
bpo-46491: Allow typing.Annotated to wrap typing.Final and typing.ClassVar. Patch by Gregory Beauregard.
bpo-46436: Fix command-line option -d/--directory in module http.server which is ignored when combined with command-line option --cgi. Patch by Géry Ogam.
bpo-41403: Make mock.patch() raise a TypeError with a relevant error message on invalid arg. Previously it allowed a cryptic AttributeError to escape.
bpo-46474: In importlib.metadata.EntryPoint.pattern, avoid potential REDoS by limiting ambiguity in consecutive whitespace.
bpo-46469: asyncio generic classes now return types.GenericAlias in __class_getitem__ instead of the same class.
bpo-46434: pdb now gracefully handles help when __doc__ is missing, for example when run with pregenerated optimized .pyc files.
bpo-46333: The __eq__() and __hash__() methods of typing.ForwardRef now honor the module parameter of typing.ForwardRef. Forward references from different modules are now differentiated.
bpo-43118: Fix a bug in inspect.signature() that was causing it to fail on some subclasses of classes with a __text_signature__ referencing module globals. Patch by Weipeng Hong.
bpo-21987: Fix an issue with tarfile.TarFile.getmember() getting a directory name with a trailing slash.
bpo-20392: Fix inconsistency with uppercase file extensions in MimeTypes.guess_type(). Patch by Kumar Aditya.
bpo-46080: Fix exception in argparse help text generation if a argparse.BooleanOptionalAction argument’s default is argparse.SUPPRESS and it has help specified. Patch by Felix Fontein.
bpo-44439: Fix .write() method of a member file in ZipFile, when the input data is an object that supports the buffer protocol, the file length may be wrong.
bpo-45703: When a namespace package is imported before another module from the same namespace is created/installed in a different sys.path location while the program is running, calling the importlib.invalidate_caches() function will now also guarantee the new module is noticed.
bpo-24959: Fix bug where unittest sometimes drops frames from tracebacks of exceptions raised in tests.

Documentation

bpo-46463: Fixes escape4chm.py script used when building the CHM documentation file

Tests

bpo-46913: Fix test_faulthandler.test_sigfpe() if Python is built with undefined behavior sanitizer (UBSAN): disable UBSAN on the faulthandler_sigfpe() function. Patch by Victor Stinner.
bpo-46708: Prevent default asyncio event loop policy modification warning after test_asyncio execution.
bpo-46616: Ensures test_importlib.test_windows cleans up registry keys after completion.
bpo-44359: test_ftplib now silently ignores socket errors to prevent logging unhandled threading exceptions. Patch by Victor Stinner.
bpo-46542: Fix a Python crash in test_lib2to3 when using Python built in debug mode: limit the recursion limit. Patch by Victor Stinner.
bpo-46576: test_peg_generator now disables compiler optimization when testing compilation of its own C extensions to significantly speed up the testing on non-debug builds of CPython.
bpo-46542: Fix test_json tests checking for RecursionError: modify these tests to use support.infinite_recursion(). Patch by Victor Stinner.
bpo-13886: Skip test_builtin PTY tests on non-ASCII characters if the readline module is loaded. The readline module changes input() behavior, but test_builtin is not intented to test the readline module. Patch by Victor Stinner.

Build

bpo-47024: Update OpenSSL to 1.1.1n for macOS installers and all Windows builds.
bpo-38472: Fix GCC detection in setup.py when cross-compiling. The C compiler is now run with LC_ALL=C. Previously, the detection failed with a German locale.
bpo-46513: configure no longer uses AC_C_CHAR_UNSIGNED macro and pyconfig.h no longer defines reserved symbol __CHAR_UNSIGNED__.
bpo-45925: Update Windows installer to use SQLite 3.37.2.
bpo-47032: Ensure Windows install builds fail correctly with a non-zero exit code when part of the build fails.

Windows

bpo-44549: Update bzip2 to 1.0.8 in Windows builds to mitigate CVE-2016-3189 and CVE-2019-12900
bpo-46948: Prevent CVE-2022-26488 by ensuring the Add to PATH option in the Windows installer uses the correct path when being repaired.
bpo-46638: Ensures registry virtualization is consistently disabled. For 3.10 and earlier, it remains enabled (some registry writes are protected), while for 3.11 and later it is disabled (registry modifications affect all applications).
macOS
bpo-45925: Update macOS installer to SQLite 3.37.2.

IDLE

bpo-46630: Make query dialogs on Windows start with a cursor in the entry box.
bpo-45296: Clarify close, quit, and exit in IDLE. In the File menu, ‘Close’ and ‘Exit’ are now ‘Close Window’ (the current one) and ‘Exit’ is now ‘Exit IDLE’ (by closing all windows). In Shell, ‘quit()’ and ‘exit()’ mean ‘close Shell’. If there are no other windows, this also exits IDLE.
bpo-45447: Apply IDLE syntax highlighting to pyi files. Patch by Alex Waygood and Terry Jan Reedy.
2022-03-19 18:58:24 +00:00
archivers unrar: updated to 6.1.6 2022-03-15 05:38:09 +00:00
audio libopenmpt: update to 0.6.2. 2022-03-16 11:36:10 +00:00
benchmarks benchmarks/hyperfine: update to 1.13.0 2022-03-05 21:22:16 +00:00
biology biology/stacks: Update to 2.60 2022-03-17 23:49:08 +00:00
bootstrap README.NetBSD: slightly rephrase note about make(1) 2022-02-25 23:03:10 +00:00
cad (cad/klayout) Updated 0.27.7 to 0.27.8 2022-03-12 21:16:08 +00:00
chat chat/matrix-synapse: Update to 1.54.0 2022-03-18 12:59:38 +00:00
comms asterisk16: Update to 16.24.0 2022-03-04 12:22:31 +00:00
converters (converters/opencc) Updated 1.1.2 to 1.1.3 2022-03-13 06:59:19 +00:00
cross freemint-gcc: Enable ObjC and ObjC++ 2022-01-29 18:33:17 +00:00
databases guile-sqlite3: build with guile30 2022-03-14 15:46:39 +00:00
devel devel/acme: update ancient version to 0.97 plus recent commits 2022-03-19 16:53:28 +00:00
distfiles
doc doc: Updated devel/acme to 0.97.0.0.323 2022-03-19 16:53:42 +00:00
editors Sigil: update to 1.9.2. 2022-03-14 13:47:27 +00:00
emulators dosbox-x: remove non-patches from distinfo 2022-03-15 20:28:00 +00:00
filesystems Update to OpenAFS 1.8.8.1 2022-03-19 16:19:02 +00:00
finance gnucash: switch to guile30 2022-03-15 15:43:54 +00:00
fonts fontforge: update to 20220308. 2022-03-14 14:12:41 +00:00
games *: Replace per-package msgfmt hacks with msgfmt-desktop.mk 2022-03-12 08:01:48 +00:00
geography geography/qgis: Update to 3.22.4 2022-03-17 22:23:16 +00:00
graphics librsvg: update to 2.52.8 2022-03-19 00:37:44 +00:00
ham gnuradio*: update to 3.10.1.1 2022-03-12 23:04:44 +00:00
inputmethod ibus-python: sync with ibus 1.5.26 updates. Build test only. 2022-03-15 20:45:39 +00:00
lang python39 py39-html-docs: updated to 3.9.11 2022-03-19 18:58:24 +00:00
licenses licenses: Add libtpms-license 2022-02-01 15:07:01 +00:00
mail www/ruby-rails70: update to 7.0.2.3 2022-03-13 15:15:03 +00:00
math volk: needs GCC>=8 for std::filesystem, like GNU Radio 2022-03-17 14:35:34 +00:00
mbone mbone: Replace RMD160 checksums with BLAKE2s checksums 2021-10-26 10:57:00 +00:00
meta-pkgs mate: replace msgfmt override block with msgfmt-desktop.mk 2022-03-13 03:22:37 +00:00
misc kdeartwork4: fix builds with xscreensaver>=6.03 2022-03-15 17:15:13 +00:00
mk mk/java-vm.mk: clean up documentation 2022-03-19 14:10:51 +00:00
multimedia obs-studio: fix version number recorded in the binary. 2022-03-14 19:54:15 +00:00
net py-python-socks: updated to 2.0.3 2022-03-17 14:24:31 +00:00
news sfeed: Update to 1.3 2022-03-07 22:47:33 +00:00
packages
parallel lua-lanes: update to 3.16.0 2022-03-06 07:51:10 +00:00
pkgtools pkgtools/pkglint: update to 21.4.4 2022-03-12 12:03:40 +00:00
print hplip: add a comment explaining the qt5 option situation 2022-03-15 02:30:23 +00:00
regress *: bump PKGREVISION for egg.mk users 2022-01-04 20:53:26 +00:00
security gnutls: updated to 3.7.4 2022-03-17 21:16:25 +00:00
shells guile-gash: fix distinfo 2022-03-19 09:39:10 +00:00
sysutils gnome-tracker: sync with asciidoc changes 2022-03-15 18:27:03 +00:00
templates templates: disable search bar until the results are better 2021-04-21 11:14:11 +00:00
textproc xxdiff-scripts: add missing egg file to PLIST 2022-03-19 11:36:29 +00:00
time gnome-calendar: fix build with latest meson 2022-03-14 02:51:31 +00:00
wm wm/shod: update to 2.4.0 2022-03-14 10:22:49 +00:00
www kore: update to 4.2.0. 2022-03-19 08:51:46 +00:00
x11 libXdmcp: apply upstream version of SunOS compilation fix 2022-03-17 01:05:48 +00:00
_NetBSD-pkgdb _NetBSD-pkgdb: Use $@ insted of $* 2020-12-29 17:56:14 +00:00
Makefile
pkglocate
README.md README.md: Fix URIs and capitalize NetBSD 2022-01-31 22:39:11 +00:00

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

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