You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(cargo): symlink project CARGO_HOME/bin to ~/.cargo/bin, add PATH
The _setup-cargo-home task was symlinking to the mise install dir,
which contains relative multicall symlinks that break when rustup
is missing from that directory. Instead:
- Symlink project-local CARGO_HOME/bin/<tool> to ~/.cargo/bin/<tool>
- Add ~/.cargo/bin to PATH in cargo.yml env so rustup is findable
- Document the three-directory structure in AGENTS.md
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: AGENTS.md
+9-1Lines changed: 9 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -72,7 +72,15 @@ See [Tauri Architecture](docs/tauri-architecture.md) for full details.
72
72
73
73
### Rust Toolchain (mise + rustup)
74
74
75
-
mise manages the Rust version (via `.tool-versions`) but delegates to rustup under the hood. The mise install directory (`~/.local/share/mise/installs/rust/<version>/`) contains symlinks like `cargo -> rustup` — these are rustup multicall symlinks that require the `rustup` binary to be resolvable. The `cargo:_setup-cargo-home` task in `taskfiles/cargo.yml` creates `$CARGO_HOME/bin` symlinks pointing directly at `$CARGO_HOME/bin/rustup` (the real binary) rather than chaining through the mise install dir, which would break if the relative `rustup` target is missing.
75
+
Three directories are involved — do NOT cross-link them:
|`$CARGO_HOME/bin/` (project-local `.cache/cargo/bin/`) | Symlinks to `~/.cargo/bin/<tool>`|`cargo:_setup-cargo-home` task |
82
+
83
+
`cargo.yml` adds `~/.cargo/bin` to PATH so rustup tools are always findable. The `_setup-cargo-home` task symlinks project-local `CARGO_HOME/bin/` to `~/.cargo/bin/` — never to the mise install dir, which has its own internal symlink structure.
0 commit comments