A BSD plan: license summaries

I had a sometimes-great, sometimes-difficult trip to New York City over the past few days, and while I was there, I met the ball of energy that is George Rosamond of NYCBUG (which is having a huge party right now.)  He and I talked for a bit about various aspects of the BSD ecosystem, and one thing he noted was that people aren’t generally aware of all the licenses in use for the different software packages on the system, or even the individual licenses in the system files.

There is an ACCEPTABLE_LICENSES setting in pkgsrc, where software licensed under terms not in that list won’t install.  That’s useful, but frustrating, because it keeps people from getting what they asked for – a software install.  Something that would be useful – and it could be cross-BSD very easily – would be a license audit summary.

There’s meta-data on every package in FreeBSD’s ports and DragonFly’s dports and pkgsrc and OpenBSD’s port system.  Why not say ‘pkg licenses’ in the same way you can say ‘pkg info’, and get a summary of the licenses you have installed in the system?  (or pkg_licenses, etc.  You get the idea)  This wouldn’t prevent people from installing software, but it would give a very quick view of what you were using.


> pkg licenses

Software package    License
----------------    -------
foo-2.2.26          Apache license
bar-7.999999        Donateware
baz_ware-20131209   MIT
quux-silly-6.5      BSD

It could be extended to the base system, but I’d like to see this in all the packaging systems as a common idea, in the same way that ‘info’ in a packaging command always shows what’s installed.

Hammer2 status

This is a little old, but Matthew Dillon noted the status of his Hammer2 work a little while ago.  Some highlights: he’s intending Hammer2 to be usable on a single host by the time of the next DragonFly release (summer 2014), the Summer of Code project for compression has already been integrated, and he listed different parts of the work that may be interesting for anyone wanting to chip in.

Slightly related: Matt posted some Hammer2 comments on the DragonFly 3.6 release story on Slashdot that may be interesting.  Don’t bother reading the other comments; they’ll make your eyeballs bleed.

DragonFly 3.6 released

The 3.6 release of DragonFly is available now.  I just put up those images last night, so if your favorite mirror doesn’t have it, give it a few hours.

For those updating from 3.4 to 3.6: there’s an ABI change, so you will have to upgrade all your packages.  If you’re using pkgsrc and ready to switch to dports, now’s the time.  If you already switched to dports on your 3.4 system, binary packages for 3.6 have already been built and you can use pkg to upgrade.

Also for upgrades from 3.4: You can pull the 3.6 source normally:

cd /usr/src
git fetch origin
git branch DragonFly_RELEASE_3_6 origin/DragonFly_RELEASE_3_6
git checkout DragonFly_RELEASE_3_6

But there’s a slight change needed for the 3.4 to 3.6 transition: an extra reboot in the build process:

# make buildworld && make buildkernel && make installkernel && make installworld && reboot

# make upgrade

This is all noted in /usr/src/UPDATING and in the release notes, but I’m taking no chances.

In Other BSDs for 2013/11/09

Not sure why, but there wasn’t a lot of things this week to pick out.