diff --git a/ci/scripts/build-toolbox-image.sh b/ci/scripts/build-toolbox-image.sh index 26ee6468f6..5a5ef58e4e 100644 --- a/ci/scripts/build-toolbox-image.sh +++ b/ci/scripts/build-toolbox-image.sh @@ -112,6 +112,12 @@ build_container() { buildah run $build_cntr -- bash -c "echo $name ALL=\(ALL\) NOPASSWD:ALL > /etc/sudoers.d/$name" buildah run $build_cntr -- chmod 0440 /etc/sudoers.d/$name + buildah config \ + --env RUSTUP_HOME="/usr/local/rustup" \ + --env CARGO_HOME="/usr/local/cargo/" \ + --env PATH="$PATH:/usr/local/cargo/bin/" \ + $build_cntr + # Remove the hardcoded HOME env var that ci-templates adds # https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2433#note_2243222 # Also add the OCI labels that toolbox expects, to advertize that image is compatible diff --git a/ci/scripts/install-rust.sh b/ci/scripts/install-rust.sh index 25d46a2291..5604d03f42 100644 --- a/ci/scripts/install-rust.sh +++ b/ci/scripts/install-rust.sh @@ -17,6 +17,8 @@ export PATH="/usr/local/cargo/bin:$PATH" chmod +x rustup-init; ./rustup-init -y --no-modify-path --default-toolchain $RUST_VERSION; rm rustup-init; +# We are root while creating the directory, but we want it to +# be accessible to all users chmod -R a+w $RUSTUP_HOME $CARGO_HOME cargo install --locked cargo-c --version 0.10.12+cargo-0.87.0