feat(zsh): add wrapper around extra-x86_64-build for caching downloaded dependencies
This commit is contained in:
parent
f5c9f368f4
commit
7bb8288d93
1 changed files with 45 additions and 0 deletions
|
@ -24,4 +24,49 @@ function tag2commit() {
|
|||
|
||||
git ls-remote $repository $tag
|
||||
}
|
||||
|
||||
# wrapper around extra-x86_64-build for caching downloaded dependencies
|
||||
# TODO expand to use testing/staging
|
||||
function ab-extra() {
|
||||
local EXTRA_ARGS=()
|
||||
|
||||
# capture output for parsing dependencies
|
||||
makepkg_output=$(makepkg --printsrcinfo)
|
||||
|
||||
#
|
||||
# cache various downloads
|
||||
#
|
||||
# rust - crates
|
||||
if grep -q "depends = rust\|cargo" <<<"$makepkg_output"; then
|
||||
EXTRA_ARGS+=(
|
||||
-d /var/cache/cargo/git:/build/.cargo/git
|
||||
-d /var/cache/cargo/registry:/build/.cargo/registry
|
||||
)
|
||||
fi
|
||||
|
||||
# go - modules
|
||||
if grep -q "depends = go" <<<"$makepkg_output"; then
|
||||
EXTRA_ARGS+=(
|
||||
-d /var/cache/golang/pkg:/build/go/pkg
|
||||
-d /var/cache/golang/build:/build/.cache/go-build
|
||||
)
|
||||
fi
|
||||
|
||||
# dart - packages
|
||||
if grep -q "depends = dart" <<<"$makepkg_output"; then
|
||||
EXTRA_ARGS+=(-d /var/cache/dartlang:/build/.pub-cache)
|
||||
fi
|
||||
|
||||
# javascript - npm/yarn/pkg
|
||||
if grep -q "depends = npm\|yarn\|nodejs" <<<"$makepkg_output"; then
|
||||
EXTRA_ARGS+=(
|
||||
-d /var/cache/javascript/npm:/build/.npm
|
||||
-d /var/cache/javascript/pkg-cache:/build/.pkg-cache
|
||||
-d /var/cache/javascript/yarn:/build/.cache/yarn
|
||||
)
|
||||
fi
|
||||
|
||||
extra-x86_64-build -- ${EXTRA_ARGS[@]} ${@}
|
||||
}
|
||||
|
||||
# vim: ft=zsh expandtab tabstop=2 shiftwidth=2
|
||||
|
|
Loading…
Reference in a new issue