# HG changeset patch # User Pascal Bellard # Date 1247850140 -7200 # Node ID 496ecaf86c2bbde70777d95410d790cceef9b073 # Parent 6f2b0bcdb41f765230963d3b128b966a8fb6a73d Add tazpkg convert tgz (slackware packages) diff -r 6f2b0bcdb41f -r 496ecaf86c2b tazpkg --- a/tazpkg Sun Jun 21 11:39:44 2009 +0200 +++ b/tazpkg Fri Jul 17 19:02:20 2009 +0200 @@ -120,7 +120,7 @@ clean-cache Clean all packages downloaded in cache directory. depends Display dependencies tree. rdepends Display reverse dependencies tree. - convert Convert a debian or rpm package to a slitaz package (.tazpkg). + convert Convert a deb/rpm/tgz package to a slitaz package (.tazpkg). link Link a package from another slitaz installation. setup-mirror Change the mirror url configuration. list-undigest List undigest mirrors. @@ -977,6 +977,55 @@ fi } +# convert a .tgz package to .tazpkg +convert_tgz() +{ + IFS='-' + set -- $(basename $PACKAGE_FILE) + unset IFS + package=$1 + version=$2 + file="$package-$version" + mkdir -p $TMP_DIR/$file/fs + tar xzf $PACKAGE_FILE -C $TMP_DIR/$file/fs + cd $TMP_DIR + if [ -d $file/fs/install ]; then + descrip=$(grep ^$package $file/fs/install/slack-desc | \ + head -1 | sed 's/.*(\(.*\)).*/\1/') + cat > $file/receipt <> $file/receipt < $file/description.txt + rm -rf $file/fs/install + tazpkg pack $file + mv $file.tazpkg $TOP_DIR + else + echo "$PACKAGE_FILE does not look like a Slackware package !" + fi + cd $TOP_DIR + rm -rf $TMP_DIR +} + # convert a .deb package to .tazpkg convert_deb() { @@ -2374,6 +2423,8 @@ convert_deb;; *.rpm) convert_rpm;; + *.tgz) + convert_tgz;; *) echo "Unsupported format";; esac