Reclaiming disk space from cargo's target/ directories
You never really appreciate disk space until it’s all gone. This morning I
noticed that my laptop had come perilously close to exhausting all its
available disk space. Oops! Normally I would prune some Docker images with
docker system prune -f but this time around I couldn’t blame Docker, the
wasted space was due to cargo,
critical part of the Rust development toolchain.
cargo does anything within a project directory, it will store all it’s
working state (dependencies, etc), inside of the
./target/ directory. The
more projects you work on, the more
target/ directories you will accrue, each
taking up tens or hundreds of megabytes of disk.
I have adopted cargo-sweep to help
grapple with the sprawling disk utilization of my local Rust projects.
sweep can be run on a per-project basis or recursively for a file system
-r. In my case,
cron is going to make sure that my future free
space problems will not be cargo’s fault!
15 1 * * * ~/.cargo/bin/cargo sweep -r -t 30 ~/source