cargo-updateall 336 B

1234567891011121314151617181920
  1. #!/bin/sh
  2. if ! which cargo >/dev/null 2>&1; then
  3. echo "Error: cargo not found." >&2
  4. exit 1
  5. fi
  6. for pkg in $(cargo install --list | grep '^[^[:space:]]' | awk '{print $1}'); do
  7. printf '\nUpdating %s\n' "$pkg"
  8. locked=
  9. if [ "$pkg" = "bacon" ]; then
  10. locked="--locked"
  11. fi
  12. cargo install $locked "$@" "$pkg" || exit 1
  13. done
  14. exit 0