Environment Variables
BinaryBuilder.jl
supports multiple environment variables to modify its behavior globally:
BINARYBUILDER_AUTOMATIC_APPLE
: when set totrue
, this automatically agrees to the Apple macOS SDK license agreement, enabling the building of binary objects for macOS systems.BINARYBUILDER_USE_SQUASHFS
: when set totrue
, this uses.squashfs
images instead of tarballs to download cross-compiler shards. This consumes significantly less space on-disk and boasts a modest reduction in download size as well, but requiressudo
on the local machine to mount the.squashfs
images. This is the default when using the "privileged" runner.BINARYBUILDER_RUNNER
: When set to a runner string, alters the execution engine thatBinaryBuilder.jl
will use to wrap the build process in a sandbox. Valid values are one of"userns"
,"privileged"
and"docker"
. If not given,BinaryBuilder.jl
will do its best to guess.BINARYBUILDER_ALLOW_ECRYPTFS
: When set totrue
, this allows the mounting of rootfs/shard/workspace directories from within encrypted mounts. This is disabled by default, as at the time of writing, this triggers kernel bugs. To avoid these kernel bugs on a system where e.g. the home directory has been encrypted, set theBINARYBUILDER_ROOTFS_DIR
andBINARYBUILDER_SHARDS_DIR
environment variables to a path outside of the encrypted home directory.BINARYBUILDER_USE_CCACHE
: When set totrue
, this causes a/root/.ccache
volume to be mounted within the build environment, and for theCC
,CXX
andFC
environment variables to haveccache
prepended to them. This can significantly accelerate rebuilds of the same package on the same host. Note thatccache
will, by default, store 5G of cached data.BINARYBUILDER_NPROC
: Overrides the value of the environment variable${nproc}
set during a build, see Automatic environment variables.