tazpkg rev 637
tazpkg/convert: add .sfs support
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Mon Jul 29 11:40:17 2013 +0200 (2013-07-29) |
parents | 0b0d46647d1a |
children | 8792c17fbd8f |
files | po/el.po po/es.po po/fr.po po/pl.po po/pt_BR.po po/ru.po po/sv.po po/tazpkg.pot tazpkg |
line diff
1.1 --- a/po/el.po Mon Jul 29 11:00:03 2013 +0200 1.2 +++ b/po/el.po Mon Jul 29 11:40:17 2013 +0200 1.3 @@ -251,7 +251,7 @@ 1.4 msgstr "Εμφάνιση δένδρου αντίστροφων εξαρτήσεων." 1.5 1.6 #: tazpkg:149 1.7 -msgid "Convert a deb/rpm/tgz/pet/arch/ipk package to a slitaz (.tazpkg)." 1.8 +msgid "Convert a deb/rpm/tgz/pet/sfs/arch/ipk package to a slitaz (.tazpkg)." 1.9 msgstr "" 1.10 "Μετατροπή ενός πακέτου deb/rpm/tgz/pet/arch/ipk σε μορφή slitaz\n" 1.11 " (.tazpkg)."
2.1 --- a/po/es.po Mon Jul 29 11:00:03 2013 +0200 2.2 +++ b/po/es.po Mon Jul 29 11:40:17 2013 +0200 2.3 @@ -233,7 +233,7 @@ 2.4 msgstr "Mostrar en reverso el árbol de dependencias." 2.5 2.6 #: tazpkg:149 2.7 -msgid "Convert a deb/rpm/tgz/pet/arch/ipk package to a slitaz (.tazpkg)." 2.8 +msgid "Convert a deb/rpm/tgz/pet/sfs/arch/ipk package to a slitaz (.tazpkg)." 2.9 msgstr "Convertir paquetes deb/rpm/tgz/pet/arch/ipk al de slitaz (.tazpkg)." 2.10 2.11 #: tazpkg:150
3.1 --- a/po/fr.po Mon Jul 29 11:00:03 2013 +0200 3.2 +++ b/po/fr.po Mon Jul 29 11:40:17 2013 +0200 3.3 @@ -229,7 +229,7 @@ 3.4 msgstr "Affiche l'arbre des dépendances inverses." 3.5 3.6 #: tazpkg:149 3.7 -msgid "Convert a deb/rpm/tgz/pet/arch/ipk package to a slitaz (.tazpkg)." 3.8 +msgid "Convert a deb/rpm/tgz/pet/sfs/arch/ipk package to a slitaz (.tazpkg)." 3.9 msgstr "Convertit un paquet deb/rpm/tgz/pet/arch/ipk en paquet SliTaz." 3.10 3.11 #: tazpkg:150
4.1 --- a/po/pl.po Mon Jul 29 11:00:03 2013 +0200 4.2 +++ b/po/pl.po Mon Jul 29 11:40:17 2013 +0200 4.3 @@ -231,7 +231,7 @@ 4.4 msgstr "" 4.5 4.6 #: tazpkg:149 4.7 -msgid "Convert a deb/rpm/tgz/pet/arch/ipk package to a slitaz (.tazpkg)." 4.8 +msgid "Convert a deb/rpm/tgz/pet/sfs/arch/ipk package to a slitaz (.tazpkg)." 4.9 msgstr "" 4.10 4.11 #: tazpkg:150
5.1 --- a/po/pt_BR.po Mon Jul 29 11:00:03 2013 +0200 5.2 +++ b/po/pt_BR.po Mon Jul 29 11:40:17 2013 +0200 5.3 @@ -225,7 +225,7 @@ 5.4 msgstr "Mostra árvore de dependências reversa." 5.5 5.6 #: tazpkg:149 5.7 -msgid "Convert a deb/rpm/tgz/pet/arch/ipk package to a slitaz (.tazpkg)." 5.8 +msgid "Convert a deb/rpm/tgz/pet/sfs/arch/ipk package to a slitaz (.tazpkg)." 5.9 msgstr "Converte um pacote deb/rpm/tgz/pet/arch/ipk para .tazpkg." 5.10 5.11 #: tazpkg:150
6.1 --- a/po/ru.po Mon Jul 29 11:00:03 2013 +0200 6.2 +++ b/po/ru.po Mon Jul 29 11:40:17 2013 +0200 6.3 @@ -230,7 +230,7 @@ 6.4 msgstr "Показать дерево обратных зависимостей" 6.5 6.6 #: tazpkg:149 6.7 -msgid "Convert a deb/rpm/tgz/pet/arch/ipk package to a slitaz (.tazpkg)." 6.8 +msgid "Convert a deb/rpm/tgz/pet/sfs/arch/ipk package to a slitaz (.tazpkg)." 6.9 msgstr "Конвертировать пакеты deb|rpm|tgz|pet|arch|ipk в формат tazpkg" 6.10 6.11 #: tazpkg:150
7.1 --- a/po/sv.po Mon Jul 29 11:00:03 2013 +0200 7.2 +++ b/po/sv.po Mon Jul 29 11:40:17 2013 +0200 7.3 @@ -226,7 +226,7 @@ 7.4 msgstr "" 7.5 7.6 #: tazpkg:149 7.7 -msgid "Convert a deb/rpm/tgz/pet/arch/ipk package to a slitaz (.tazpkg)." 7.8 +msgid "Convert a deb/rpm/tgz/pet/sfs/arch/ipk package to a slitaz (.tazpkg)." 7.9 msgstr "" 7.10 7.11 #: tazpkg:150
8.1 --- a/po/tazpkg.pot Mon Jul 29 11:00:03 2013 +0200 8.2 +++ b/po/tazpkg.pot Mon Jul 29 11:40:17 2013 +0200 8.3 @@ -225,7 +225,7 @@ 8.4 msgstr "" 8.5 8.6 #: tazpkg:149 8.7 -msgid "Convert a deb/rpm/tgz/pet/arch/ipk package to a slitaz (.tazpkg)." 8.8 +msgid "Convert a deb/rpm/tgz/pet/sfs/arch/ipk package to a slitaz (.tazpkg)." 8.9 msgstr "" 8.10 8.11 #: tazpkg:150
9.1 --- a/tazpkg Mon Jul 29 11:00:03 2013 +0200 9.2 +++ b/tazpkg Mon Jul 29 11:40:17 2013 +0200 9.3 @@ -146,7 +146,7 @@ 9.4 clean-cache|-cc $(gettext 'Clean all packages downloaded in cache directory.') 9.5 depends $(gettext 'Display dependencies tree.') 9.6 rdepends $(gettext 'Display reverse dependencies tree.') 9.7 - convert $(gettext 'Convert a deb/rpm/tgz/pet/arch/ipk package to a slitaz (.tazpkg).') 9.8 + convert $(gettext 'Convert a deb/rpm/tgz/pet/sfs/arch/ipk package to a slitaz (.tazpkg).') 9.9 link $(gettext 'Link a package from another slitaz installation.') 9.10 setup-mirror|-sm $(gettext 'Change the mirror url configuration.') 9.11 list-undigest $(gettext 'List undigest mirrors.') 9.12 @@ -1215,27 +1215,25 @@ 9.13 rm -rf $TMP_DIR 9.14 } 9.15 9.16 -# convert a .pet package to .tazpkg 9.17 -convert_pet() 9.18 +# get package and version from PACKAGE_FILE 9.19 +parse_pkgname() 9.20 { 9.21 - mkdir -p $TMP_DIR 9.22 - cd $TMP_DIR 9.23 - package=$(basename $PACKAGE_FILE .pet) 9.24 + package=$(basename $PACKAGE_FILE $1) 9.25 IFS='-' 9.26 set -- $package 9.27 unset IFS 9.28 package=$1 9.29 version=$2 9.30 if [ -z "$version" ]; then 9.31 - tmp=${package%%[0-9\.]*} 9.32 - version=${package#$tmp} 9.33 - package=$tmp 9.34 + package=${1%%[0-9\.]*} 9.35 + version=${1#$package} 9.36 fi 9.37 - tar xzf $PACKAGE_FILE 2> /dev/null 9.38 - . $package*/*.specs 9.39 - rm -f $package*/*.specs 9.40 +} 9.41 + 9.42 +finish_convert_puppy() 9.43 +{ 9.44 + rm -f fs/*.specs 9.45 file="$package-$version" 9.46 - mv $package*/ fs 9.47 mkdir $file 9.48 mv fs $file 9.49 cat > $file/receipt <<EOT 9.50 @@ -1244,7 +1242,7 @@ 9.51 PACKAGE="$package" 9.52 VERSION="$version" 9.53 CATEGORY="misc" 9.54 -SHORT_DESC="$PETMENUDESCR" 9.55 +SHORT_DESC="$desc" 9.56 WEB_SITE="http://puppylinux.org/" 9.57 MAINTAINER="nobody@slitaz.org" 9.58 DEPENDS="$(find_depends)" 9.59 @@ -1269,16 +1267,41 @@ 9.60 rm -rf $TMP_DIR 9.61 } 9.62 9.63 +# convert a .sfs package to .tazpkg 9.64 +convert_sfs() 9.65 +{ 9.66 + [ -n "$(which unsquashfs)" ] || tazpkg get-install squashfs 9.67 + if ! unsquashfs -l $PACKAGE_FILE | grep -q squashfs-root/pet.specs$ ; then 9.68 + eval_gettext "\$PACKAGE_FILE does not look like a Puppy package!"; echo 9.69 + return 1 9.70 + fi 9.71 + mkdir -p $TMP_DIR 9.72 + cd $TMP_DIR 9.73 + parse_pkgname .sfs 9.74 + unsquashfs $PACKAGE_FILE 9.75 + mv squashfs-root fs 9.76 + set -- $(cat fs/pet.specs) 9.77 + desc="$10" 9.78 + finish_convert_puppy 9.79 +} 9.80 + 9.81 +# convert a .pet package to .tazpkg 9.82 +convert_pet() 9.83 +{ 9.84 + mkdir -p $TMP_DIR 9.85 + cd $TMP_DIR 9.86 + parse_pkgname .pet 9.87 + tar xzf $PACKAGE_FILE 2> /dev/null 9.88 + . $package*/*.specs 9.89 + desc="$PETMENUDESCR" 9.90 + mv $package*/ fs 9.91 + finish_convert_puppy 9.92 +} 9.93 + 9.94 # convert a .tgz package to .tazpkg 9.95 convert_tgz() 9.96 { 9.97 - package=$(basename $PACKAGE_FILE) 9.98 - IFS='-' 9.99 - set -- $package 9.100 - unset IFS 9.101 - package=$1 9.102 - version=$2 9.103 - file="$package-$version" 9.104 + parse_pkgname 9.105 mkdir -p $TMP_DIR/$file/fs 9.106 tar xzf $PACKAGE_FILE -C $TMP_DIR/$file/fs 9.107 cd $TMP_DIR 9.108 @@ -2828,6 +2851,8 @@ 9.109 convert_deb;; 9.110 *.rpm) 9.111 convert_rpm;; 9.112 + *.sfs) 9.113 + convert_sfs;; 9.114 *.pet) 9.115 convert_pet;; 9.116 *.tgz)