tazpkg diff modules/install @ rev 970
Modules "get" and "install": fix cookmode again
author | Aleksej Bobylev <al.bobylev@gmail.com> |
---|---|
date | Mon Nov 26 18:53:08 2018 +0200 (2018-11-26) |
parents | ed2904dae9f2 |
children | 9d683c983e2e |
line diff
1.1 --- a/modules/install Mon Nov 26 12:33:58 2018 +0200 1.2 +++ b/modules/install Mon Nov 26 18:53:08 2018 +0200 1.3 @@ -46,11 +46,12 @@ 1.4 if [ -n "$local" ]; then 1.5 # Search for virtual packages 1.6 if [ -n "$cookmode" ]; then 1.7 - pi='/home/slitaz/packages/packages.info' 1.8 - [ -e "$pi" ] || pi="/home/slitaz/packages/packages-$SLITAZ_ARCH.info" 1.9 + pi="/home/slitaz/packages/packages-$SLITAZ_ARCH.info" 1.10 + [ -e "$pi" ] || pi='/home/slitaz/packages/packages.info' 1.11 else 1.12 pi="$(dirname "$2")/packages.info" 1.13 fi 1.14 + 1.15 [ -f "$pi" ] && 1.16 out=$(awk -F$'\t' -vpkg="$1" '{ 1.17 # if package name or provided package name matched 1.18 @@ -183,8 +184,10 @@ 1.19 if [ -n "$local" ]; then 1.20 [ -z "$quiet" ] && _ 'Checking if package "%s" exists in local list...' "$pkg" 1.21 [ -n "$cookmode" ] && dir='/home/slitaz/packages' 1.22 - pi="$dir/packages.info" 1.23 - [ -e "$pi" ] || pi="$dir/packages-$SLITAZ_ARCH.info" 1.24 + 1.25 + pi="$dir/packages-$SLITAZ_ARCH.info" 1.26 + [ -e "$pi" ] || pi="$dir/packages.info" 1.27 + 1.28 # Find local package 1.29 if [ -f "$pi" ]; then 1.30 # Packages database exists (should be everfresh!) 1.31 @@ -200,13 +203,18 @@ 1.32 if (index(" " $10 " ", " " pkg " ")) { printf("%s-%s", $1, $2); exit; } 1.33 }' "$pi") # <namever> = <package_name>-<package_version> 1.34 1.35 - # Package file may be in form <namever>.tazpkg or <namever>-<arch>.tazpkg, so find one 1.36 - [ -n "$namever" ] && pkgfile=$(find "$dir" -name "$namever*.tazpkg") 1.37 + # Package file may be in form <namever>-<arch>.tazpkg or <namever>-any.tazpkg, so find one 1.38 + if [ -n "$namever" ]; then 1.39 + pkgfile=$(find "$dir" -name "$namever-$SLITAZ_ARCH.tazpkg") 1.40 + [ -n "$pkgfile" ] || 1.41 + pkgfile=$(find "$dir" -name "$namever-any.tazpkg") 1.42 + fi 1.43 + 1.44 [ -n "$pkgfile" ] && found='1' 1.45 else 1.46 # Packages DB missing, proceed to sniff packages 1.47 tempd="$(mktemp -d)"; cd "$tempd" 1.48 - for pkgfile in $dir/$pkg-*.tazpkg; do 1.49 + for pkgfile in $dir/$pkg-*-$SLITAZ_ARCH.tazpkg $dir/$pkg-*-any.tazpkg; do 1.50 [ -e "$pkgfile" ] || continue 1.51 # Extract receipt from each matched package 1.52 cpio -F "$pkgfile" -i receipt >/dev/null 2>&1 1.53 @@ -274,11 +282,9 @@ 1.54 1.55 # Try to find short description for mirrored package 1.56 if [ -z "$short_desc" ]; then 1.57 - if [ -e "$PKGS_DB/packages.info" ]; then 1.58 - pi="$PKGS_DB/packages.info" 1.59 - else 1.60 - "$PKGS_DB/packages-$SLITAZ_ARCH.info" 1.61 - fi 1.62 + pi="$PKGS_DB/packages-$SLITAZ_ARCH.info" 1.63 + [ -e "$pi" ] || pi="$PKGS_DB/packages.info" 1.64 + 1.65 short_desc=$(awk -F$'\t' -vp="$1" '$1==p{print $4; exit}' "$pi") 1.66 fi 1.67