tazpkg rev 18
repack support
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Tue Dec 11 16:26:44 2007 +0100 (2007-12-11) |
parents | 8fc79709638c |
children | fa0a764a285f |
files | doc/tazpkg.html tazpkg |
line diff
1.1 --- a/doc/tazpkg.html Tue Dec 11 16:25:08 2007 +0100 1.2 +++ b/doc/tazpkg.html Tue Dec 11 16:26:44 2007 +0100 1.3 @@ -190,6 +190,14 @@ 1.4 <pre> 1.5 # tazpkg pack package-version 1.6 </pre> 1.7 +<h3><font color="#6c0023">repack</font></h3> 1.8 +<p> 1.9 +La commande 'repack' permet de recréer un paquet depuis les fichiers présents 1.10 +sur le système où il a été précédemment installé. Pour réempaqueter un paquet : 1.11 +</p> 1.12 +<pre> 1.13 + # tazpkg repack package 1.14 +</pre> 1.15 <h3><font color="#6c0023">recharge</font></h3> 1.16 <p> 1.17 Recharge la liste des paquets disponibles sur le miroir (packages.list). Cette
2.1 --- a/tazpkg Tue Dec 11 16:25:08 2007 +0100 2.2 +++ b/tazpkg Tue Dec 11 16:26:44 2007 +0100 2.3 @@ -83,6 +83,7 @@ 2.4 extract Extract a (*.tazpkg) package into a directory. 2.5 pack Pack an unpacked or prepared package tree. 2.6 recharge Recharge your packages.list from the mirror. 2.7 + repack Creat a package archive from an installed package. 2.8 upgrade Upgrade all installed and listed packages on the mirror. 2.9 block|unblock Block an installed package version or unblock it for upgrade. 2.10 get Download a package into the current directory. 2.11 @@ -619,6 +620,46 @@ 2.12 echo "$PACKAGE is extracted to : $DESTDIR" 2.13 echo "" 2.14 ;; 2.15 + repack) 2.16 + # Creat SliTaz package archive from an installed package. 2.17 + # 2.18 + check_for_package_on_cmdline 2.19 + check_for_receipt 2.20 + eval $(grep ^VERSION= $INSTALLED/$PACKAGE/receipt) 2.21 + echo "" 2.22 + echo -e "\033[1mRepacking :\033[0m $PACKAGE-$VERSION.tazpkg" 2.23 + echo "================================================================================" 2.24 + MISSING="" 2.25 + for i in $(sed 's,^fs,,g' < $INSTALLED/$PACKAGE/files.list); do 2.26 + [ -e "$i" ] && continue 2.27 + [ -L "$i" ] || MISSING="$MISSING $i" 2.28 + done 2.29 + if [ -n "$MISSING" ]; then 2.30 + echo "Can't repack, the following files are lost:" 2.31 + for i in $MISSING; do 2.32 + echo " $i" 2.33 + done 2.34 + exit 1 2.35 + fi 2.36 + HERE=`pwd` 2.37 + mkdir -p $TMP_DIR 2.38 + cd $TMP_DIR 2.39 + cp $INSTALLED/$PACKAGE/files.list . 2.40 + cp $INSTALLED/$PACKAGE/receipt . 2.41 + ln -s / fs 2.42 + sed 's,^,fs,g' < files.list | cpio -o -H newc 2> /dev/null | \ 2.43 + gzip -9 > fs.cpio.gz 2.44 + cpio -o -H newc > $HERE/$PACKAGE-$VERSION.tazpkg 2> /dev/null <<EOT 2.45 +receipt 2.46 +files.list 2.47 +fs.cpio.gz 2.48 +EOT 2.49 + cd $HERE 2.50 + \rm -R $TMP_DIR 2.51 + echo "Package $PACKAGE repacked successfully." 2.52 + echo "Size : `du -sh $PACKAGE-$VERSION.tazpkg`" 2.53 + echo "" 2.54 + ;; 2.55 pack) 2.56 # Creat SliTaz package archive using cpio and gzip. 2.57 # 2.58 @@ -647,7 +688,7 @@ 2.59 gzip -d fs.cpio.gz && cpio -id < fs.cpio 2.60 rm fs.cpio && cd .. 2.61 echo "================================================================================" 2.62 - echo "Package $PACKAGE compressed succefully." 2.63 + echo "Package $PACKAGE compressed successfully." 2.64 echo "Size : `du -sh $PACKAGE.tazpkg`" 2.65 echo "" 2.66 fi