More information about Ravenports
dragonflybsd at marino.st
Tue Sep 5 07:20:00 PDT 2017
There's been some teasing about Ravenports over the last few months, but
the topic wasn't really formally introduced. I did introduce it on the
FreeBSD forum over the weekend. Here's an excerpt from that post:
> I haven't made many commits to Synth over the last few months and there's an explanation for that. I've been developing a OS-agnostic ports and package builder system called Ravenports. Briefly there are 3 integrated components to the system:
> ravensource (files used to compile a port buildsheet)
> Ravenports (a collection of buildsheets, single file analog to a FreeBSD port)
> ravenadm (an administration / builder tool resembling synth)
> The ravenports have major technical advantages over FreeBSD ports such as:
> variant ports (similar to openbsd flavors, replaces freebsd master/slave ports)
> subpackages (ports can create 1 or more subpackages, e.g. you can load just a fortran runtime library instead of pulling in the entire GCC)
> multiversioning (you can use python2 and 3 simultaneously, php 56 and 71 simultaneously, perl 5.24 and 5.26 simultaneously etc, and build packages for all versions in the same build instead of picking just one default)
> 2-4 orders of magnitude faster with regards to scanning and processing
> due to compilation of ravensources into ravenports, syntax checking and linting are inbuilt, eliminating all sources of common contributor issues.
> built-in support for alternative versions of stock ports, aimed at corporate users to truly tailor for their needs.
> The other major advantage of course is that Ravenports is not anchored to a single operating system as FreeBSD ports and pkgsrc are. It's a true "write once, build many" mechanism that require a minimal amount of platform-specific directives. This allows high-quality packages for all supported platforms, but the "virtual machine" approach means each supported OS/architecture combination has to be bootstrapped (probably by me) which is a long and complex procedure. This leads to the drawback of Ravenports only being currently available on FreeBSD/amd64 (11+), DragonFly, and Linux (all glib 2.6.32-based linux). Solaris/Illumos is next on my list.
> I just revealed a new website: http://ravenports.ironwolf.systems/
Anyway, if you are interested, check out the website. At the bottom of
the page is a link to a new mail list. I'm still porting popular
packages over but need feedback on what should come first. For example,
emacs and vim are not yet in, but neovim is. It seems that the more
popular a port is, the more complex it is to translate the port. :)
mostly it's just cruft though.
Also, installed ravenports can run alongside dports without conflict.
Building is also not an issue; they are completely isolated.
More information about the Users