Skip to content

Configuration

Every workspace is described by a single BitForge.toml at its root. BitForge reads it on start and rewrites the derived conf/bblayers.conf whenever layers or dependencies change. This page documents each section.

Identifies the project and pins the toolchain versions.

[workspace]
name = "my-distro"
bitbake = "2.8"
yocto_release = "scarthgap"
KeyTypeDefaultDescription
namestringWorkspace name.
bitbakestring”2.8”BitBake branch to clone into ForgeSource/.
yocto_releasestringDefault release/branch used for layers that don’t set their own ref.

Your own layers, one entry per layer, scaffolded under layers/.

[[layers]]
name = "meta-my-distro"
path = "layers/meta-my-distro"
priority = 6
KeyTypeDescription
namestringLayer name (normalized to the meta- convention).
pathstringPath to the layer within the workspace.
priorityintegerBitBake layer priority.

Upstream layers cloned into ForgeSource/. The table is keyed by a repository name and then by each linked layer.

[dependency.meta-openembedded.meta-oe]
giturl = "https://git.openembedded.org/meta-openembedded"
branch = "scarthgap"
[dependency.meta-openembedded.meta-python]
giturl = "https://git.openembedded.org/meta-openembedded"
branch = "scarthgap"
KeyTypeDescription
giturlstringRepository URL.
branchstringBranch to check out (mutually exclusive with tag/commit).
tagstringTag to check out.
commitstringExact commit to check out.
pathstringSub-directory within the repo when the layer is nested.

The image used when --build is run without a target.

[default]
image = "core-image-minimal"

Controls the built-in web server. All keys are optional.

[server]
host = "0.0.0.0"
port = 8080
shutdown_grace_secs = 20
activity_timeout = 3
http1_keep_alive = true
KeyTypeDefaultDescription
hoststring”0.0.0.0”Interface to bind.
portinteger0 (auto)Port to bind; 0 picks a free port.
shutdown_grace_secsinteger20Seconds to wait for in-flight work on shutdown.
activity_timeoutinteger3Idle timeout in minutes.
http1_keep_alivebooltrueEnable HTTP/1 keep-alive.
http2_keep_alive_secsintegerunsetHTTP/2 keep-alive interval in seconds.
[workspace]
name = "my-distro"
bitbake = "2.8"
yocto_release = "scarthgap"
[[layers]]
name = "meta-my-distro"
path = "layers/meta-my-distro"
priority = 6
[dependency.openembedded-core.meta]
giturl = "https://git.openembedded.org/openembedded-core"
branch = "scarthgap"
[dependency.meta-openembedded.meta-oe]
giturl = "https://git.openembedded.org/meta-openembedded"
branch = "scarthgap"
[default]
image = "core-image-minimal"
[server]
host = "0.0.0.0"
port = 8080