diff options
author | Cem Keylan <cem@ckyln.com> | 2020-05-28 16:45:43 +0300 |
---|---|---|
committer | Cem Keylan <cem@ckyln.com> | 2020-05-28 16:45:43 +0300 |
commit | 1dabf5a8d511db458dd529588e57a8ed8185787a (patch) | |
tree | c5905caa9b93fa4c63ee5e8e8dbdccd53d5aca53 /repo/kiss-cargolock-urlgen | |
parent | 7bfa97d6fa2452d0517c4f820e44033b5a50cd50 (diff) | |
download | cpt-extra-20200528.tar.gz |
added new utilities, changed repository structure20200528
Diffstat (limited to 'repo/kiss-cargolock-urlgen')
-rwxr-xr-x | repo/kiss-cargolock-urlgen | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/repo/kiss-cargolock-urlgen b/repo/kiss-cargolock-urlgen new file mode 100755 index 0000000..7d78a6a --- /dev/null +++ b/repo/kiss-cargolock-urlgen @@ -0,0 +1,21 @@ +#!/bin/sh +# Convert the given Cargo.lock file to sources + +case "$1" in + -) set -- /dev/stdin ;; + ''|--help|-h) printf '\033[1;33m-> \033[m%s\n' "usage: ${0##*/} <Cargo.lock file>" "" \ + "'-' can be used to read from stdin." ; exit 0 +esac + +# Word splitting is intentional +# shellcheck disable=2046 +set -- $(sed '/name =/b;/version =/b;d' "$1" | + sed 's/version = /#/g;s/name = //;s/"//g' | + tr '\n' ' ' | sed 's/ #/#/g') + +# We convert the name-version seperator to '#' and back to '-' +# to avoid issues that may arise from version names with a '-' +for crate in "$@" ; do + printf 'https://static.crates.io/crates/%s/%s.crate vendor\n' \ + "${crate%#*}" "$crate" | sed 's/#/-/g' +done |