diff options
Diffstat (limited to 'src/abslibre-tools')
-rwxr-xr-x | src/abslibre-tools/librestage | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/src/abslibre-tools/librestage b/src/abslibre-tools/librestage index d566fa9..63561f7 100755 --- a/src/abslibre-tools/librestage +++ b/src/abslibre-tools/librestage @@ -74,25 +74,20 @@ main() { 'Waiting for a shared lock on the staging directory' for CARCH in "${ARCHES[@]}" any; do for _pkgname in "${pkgname[@]}"; do - pkgfile=${_pkgname}-$(get_full_version $_pkgname)-${CARCH}${PKGEXT} - pkgpath="$(find . "${PKGDEST:-.}" -maxdepth 1 -type f -name "$pkgfile"|sed 1q)" - - if [[ ! -f "${pkgpath}" ]]; then + if ! pkgfile=$(find_cached_package "$_pkgname" "$(get_full_version "$_pkgname")" "$CARCH"); then continue - else - pkgpath="$(readlink -f "$pkgpath")" fi - msg 'Found package: %s' "${pkgfile}" + msg 'Found package: %s' "${pkgfile##*/}" canonical="" # is empty for the first iteration, set after that for repo in "${repos[@]}"; do mkdir -p "${WORKDIR}/staging/${repo}" if [[ -z $canonical ]]; then - canonical="${WORKDIR}/staging/${repo}/${pkgfile}" - cmd=(cp "$pkgpath" "$canonical") + canonical="${WORKDIR}/staging/${repo}/${pkgfile##*/}" + cmd=(cp "$pkgfile" "$canonical") else - cmd=(ln "$canonical" "${WORKDIR}/staging/${repo}/${pkgfile}") + cmd=(ln "$canonical" "${WORKDIR}/staging/${repo}/${pkgfile##*/}") fi if "${cmd[@]}"; then msg2 "%s staged on [%s]" "$_pkgname" "$repo" |