Skip to content
Choose a tag to compare

Captain Jack

@cedwards cedwards released this
· 685 commits to master since this release
Choose a tag to compare



This release is dedicated to my son, Jack, who has a birthday today. Happy
birthday, buddy.


This release includes a number of exciting new features and fixes to reported
issues. Thank you to everyone that submitted feedback, GitHub issues and Pull

Container Types

This release introduces support for a different container design. By default,
containers use a read-only nullfs mount of a release, which is mounted when the
container is started. This method limits any changes to binaries in base path.

Now supported are read-write containers. This method replicates the contents of
base into the container, allowing the container to manage FreeBSD version
independent of any other container.

To use (or test) this method of container storage use the new -T|--thick
option to the create sub-command.


bastille create -T alcatraz 12.1-RELEASE

Template Testing

Automation templates have been moved to GitLab and now take advantage of
automated CI/CD testing. These templates (and usage instructions) can be found
at BastilleBSD Templates.

The CI/CD pipeline status shown in the README of each template. You'll know the
quality of your template before you try to apply it.

The Bastille template system has been improved with more verbose output and
stricter testing. If any part of the template exits with a non-zero (OK)
status, the template stops.

Exit code now displayed during template application.

This release adds the ability to update (freebsd-update) a release at the
time of bootstrapping. This means you can bootstrap 12.0-RELEASE and bring it
up to -p11 in the same step.

The update argument is a new option to bootstrap.


bastille bootstrap 12.0-RELEASE update


BastilleBSD has been updated to reflect this release.

Follow @BastilleBSD on Twitter for regular updates.

bug fixes

  • fixed an issue with creating 12.1-RELEASE containers
  • fixed an issue with usr/obj and usr/test being mistakenly copied to the wrong path
  • improved the jail.conf generation template
  • cleaned up the release filtering and validation code
  • template output silent when no template found
  • updated documentation to avoid pf.conf inconsistency
  • updated BastilleBSD Documentation