NetBSD-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Ravenports available on NetBSD 10/AMD64
It's probably not well known amongst NetBSD users, but I've been
developing a universal packaging system for *nix platforms for the
last several years, but only supporting x86-64 right now. At one
time, one could build packages for DragonFly, FreeBSD, Solaris 10,
MacOS/Darwin, NetBSD, and Linux. MacOS support was dropped because
Mach-o was a pain and I lost access to a good build machine. Solaris
10 support is stale, but I plan to bootstrap OmniOS soon in order to
provide packages for Illumos systems (hopefully OmniOS, OpenIndiana
and SmartOS).
Since Ravenports natively supports subpackages, package counts between
repositories can not be directly compared. For example, FreeBSD ports
created 7 ports (so 7 packages) for one release of postgresql while we
have 1 port with 11 subpackages to package the same files. Similarly,
VLC with its plugins takes over 50 ports/packages on FreeBSD while
Ravenports captures this with a single port of 57 subpackages.
The currency of the ports is impressive. It's consistently at the
very top of Repology currency list ("By percentage of up to date
projects"), ranging from 95-99% currency typically.
see: https://repology.org/
That is to say, for ports we have in common with pkgsrc, Ravenports
typically features much newer releases. For those curious, browse the
catalog:
https://www.ravenports.com/catalog/
The (basically static) web site is here:
https://www.ravenports.com/
Quick start instructions are in a couple of places:
Instructions for quick downloader:
https://www.ravenports.com/repository/___README___.txt
More in-depth instructions (may need improvements):
https://github.com/Ravenports/Ravenports/wiki/quickstart-netbsd
Work-in-progress wiki:
https://github.com/Ravenports/Ravenports/wiki
Recently somebody requested we open discussions at Github and that's
been working really well. I just created a section specifically for
NetBSD users there:
https://github.com/orgs/Ravenports/discussions/categories/netbsd
I don't really want to get into a compare-and-contrast discussion with
pkgsrc, but I guess a few bullets are needed.
- Intended primarily as binary package management.
Yes, one can build every single package themselves if they want to.
There's nothing stopping you. There's just no real benefit to doing
it assuming the master package repository is frequently up to date.
Ravenports specifications *do* support options like you see in pkgsrc
and FreeBSD ports, but it is not that common. The reason why is
because not only does Ravenports support subpackages natively, it also
supports "variants" natively. In FreeBSD-speak, those are "flavors".
So one port can produce multiple package sets. So if there's a
distinct need for different option settings, we simply create multiple
variants so people can select the package with the build options they
need. So the main reason users of other package system to "build your
own" almost doesn't exist in Ravenports.
- New package manager called "rvn"
This package manager is written in Ada. In function, it heavily
resembles the FreeBSD "pkg" package manager. Differences have
emerged, but if one is familiar with "pkg" they will be right at home
with "rvn".
- Extremely fast
I have not used pkgsrc in many years, so I can't speak to that. But
building an index on the entire FreeBSD ports tree takes anywhere from
8 to 30 minutes on a modest machine. To build the index on Ravenports
on the same machine takes 1 to 2 seconds. Similar performance is seen
with purging obsolete distribution files and logs.
- Ravenadm builds multiple packages in parallel naturally.
If anyone is familiar with the FreeBSD Synth tool (which I wrote many
years ago), they will find the same interface with ravenadm. It's
both ncurses-based and web-based, tracking many builders (up to 128)
that tracks multiple simultaneous builds with almost no set up. For
beefy machines you might configure it for 9 builders each with 10
parallel jobs.
NetBSD support of Ravenports is in great shape. I think the only port
that's not building right now is lldb. I also need to push
thunderbird 138.0 to the repo tonight that had a linking issue this
morning.
We've got no NetBSD contributors. The main problem with this is I am
sure we are missing paxctl support in several packages. We'd be
thrilled if a NetBSD afficionado or two would help make NetBSD support
better -- something along the line of frequent builds to identify
recent breakage and providing NetBSD-specific tweaks so as paxctl and
probably some patching (I admit to raiding pkgsrc patches for NetBSD
build fixes fairly often).
anyway ---
if you use NetBSD/AMD64 (release 10.0 or greater) and you are
interested in exploring a new package option, check Ravenports out.
I'd say use the Github Discussion area for specific questions and
assistance. I'd love to get feedback. We've been maintaining NetBSD
packages for at least 2 years, but I didn't want to announce anything
until rvn hit the 1.0.0 milestone.
Regards,
John Marino
Home |
Main Index |
Thread Index |
Old Index