Automatic conversion of the NetBSD pkgsrc CVS module, use with care
Find a file
wiz 7e0f6b0727 todoman: update to 4.0.0.
v4.0.0
------

Breaking changes in the configuration format
********************************************

The configuration format is changing with release 4.0.0. We currently depend on
an unmaintained library for configuration. It's not currently in a working
state, and while some distributions are patching it, setting up a clean
environment is a bit non-trivial, and the situation will only degrade in future.

The changes in format are be subtle, and also come with an intention to add
further extensibility in future. Configuration files will be plain python. If
you don't know Python don't worry, you don't _need_ to know Python.

I'll take my own config as a reference. The pre-4.0.0 format is:

```dosini
[main]
path = ~/.local/share/calendars/*
time_format = '%H:%M'
default_list = todo
humanize = true
startable = true
```

The 4.0.0 version would look like this:

```python
path = "~/.local/share/calendars/*"
time_format = "%H:%M"
default_list = "todo"
humanize = True
startable = True
```

Key differences:

- The `[main]` header is no longer needed.
- All strings must be quoted (this was previously optional).
- True and False start with uppercase.
- Using `yes` or `on` is no longer valid; only `True` and `False` are valid.

That's basically it. This lets up drop the problematic dependency, and we don't
actually need anything to read the config: it's just python code like the rest
of `todoman`!

For those users who _are_ python developers, you'll note this gives some
interesting flexibility: you CAN add any custom python code into the config
file. For example, you can defined the `path` programatically:

```python
def get_path() -> str:
    ...


path = get_path
```

Dropped support
***************

* Dropped support older Python versions. Only 3.8 and 3.9 are now supported.

Minor changes
*************

* Added support for python 3.9.
* The dependency `configobj` is no longer required.
* Click 8.0 is now supported.
* Fix crash when ``default_command`` has arguments.
2021-05-23 11:08:39 +00:00
archivers unrar: updated to 6.0.6 2021-05-21 06:59:36 +00:00
audio gramofile: "update" to 1.6P (a retag). apply many local fixes to the code. 2021-05-20 19:24:15 +00:00
benchmarks google-benchmark: update to 1.5.3. 2021-04-26 15:23:37 +00:00
biology py-dnaio: unbreak pkgsrc tree. revert removal of PYTHON_VERSIONS_INCOMPATIBLE. 2021-05-22 23:24:17 +00:00
bootstrap Don't reject dash as /bin/sh. 2021-04-28 11:14:51 +00:00
cad (cad/klayout) Updated 0.26.8 to 0.26.10 ( 0.26.11, 0.27.0 are waiting) 2021-05-22 13:45:52 +00:00
chat gomuks: Enable security/olm dependency 2021-05-23 07:17:50 +00:00
comms deforaos-phone: wants alsa on linux 2021-05-15 08:16:57 +00:00
converters *: recursive bump for poppler shlib major bump 2021-05-20 11:55:55 +00:00
cross atasm: update to 1.09. 2021-03-21 10:21:07 +00:00
databases databases/ruby-tiny_tds: update to 2.1.5 2021-05-23 08:12:13 +00:00
devel libidn: update to 1.37. 2021-05-23 11:06:06 +00:00
distfiles
doc doc: Updated devel/libidn to 1.37 2021-05-23 11:06:15 +00:00
editors *: recursive bump for poppler shlib major bump 2021-05-20 11:55:55 +00:00
emulators PC6001VX: update to 3.7.2. 2021-05-22 00:36:32 +00:00
filesystems fuse-lzofs: needs zlib 2021-05-14 14:17:41 +00:00
finance py-stripe: updated to 2.57.0 2021-05-20 12:56:01 +00:00
fonts fonts/recursive-ttf: update to 1.078. 2021-04-30 18:03:21 +00:00
games ioquake3: Add generic multi-arch support, avoid bundled dependencies 2021-05-21 15:01:51 +00:00
geography geography/qgis: Update to 3.16.7 2021-05-22 13:32:22 +00:00
graphics x11rec: remove, broken with current ruby versions, broken CONFLICTS, etc 2021-05-21 16:38:58 +00:00
ham gnuradio-core: do not use lib64 2021-05-15 10:09:06 +00:00
inputmethod fcitx5-gtk: fix building with gcc10 2021-04-25 18:24:43 +00:00
lang lang/ruby-cucumber-gherkin: update to 19.0.2 2021-05-23 09:37:06 +00:00
licenses add eternal-lands-license 2021-04-04 09:36:29 +00:00
mail thunderbird-l10n: Update to 78.10.2 2021-05-23 06:49:32 +00:00
math fftw2: Note in DESCR that this is egregiously old 2021-05-22 16:57:56 +00:00
mbone *: bump PKGREVISION for perl-5.32. 2020-08-31 18:06:29 +00:00
meta-pkgs xfce4: remove reference to xfce4-mixer in comment 2021-05-06 20:40:49 +00:00
misc todoman: update to 4.0.0. 2021-05-23 11:08:39 +00:00
mk mk: Overhaul mysql.buildlink3.mk. 2021-05-21 13:20:43 +00:00
multimedia dav1d: update to 0.9.0. 2021-05-23 11:01:28 +00:00
net Update to 20210401. From the changelog: 2021-05-22 09:12:05 +00:00
news news/flnews: Update to 1.0.0 2021-05-17 11:01:34 +00:00
packages
parallel py-billiard: updated to 3.6.4.0 2021-05-06 10:36:08 +00:00
pkgtools pkgsrc-todo: fix old bug that broke adding entries at the end of the list 2021-05-20 10:51:41 +00:00
print *: recursive bump for poppler shlib major bump 2021-05-20 11:55:55 +00:00
regress regress/infra-unittests: use single quotes for string literals 2021-01-04 21:11:43 +00:00
security security: Enable olm 2021-05-23 07:16:44 +00:00
shells Add a patch, obtained from upstream, which fixes a bug with "wait -n pid" 2021-05-17 22:10:43 +00:00
sysutils pdumpfs: remove ruby package prefix 2021-05-21 17:06:51 +00:00
templates templates: disable search bar until the results are better 2021-04-21 11:14:11 +00:00
textproc link-grammar: increase ABI_DEPENDS, requested by wiz 2021-05-22 15:58:49 +00:00
time py-cftime: updated to 1.5.0 2021-05-21 08:37:49 +00:00
wm awesome: Fix PLIST for manpages 2021-05-15 16:42:43 +00:00
www firefox: Sort PLIST. No functional changes. 2021-05-22 14:00:05 +00:00
x11 redshift: install translations and examples. bump PKGREVISION. 2021-05-21 15:22:38 +00:00
_NetBSD-pkgdb _NetBSD-pkgdb: Use $@ insted of $* 2020-12-29 17:56:14 +00:00
Makefile
pkglocate
README.md *: fix a bunch of typos in README and various documentation files. 2020-12-12 10:42:47 +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.

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