FreeBSD devsummit notes: ports & packages

The ports and packages summit was a lot more discussion of options as opposed to the state of items and future plans. A very dynamic session, where each of the dozen or so scheduled speakers was more “moderator of the moment.” Plus, I staggered in half an hour late, because breakfast was really really good.

But, in general, what happened:

I walked in on an overview of Debian packages. It’s always good to assess others’ work.

Discussions on dependencies.

Ed Maste on possibly using certificate transparency via X.509v3 extension, rather than creating our own signing infrastructure.

Using qemu BSD user mode for cross-building packages. Qemu still needs some work, and you can pitch in.

bapt: want to control what scripts can do, so arbitrary scripts can’t harm system. Have the system provide a utility that will let programs check config files or update a database, rather than run arbitrary scripts. Would also help with cross-building packages.

Cross-building is improving. Now nightly ARM crossbuild packages in test. Hopefully ready by EuroBSDCon.

PortCI: project for build cluster automation. Various port building processes are manual, such as testing and QAT. PortCI lets you manage these queues easily via a simple front end. The idea is to eventually let commiters request and configure their own experimental runs.

Jenkins – https://jenkins.freebsd.org. Uses bhyve VMs. Testing ports on all platforms.

Do not use freebsd-version(1) in the ports tree. Designed only for use in the base system. Security fixes that don’t touch the kernel won’t affect uname -r, and freebsd-version doesn’t apply to releases built from source. Ports tree needs something to say exactly what version you have no matter which how that version was produced.

Discussion on handling port licenses.

Packaging base! pkg doesn’t handle chflags yet, but they’re working on it. Split packages per build system option. But this changes how some programs are linked–what about NIS? Bapt is pondering that. We could offer multiple versions of packages, such as NIS-free. But FreeBSD’s “build system is not a paragon of configurability, but a bunch of hacks on what annoyed people the most” (Warner Losh).

I’m teaching in less than an hour, so I left the discussion here.

1 comment to FreeBSD devsummit notes: ports & packages