diff options
Diffstat (limited to 'src/abslibre-tools')
-rwxr-xr-x | src/abslibre-tools/librestage | 46 |
1 files changed, 22 insertions, 24 deletions
diff --git a/src/abslibre-tools/librestage b/src/abslibre-tools/librestage index 234f907..908aed5 100755 --- a/src/abslibre-tools/librestage +++ b/src/abslibre-tools/librestage @@ -78,32 +78,30 @@ main() { slock 8 "${WORKDIR}/staging.lock" \ 'Waiting for a shared lock on the staging directory' for CARCH in "${ARCHES[@]}" any; do - for _basepkgname in "${pkgname[@]}"; do - for _pkgname in "${_basepkgname}" "${_basepkgname}-debug"; do - if ! pkgfile=$(find_cached_package "$_pkgname" "$(get_full_version "$_pkgname")" "$CARCH"); then - continue - fi + for _pkgname in "${pkgname[@]}" "${pkgname[@]/%/-debug}"; do + if ! pkgfile=$(find_cached_package "$_pkgname" "$(get_full_version "$_pkgname")" "$CARCH"); then + continue + 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 - xbs release "$repo" "$CARCH" - mkdir -p "${WORKDIR}/staging/${repo}" - if [[ -z $canonical ]]; then - canonical="${WORKDIR}/staging/${repo}/${pkgfile##*/}" - cmd=(cp "$pkgfile" "$canonical") - else - cmd=(ln "$canonical" "${WORKDIR}/staging/${repo}/${pkgfile##*/}") - fi - if "${cmd[@]}"; then - msg2 "%s staged on [%s]" "$_pkgname" "$repo" - staged=true - else - error "Can't put %s on [%s]" "$_pkgname" "$repo" - return 1 - fi - done + canonical="" # is empty for the first iteration, set after that + for repo in "${repos[@]}"; do + xbs release "$repo" "$CARCH" + mkdir -p "${WORKDIR}/staging/${repo}" + if [[ -z $canonical ]]; then + canonical="${WORKDIR}/staging/${repo}/${pkgfile##*/}" + cmd=(cp "$pkgfile" "$canonical") + else + cmd=(ln "$canonical" "${WORKDIR}/staging/${repo}/${pkgfile##*/}") + fi + if "${cmd[@]}"; then + msg2 "%s staged on [%s]" "$_pkgname" "$repo" + staged=true + else + error "Can't put %s on [%s]" "$_pkgname" "$repo" + return 1 + fi done done done |