spk rev 60

Bunch of improvment, new extract_fileslist function in libspk.sh
author Christophe Lincoln <pankso@slitaz.org>
date Thu May 17 23:40:23 2012 +0200 (2012-05-17)
parents c14dd480d1d4
children bfd859410ab4
files README lib/libspk.sh spk spk-add
line diff
     1.1 --- a/README	Thu May 17 20:05:16 2012 +0200
     1.2 +++ b/README	Thu May 17 23:40:23 2012 +0200
     1.3 @@ -25,7 +25,7 @@
     1.4  	* spk-up     : Upgrade the whole system
     1.5  	* spk-search : Search for packages or files
     1.6  	* spk-archive: Manage package extraction, compression, and packing
     1.7 -	* spk-mirror : Manage mirrors and undigest
     1.8 +	* spk-mirror : Manage official and extra mirrors
     1.9  
    1.10  
    1.11  LibSpk
     2.1 --- a/lib/libspk.sh	Thu May 17 20:05:16 2012 +0200
     2.2 +++ b/lib/libspk.sh	Thu May 17 23:40:23 2012 +0200
     2.3 @@ -16,10 +16,12 @@
     2.4  installed="${root}${PKGS_DB}/installed"
     2.5  pkgsdesc="${root}${PKGS_DB}/packages.desc"
     2.6  pkgsmd5="${root}${PKGS_DB}/packages.$SUM"
     2.7 +pkgsequiv="${root}${PKGS_DB}/packages.equiv"
     2.8  blocked="${root}${PKGS_DB}/blocked.list"
     2.9  activity="${root}${PKGS_DB}/activity"
    2.10  logdir="${root}/var/log/spk"
    2.11  extradb="${root}${PKGS_DB}/extra"
    2.12 +tmpdir="/tmp/spk/$RANDOM"
    2.13  
    2.14  #
    2.15  # Sanity checks
    2.16 @@ -48,22 +50,31 @@
    2.17  extract_receipt() {
    2.18  	local dir="$1"
    2.19  	local file="$2"
    2.20 -	debug "extract_receipt $1 $2"
    2.21  	cd "$dir"
    2.22  	{ cpio --quiet -i receipt > /dev/null 2>&1; } < $file
    2.23  	cd - >/dev/null
    2.24  }
    2.25  
    2.26 +# Extract files.list from tazpkg
    2.27 +# Parameters: result_dir package_file
    2.28 +extract_fileslist() {
    2.29 +	local dir="$1"
    2.30 +	local file="$2"
    2.31 +	cd "$dir"
    2.32 +	{ cpio --quiet -i files.list > /dev/null 2>&1; } < $file
    2.33 +	cd - >/dev/null
    2.34 +}
    2.35 +
    2.36  # Used by: list
    2.37  count_installed() {
    2.38  	local count=$(ls $installed | wc -l)
    2.39 -	gettext "Installed  :"; echo " $count"
    2.40 +	gettext "Installed     :"; echo " $count"
    2.41  }
    2.42  
    2.43  # Used by: list
    2.44  count_mirrored() {
    2.45  	local count=$(cat $pkgsmd5 | wc -l)
    2.46 -	gettext "Mirrored   :"; echo " $count"
    2.47 +	gettext "Mirrored      :"; echo " $count"
    2.48  }
    2.49  
    2.50  is_package_mirrored() {
    2.51 @@ -109,8 +120,8 @@
    2.52  
    2.53  # get an already installed package from packages.equiv  TODO REDO!
    2.54  equivalent_pkg() {
    2.55 -	for i in $(grep -hs "^$1=" ${root}${PKGS_DB}/packages.equiv \
    2.56 -		   ${root}${PKGS_DB}/undigest/*/packages.equiv | sed "s/^$1=//")
    2.57 +	for i in $(grep -hs "^$1=" $pkgsequiv \
    2.58 +		$extradb/*/packages.equiv | sed "s/^$1=//")
    2.59  	do
    2.60  		if echo $i | fgrep -q : ; then
    2.61  			# format 'alternative:newname'
     3.1 --- a/spk	Thu May 17 20:05:16 2012 +0200
     3.2 +++ b/spk	Thu May 17 23:40:23 2012 +0200
     3.3 @@ -49,12 +49,15 @@
     3.4  	""|*usage|*help) usage ;;
     3.5  	info)
     3.6  		cache="$(du -sh $CACHE_DIR | awk '{print $1 " " $2}')"
     3.7 +		extra=$(ls $extradb | wc -l)
     3.8  		newline
     3.9  		boldify "Spk info"
    3.10  		separator
    3.11 -		gettext "Database   :"; echo " $installed"
    3.12 -		gettext "Cache info :"; echo " $cache"
    3.13 -		gettext "Mirror URL :"; echo " $(cat $mirrorurl)"
    3.14 +		gettext "Architecture  :"; echo " $SLITAZ_ARCH"
    3.15 +		gettext "Database      :"; echo " $installed"
    3.16 +		gettext "Cache info    :"; echo " $cache"
    3.17 +		gettext "Mirror URL    :"; echo " $(cat $mirrorurl)"
    3.18 +		gettext "Extra mirrors :"; echo " $extra"
    3.19  		count_installed
    3.20  		count_mirrored
    3.21  		separator
     4.1 --- a/spk-add	Thu May 17 20:05:16 2012 +0200
     4.2 +++ b/spk-add	Thu May 17 23:40:23 2012 +0200
     4.3 @@ -8,8 +8,6 @@
     4.4  #
     4.5  . /usr/lib/slitaz/libspk.sh
     4.6  
     4.7 -tmpdir="/tmp/spk/$RANDOM"
     4.8 -
     4.9  #
    4.10  # Functions
    4.11  #