tazpkg rev 689
tazpkg/convert: add upkg support
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Wed Oct 01 11:30:34 2014 +0200 (2014-10-01) |
parents | 6dfd2dcad545 |
children | 10ad6beacf0f |
files | tazpkg |
line diff
1.1 --- a/tazpkg Wed Oct 01 10:26:52 2014 +0200 1.2 +++ b/tazpkg Wed Oct 01 11:30:34 2014 +0200 1.3 @@ -1200,16 +1200,69 @@ 1.4 fi 1.5 } 1.6 1.7 +# convert a .tar.bz2 package to .tazpkg 1.8 +convert_upkg() 1.9 +{ 1.10 + mkdir -p $TMP_DIR/fs 1.11 + tar xjf $PACKAGE_FILE -C $TMP_DIR/fs 1.12 + if [ -d $TMP_DIR/fs/var/lib/upkg/packages ]; then 1.13 + cd $TMP_DIR 1.14 + package="$(sed '/^Package:/!d;s/.*: //' fs/var/lib/upkg/packages/*.info)" 1.15 + version="$(sed '/^Version:/!d;s/.*: //' fs/var/lib/upkg/packages/*.info)" 1.16 + url="http://www.paldo.org/" 1.17 + file=$package-$version 1.18 + mkdir $file 1.19 + mv fs $file 1.20 + maintainer=nobody@slitaz.org 1.21 + descrip="$package package from paldo." 1.22 + cat > $file/receipt <<EOT 1.23 +# SliTaz package receipt. 1.24 +# generated by tazpkg from package $(basename $PACKAGE_FILE) 1.25 +PACKAGE="$package" 1.26 +VERSION="$version" 1.27 +CATEGORY="misc" 1.28 +SHORT_DESC="$descrip" 1.29 +WEB_SITE="$url" 1.30 +MAINTAINER="$maintainer" 1.31 +DEPENDS="$(find_depends)" 1.32 +EOT 1.33 + [ -s $file/var/lib/upkg/files/*.config.bz2 ] && 1.34 + cat >> $file/receipt <<EOT 1.35 +CONFIG_FILES="$(bzcat $file/var/lib/upkg/files/*.config.bz2)" 1.36 +EOT 1.37 + while read ext func ; do 1.38 + [ -s $file/fs/var/lib/upkg/scripts/*.$ext ] || continue 1.39 + cat >> $file/receipt <<EOT 1.40 + 1.41 +$func() 1.42 +{ 1.43 +$(cat $file/fs/var/lib/upkg/scripts/*.$ext) 1.44 +} 1.45 +EOT 1.46 + done <<EOT 1.47 +prerm pre_remove 1.48 +EOT 1.49 + 1.50 + tazpkg pack $file 1.51 + mv $TMP_DIR/$file.tazpkg $TOP_DIR 1.52 + else 1.53 + eval_gettext "\$PACKAGE_FILE does not look like an upkg package!"; echo 1.54 + fi 1.55 + cd $TOP_DIR 1.56 + rm -rf $TMP_DIR 1.57 +} 1.58 + 1.59 # convert a .spack package to .tazpkg 1.60 convert_spack() 1.61 { 1.62 - mkdir -p $TMP_DIR/fs 1.63 + mkdir -p $TMP_DIR 1.64 ( cd $TMP_DIR ; cpio -i ) < $PACKAGE_FILE 1.65 cd $TMP_DIR 1.66 package="$(sed '$!d;s/:.*//' about.txt)" 1.67 version="$(basename $PACKAGE_FILE | sed "s/$package-\([^-]*\).*/\1/")" 1.68 descrip="$(sed '$!d;s/.*: //' about.txt)" 1.69 url="http://0linux.org/" 1.70 + maintainer=nobody@slitaz.org 1.71 file=$package-$version 1.72 mkdir -p $file/fs 1.73 xzcat files.xz | ( cd $file/fs ; cpio -idmu ) 1.74 @@ -1221,6 +1274,7 @@ 1.75 CATEGORY="misc" 1.76 SHORT_DESC="$descrip" 1.77 WEB_SITE="$url" 1.78 +MAINTAINER="$maintainer" 1.79 DEPENDS="$(find_depends)" 1.80 EOT 1.81 [ -s pre-install.sh ] && cat >> $file/receipt <<EOT 1.82 @@ -1242,6 +1296,7 @@ 1.83 tazpkg pack $file 1.84 cd $TOP_DIR 1.85 mv $TMP_DIR/$file.tazpkg . 1.86 + rm -rf $TMP_DIR 1.87 } 1.88 1.89 # convert a .ipk package to .tazpkg 1.90 @@ -3072,6 +3127,8 @@ 1.91 convert_ipk;; 1.92 *.spack) 1.93 convert_spack;; 1.94 + *.tar.bz2) 1.95 + convert_upkg;; 1.96 *) 1.97 gettext "Unsupported format"; echo ;; 1.98 esac