https://github.com/sharkdp/fd/releases/download/v8.4.0/fd-mu...
I mean, I get it — I used to locally install vim on machines that only had vi, to make my muscle memory be functional when editing files. But it’s not the same as a core tool just being available by default so you don’t have to ever concern yourself with any alternatives.
For example
go run sigs.k8s.io/kind@latest create cluster
I wonder if something like this exists for rustIf you shouldn't trust it but you do anyway and someone uses that against you - they exploited your trust.
cargo install broot exa miniserve ripgrep tuc xh xsv zellij
Cargo is the package manager you are looking for.Your scripts could have a prolog that installs rustup and calls cargo.
There is also https://github.com/ryankurte/cargo-binstall
Even after 20 years of bashing, my bash skills still suck. So many corner cases!
But if you include this, and call install_utils at the head of your scripts. It should install the tools on demand.
#!/bin/bash
RUST_PACKAGE_LIST='rg xsv tuc broot du-dust dutree'
RUST_UTIL_LIST='rg xsv tuc broot dust dutree'
function is_cargo {
cargo > /dev/null
}
function is_utils {
eval "which $RUST_UTIL_LIST" > /dev/null
}
function install_utils {
if ! is_utils ; then
if ! is_cargo; then
curl https://sh.rustup.rs -sSf | sh -s -- -y
fi
eval "cargo install --locked $RUST_PACKAGE_LIST" > /dev/null
fi
}
I don't recommend using this, it is just illustrative.