# Bottlerocket Out of Tree Builds --- ### What is it? * Enable the experience of easily customizing your own Bottlerocket Build * Maintain a separate repo with only your changes, plus some config files **Issue**: "Enable out-of-tree Bottlerocket Variants" https://github.com/bottlerocket-os/bottlerocket/issues/2669 --- ### Goals: * Simple to reason about updating to latest upstream Bottlerocket code * Ability to add customize packages and supported settings --- ### New Build Tool * Currently called `sodapop` * Tooling for managing "out-of-tree" variants * Allows adding custom packages * Handles dependency interaction with Bottlerocket SDK and Core image * Performs image builds --- ### Modular Settings * Settings will be owned by settings "handlers" * Handlers are binaries on the filesystem * Handlers implement migrations, rendering configuration templates, etc for the settings that they own