TeamAmaze / TeamAmaze/AmazeFileManager
Reproducible Builds
Nobody has claimed this yet.
- Dominant language
- Kotlin
- Stars
- 6.4k
- Forks
- 1.7k
- Avg merge
- 3d 9h
- Merged PRs (30d)
- 1
Description
I'm just trying to set up verification of Reproducible Builds for Amaze, but I got stuck – I guess due to missing details. Build currently fails with:
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':file_operations:cargoBuildArm'.
> Process 'command 'cargo'' finished with non-zero exit value 101
The build recipe used (running in a Podman container with Debian bookworm, OpenJDK 17, and NDK 28.2.13676358 (aka 28c)):
build:
- sed -r '/signingConfigs.release/d' -i app/build.gradle
- RUST_TOOLCHAIN="1.92.0"
- RUSTUP_VERSION="1.28.2"
- git clone https://github.com/rust-lang/rustup.git -b $RUSTUP_VERSION
- export ANDROID_NDK=/opt/sdk/ndk/${PROVISIONING_NDK}
- ${BUILD_REPO_DIR}/rustup/rustup-init.sh -y --default-toolchain=$RUST_TOOLCHAIN --target armv7-linux-androideabi --target aarch64-linux-android --target i686-linux-android --target x86_64-linux-android
- source $HOME/.cargo/env
- pushd file_operations
- chmod +x setup_rust_android.sh
- ./setup_rust_android.sh
- rustup target list --installed | grep android || { echo "No Android targets found"; exit 1; }
- if ! test -f .cargo/config.toml; then
- echo "❌ .cargo/config.toml missing"
- exit 1
- fi
- popd
- chmod +x gradlew
- ./gradlew assembleFdroidRelease
For several things I had to make assumptions, as your repo doesn't state (or I didn't find it), e.g. the Rust toolchain and Rustup versions used (other projects have that in some toolchains.toml). I also don't (yet) know the build path, which will be important here for RB to succeed.
Can you please give me some pointers? Thanks in advance!
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing app/build.gradle, file_operations/setup_rust_android.sh, and any existing .cargo/config.toml, then run the provided Podman/Debian build recipe through ./gradlew assembleFdroidRelease. Check how the Rust toolchain, Android targets, NDK, and build path are defined. Done means the documented setup supports the requested reproducible-build verification without the cargoBuildArm failure.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, kotlin, rust
- Domain
- build-system, mobile
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 45/100