NBPR.Buildroot.Backend.Shell (NBPR v0.2.1)

Copy Markdown View Source

Buildroot backend that runs make natively on the host.

Only usable inside the Nerves canonical build env (mix nerves.system.shell or the nerves_system_br container), detected by in_canonical_env?/0. There the toolchain wrappers, sysroot paths, and ABI flags already match the canonical build, so no container is needed — and nesting one would be redundant.

Unlike the container backends, extraction happens on the host in Elixir (NBPR.Buildroot.FilesList.copy!/4) because the build dir is a plain directory the host can read directly.

Summary

Functions

Returns true when we're already running inside a Nerves canonical build env (so a container backend would be redundant).

Functions

in_canonical_env?()

@spec in_canonical_env?() :: boolean()

Returns true when we're already running inside a Nerves canonical build env (so a container backend would be redundant).

Detection: IN_NERVES_DEV_SHELL=1 env var, or /home/nerves/project exists on disk (the standard working dir in nerves_system_br images).