tazpkg diff modules/get @ rev 968

Modules "get" and "install": initial support for Cooker contain two architectures packages in one "packages" folder
author Aleksej Bobylev <al.bobylev@gmail.com>
date Mon Nov 26 12:33:58 2018 +0200 (2018-11-26)
parents ed775bd23145
children f40de1e052aa
line diff
     1.1 --- a/modules/get	Fri Apr 27 13:29:11 2018 +0300
     1.2 +++ b/modules/get	Mon Nov 26 12:33:58 2018 +0200
     1.3 @@ -157,14 +157,18 @@
     1.4  
     1.5  		# Extra-cache should contain packages DB files (packages.info, etc.)
     1.6  		# to list extra-packages contained in the extra-cache
     1.7 -		[ ! -f 'packages.info' ] && tazpkg mkdb "$extra_cache" --root='' --forced >/dev/null
     1.8 +		[ ! -e 'packages.info' -a ! -e "packages-$SLITAZ_ARCH.info" ] &&
     1.9 +			tazpkg mkdb "$extra_cache" --root='' --forced >/dev/null
    1.10  
    1.11 -		if [ -f 'packages.info' ]; then
    1.12 -			awk -F$'\t' -vp="$1" '$1==p{exit 1}' packages.info
    1.13 +		pi='packages.info'
    1.14 +		[ -e "$pi" ] || pi="packages-$SLITAZ_ARCH.info"
    1.15 +
    1.16 +		if [ -e "$pi" ]; then
    1.17 +			awk -F$'\t' -vp="$1" '$1==p{exit 1}' $pi
    1.18  			if [ "$?" -eq 1 ]; then
    1.19  				[ -z "$quiet" ] && _ 'Package "%s" already in the cache' "$1" >&2
    1.20  				echo -n "$(pwd)/"
    1.21 -				awk -F$'\t' -vp="$1" '$1==p{printf "%s-%s.tazpkg\n", $1, $2; exit}' packages.info
    1.22 +				awk -F$'\t' -vp="$1" '$1==p{printf "%s-%s.tazpkg\n", $1, $2; exit}' $pi
    1.23  				exit 0
    1.24  			fi
    1.25  		fi
    1.26 @@ -347,10 +351,13 @@
    1.27  
    1.28  	IFS=$'\n'
    1.29  	for rep in $PRIORITY; do
    1.30 -		[ ! -f "$rep/packages.info" ] && continue
    1.31 +		pi="$rep/packages.info"
    1.32 +		[ ! -e "$pi" ] && pi="$rep/packages-$SLITAZ_ARCH.info"
    1.33 +		[ ! -e "$pi" ] && continue
    1.34 +
    1.35  		# If found, output string "<name>-<ver>"
    1.36  		namever=$(awk -F$'\t' -vpkg="$(virtual_pkg "$1" "$rep")" \
    1.37 -			'$1==pkg || $1"-"$2==pkg {printf "%s-%s", $1, $2; exit}' "$rep/packages.info")
    1.38 +			'$1==pkg || $1"-"$2==pkg {printf "%s-%s", $1, $2; exit}' "$pi")
    1.39  
    1.40  		case $SLITAZ_ARCH in
    1.41  			i?86) pkgfile="$namever.tazpkg";;
    1.42 @@ -434,15 +441,18 @@
    1.43  	[ -e "/etc/slitaz/cook.conf" ] && . /etc/slitaz/cook.conf
    1.44  
    1.45  	# Find local package
    1.46 +	pi="$PKGS/packages.info"
    1.47 +	[ -e "$pi" ] || pi="$PKGS/packages-$SLITAZ_ARCH.info"
    1.48 +
    1.49  	namever="$(awk -F$'\t' -vpkg="$1" '{
    1.50  		if ($1 == pkg) { printf("%s-%s", $1, $2); exit; }
    1.51 -	}' $PKGS/packages.info)"
    1.52 +	}' $pi)"
    1.53  
    1.54  	# Find local provided package
    1.55  	[ -n "$namever" ] ||
    1.56  	namever="$(awk -F$'\t' -vpkg="$1" '{
    1.57  		if (index(" " $10 " ", " " pkg " ")) { printf("%s-%s", $1, $2); exit; }
    1.58 -	}' $PKGS/packages.info)"
    1.59 +	}' $pi)"
    1.60  
    1.61  	[ -n "$namever" ] && pkgfile=$(find "$PKGS" -name "$namever*.tazpkg")
    1.62