Over the last few months, I have been working on porting the
tool stack to FreeBSD, using the FreeBSD jail
subsystem for isolation. This builds on Samuel Karp's earlier work on runj,
which is a jail-based OCI runtime.
Since buildah v1.27.0 contains working FreeBSD support for building
container images and it looks like this will be vendored into podman quite
soon, I would like to get the much larger set of changes for podman on
FreeBSD into review somehow.
The complete set of FreeBSD changes is much too large for a single PR, so
I'm going to try to take this one file at a time. My plan is approximately:
1. Add enough stubs to libpod to make it compile on FreeBSD (without
working at all)
2. Pick a file from libpod/*_freebsd.go, ideally with the smallest set
of cross dependencies and make a PR which adds the freebsd file and in a
small stack of commits, factors out as much as possible of the shared code
between linux and freebsd.
3. Work through review as normal until the PR can be merged.
4. Go to step 2 unless I'm done.
Does this seem reasonable? It's going to take a while - my working branch
has 21 freebsd files with varying degrees of complexity.