diff options
author | Erich Eckner <git@eckner.net> | 2021-01-01 21:23:10 +0100 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2021-01-01 21:23:10 +0100 |
commit | 8ffb2ffc867e97a66c6e53307093a6c9990efb56 (patch) | |
tree | b3533b07e90a5ff701f77088f7beaf55fe1b2437 /community | |
parent | bf7f989e44fdd72b25265e2326da4b5417087717 (diff) | |
download | packages-8ffb2ffc867e97a66c6e53307093a6c9990efb56.tar.xz |
community/linux-tools: use our tarballer for that, too
Diffstat (limited to 'community')
-rw-r--r-- | community/linux-tools/PKGBUILD | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/community/linux-tools/PKGBUILD b/community/linux-tools/PKGBUILD new file mode 100644 index 00000000..9a71c096 --- /dev/null +++ b/community/linux-tools/PKGBUILD @@ -0,0 +1,58 @@ +# use our tarballer instead of cloning from git +for ((i=0; i<${#source[@]}; i++)); do + infos=$( + printf '%s\n' "${source[${i}]}" | \ + sed -n ' + s@^\(\([^:]\+\)::\)\?\(git\|hg\)+\([^#?]\+\)\(?signed\)\?#\(\(tag\|commit\)=\S\+\)$@\3 \2 \4 \5 \6@ + T + p + ' + ) + if [ -n "${infos}" ]; then + source[${i}]=$( + type="${infos%% *}" + infos="${infos#* }" + if [ -n "${infos%% *}" ]; then + prefix="${infos%% *}" + else + prefix='' + fi + infos="${infos#* }" + repo="${infos%% *}" + repo64=$( + printf '%s' "${repo}" | \ + base64 -w0 | \ + sed 's/=/%3D/g' + ) + infos="${infos#* }" + if [ "${infos%% *}" = '?signed' ]; then + key_check=$( + printf '&valid_keys=' + printf '%s,' "${validpgpkeys[@]}" | \ + sed 's/,$//' + ) + else + key_check='' + fi + infos="${infos#* }" + if [ -z "${prefix}" ]; then + prefix="${repo%.git}" + prefix="${prefix##*/}" + fi + prefix_64=$( + printf '%s/' "${prefix}" | \ + base64 -w0 | \ + sed 's/=/%3D/g' + ) + + printf '%s-%s.tar.gz::https://archive-server.archlinux32.org/?t=%s&p=%s&r=%s%s&%s\n' \ + "${prefix}" \ + "${pkgver}" \ + "${type}" \ + "${prefix_64}" \ + "${repo64}" \ + "${key_check}" \ + "${infos}" + ) + fi +done |