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