The ordinary OpenBSD installation procedure allows for installing an additional site-specific file set called siteXX.tgz
(where XX
is the current release number, e.g. 67
for release 6.7).
The OpenBSD FAQ says this about that:
The OpenBSD install and upgrade scripts allow the selection of a user-created set called siteXX.tgz
, where XX
is the release version. Like the official file sets, this is a tar(1)
archive rooted in /
and untarred with the -xzphf
options. It is installed last, so it can be used to complement and modify the files from a default install. Furthermore, it is possible to use hostname-dependent sets named siteXX-$(hostname -s).tgz
. [...]
You also have the opportunity to provide a script for scripting certain things during the installation process:
If the siteXX.tgz
file set contains an executable file /install.site
, the installer runs it with chroot(8)
based at the freshly installed system's root. [...]
Example usage:
- Set the system time.
- Do an immediate backup/archive of the new system before you expose it to the rest of the world.
- Have a set of arbitrary commands be run after the first boot. This will happen if
install.site
is used to append any such commands to an rc.firsttime(8)
file [...]
Such a script could, for example, call pkg_add
to install various packages, possibly from a local server if you so wish.