3 ms·
Have you considered doing something like this: cargo build --target-dir ~/build-artifacts/$(basename $(pwd)) Then you can have something like this in your ~
by asgeir 7y ago
Have you considered doing something like this:
cargo build --target-dir ~/build-artifacts/$(basename $(pwd))
Then you can have something like this in your ~/.config/user-tmpfiles.d/clean_build.conf
d /home/user/build-artifacts - - - 1d -
You can then do cleanup by calling
systemd-tmpfiles --user
Or you can use the tmpfiles timer
systemctl enable --user --now systemd-tmpfiles-clean.timer
- leggomylibro 7y agoThat sounds like an interesting idea, thanks! Can that '--target-dir' argument be added in the build.rs script?
- asgeir 7y agoIt looks like you can set it using a CARGO_TARGET_DIR environment variable or build.target-dir config value. So I guess you could create a $HOME/.cargo/config file with the following in it (letting you skip the --target-dir part): [build] target-dir = "/home/user/build-artifacts" But I don't know if the different projects will trample each other that way. If that's the case you could just go with a .cargo/config per-project targeting a subdirectory of the build-artifacts directory. https://doc.rust-lang.org/cargo/commands/cargo-build.html https://doc.rust-lang.org/cargo/commands/cargo-build.html https://doc.rust-lang.org/cargo/reference/config.html https://doc.rust-lang.org/cargo/reference/config.html