axodotdev / axodotdev/cargo-dist
Dependency specified in meta-data is not installed
- Dominant language
- Rust
- Stars
- 2.1k
- Forks
- 149
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 32
Description
I have added the `armv7-unknown-linux-gnueabihf` target to my cargo-dist list of targets:
```
# Config for 'cargo dist'
[workspace.metadata.dist]
# The preferred cargo-dist version to use in CI (Cargo.toml SemVer syntax)
cargo-dist-version = "0.22.0"
# CI backends to support
ci = "github"
# The installers to generate for each app
installers = ["shell", "homebrew", "msi"]
# A GitHub repo to push Homebrew formulas to
tap = "andrewdavidmackenzie/pigg-tap"
# Target platforms to build apps for (Rust target-triple syntax)
targets = ["aarch64-apple-darwin", "aarch64-unknown-linux-gnu", "armv7-unknown-linux-gnueabihf", "x86_64-apple-darwin", "x86_64-unknown-linux-gnu", "x86_64-pc-windows-msvc"]
# Publish jobs to run in CI
publish-jobs = ["homebrew"]
# Which actions to run on pull requests
pr-run-mode = "plan"
# Path that installers should place binaries in
install-path = "CARGO_HOME"
# Whether to install an updater program
install-updater = false
```
And I specified the toolchain associated with that target as an install dependency via the meta-data:
```
[workspace.metadata.dist.dependencies.apt]
gcc-aarch64-linux-gnu = { version = '*', targets = ["aarch64-unknown-linux-gnu"] }
gcc-arm-linux-gnueabihf = { version = '*', targets = ["armv7-unknown-linux-gnueabihf"] }
```
However, in the [GH Action Release run](https://github.com/andrewdavidmackenzie/pigg/actions/runs/10919818571/job/30308337607)
you can see that the "Install dependencies" step is empty and the armv7 toolchain is not installed.
I have verified the target is correct, the linker name correct and the package to install is correct, and the build works in local Linux and GH Actions.
Contributor guide
Research direction
Start by reproducing the configuration under workspace.metadata.dist.dependencies.apt with the armv7 target and inspect the generated GitHub Actions Release workflow, especially the empty Install dependencies step. Compare it with the working aarch64 dependency entry and verify that the completed workflow installs gcc-arm-linux-gnueabihf before building for armv7-unknown-linux-gnueabihf.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, rust
- Domain
- build-system, ci-cd, release
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100