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.squashfsimages 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 requiressudoon the local machine to mount the.squashfsimages. This is the default when using the "privileged" runner.BINARYBUILDER_RUNNER: When set to a runner string, alters the execution engine thatBinaryBuilder.jlwill use to wrap the build process in a sandbox. Valid values are one of"userns","privileged"and"docker". If not given,BinaryBuilder.jlwill 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_DIRandBINARYBUILDER_SHARDS_DIRenvironment variables to a path outside of the encrypted home directory.BINARYBUILDER_USE_CCACHE: When set totrue, this causes a/root/.ccachevolume to be mounted within the build environment, and for theCC,CXXandFCenvironment variables to haveccacheprepended to them. This can significantly accelerate rebuilds of the same package on the same host. Note thatccachewill, 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.