While there is the Linuxulator as a kernel-level solution on FreeBSD for running unmodified Linux binaries that can even work for gaming on FreeBSD, running BSD applications on Linux isn’t talked about as much. But developers have found that for those wanting to run BSD applications in Linux environments, the urunc lightweight container runtime can work out rather well for efficiently handling BSD apps on Linux.
For those that happen to have software that is only tailored to the BSDs and not Linux environments or cases like select network workloads that may perform better under BSDs, developers have got the urunc container runtime to work out rather well for BSD environments running efficiently on Linux hosts.
Charalampos Mainas and Anastassios Nanos presented at FOSDEM 2026 this past weekend around their work on leveraging urunc for BSD applications on Linux via urunc containers. In addition to the urunc runtime itself, also a part of the puzzle is Bunny as a tool for building Unikernels as easy as building containers.
They have found this urunc-based approach to have lower start times than the likes of Kata Containers with QEMU while also enjoying higher performance. This solution also works with the likes of Kubernetes.
They do also have ideas to further strip down their kernel and root file-system, integrating with FreeBSD OCI images, potential Docker builds with a BSD rootfs using ZFS, and other avenues to explore.
Those wanting to learn more about this path for running BSD applications via urunc within Linux environments can do so via the presentation assets on FOSDEM.org.
