spk diff lib/libspk.sh @ rev 71

Removed spk-archive, moved extract to libspk
author Christian Mesh <meshca@clarkson.edu>
date Sat May 19 10:47:48 2012 -0500 (2012-05-19)
parents a946ed77f727
children a2490e434a47 0da00dac24ed
line diff
     1.1 --- a/lib/libspk.sh	Sat May 19 04:59:02 2012 -0500
     1.2 +++ b/lib/libspk.sh	Sat May 19 10:47:48 2012 -0500
     1.3 @@ -184,6 +184,47 @@
     1.4  	fi
     1.5  }
     1.6  
     1.7 +# Extract .tazpkg cpio archive into a directory.
     1.8 +# Parameters: package_file results_directory
     1.9 +extract_package() {
    1.10 +	local package_file=$1
    1.11 +	local target_dir=$2
    1.12 +
    1.13 +	# Validate the file
    1.14 +	check_valid_tazpkg $package_file
    1.15 +
    1.16 +	# Find the package name
    1.17 +	local package_name=$(package_name $package_file)
    1.18 +
    1.19 +	# Create destination directory
    1.20 +	local dest_dir=$(pwd)/$package_name
    1.21 +	[ -n "$target_dir" ] && dest_dir=$target_dir/$package_name
    1.22 +	mkdir -p $dest_dir
    1.23 +
    1.24 +	newline
    1.25 +	echo $(boldify $(gettext "Extracting:")) $package_name
    1.26 +	separator
    1.27 +
    1.28 +	gettext "Copying original package..."
    1.29 +	cp $package_file $dest_dir
    1.30 +	status
    1.31 +	
    1.32 +	cd $dest_dir	
    1.33 +	size=$(du -sh $package_file | sed s/$package_file//)
    1.34 +	echo -n $(gettext "Extracting archive"): $size
    1.35 +	cpio -idm --quiet < ${package_file##*/}
    1.36 +	rm -f ${package_file##*/}
    1.37 +	unlzma -c fs.cpio.lzma | cpio -idm --quiet
    1.38 +	rm fs.cpio.lzma
    1.39 +	status
    1.40 +	cd - > /dev/null
    1.41 +	
    1.42 +	separator
    1.43 +	echo -n "$package_name"
    1.44 +	gettext "is extracted to:"; echo " $dest_dir"
    1.45 +	newline
    1.46 +}
    1.47 +
    1.48  # Unser var set by mirrored_pkg
    1.49  unset_mirrored() {
    1.50  	unset mirrored mirror db pwd