tazpkg rev 21
Repack: check for packages modified by other packages
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Fri Dec 14 17:24:43 2007 +0000 (2007-12-14) |
parents | 94a427d2fe71 |
children | 28c9ef6dbf16 |
files | tazpkg |
line diff
1.1 --- a/tazpkg Thu Dec 13 21:53:36 2007 +0100 1.2 +++ b/tazpkg Fri Dec 14 17:24:43 2007 +0000 1.3 @@ -215,6 +215,7 @@ 1.4 cd $TMP_DIR 1.5 extract_package 1.6 SELF_INSTALL=0 1.7 + MODIFY_PACKAGES="" 1.8 # Include temporary receipt to get the right variables. 1.9 . $PWD/receipt 1.10 if [ $SELF_INSTALL -ne 0 -a -n "$ROOT" ]; then 1.11 @@ -226,6 +227,12 @@ 1.12 exit 1 1.13 fi 1.14 fi 1.15 + # Remember modified packages 1.16 + for i in $MODIFY_PACKAGES; do 1.17 + [ -d $ROOT$INSTALLED/$i ] || continue 1.18 + grep -q ^$PACKAGE$ $ROOT$INSTALLED/$i && continue 1.19 + echo "$PACKAGE" >> $ROOT$INSTALLED/$i/modifiers 1.20 + done 1.21 # Make the installed package data dir to store 1.22 # the receipt and the files list. 1.23 mkdir -p $ROOT$INSTALLED/$PACKAGE 1.24 @@ -657,6 +664,13 @@ 1.25 echo "" 1.26 echo -e "\033[1mRepacking :\033[0m $PACKAGE-$VERSION.tazpkg" 1.27 echo "================================================================================" 1.28 + if [ -s $INSTALLED/$PACKAGE/modifiers ]; then 1.29 + echo "Can't repack, $PACKAGE files have been modified by:" 1.30 + for i in $(cat $INSTALLED/$PACKAGE/modifiers); do 1.31 + echo " $i" 1.32 + done 1.33 + exit 1 1.34 + fi 1.35 MISSING="" 1.36 for i in $(sed 's,^fs,,g' < $INSTALLED/$PACKAGE/files.list); do 1.37 [ -e "$i" ] && continue