updated all base packages
[hdw-linux/hdw-linux.git] / misc / hdw-tools / hdw-get
index 9ff72ec..fa08cb1 100644 (file)
@@ -77,9 +77,6 @@ if [ "$update" = "1" ] ; then
        echo -en " done. (`cat $DBF | wc -l` packages)\n"
 fi
 
-# create temp directory
-mkdir -p /tmp/.hdw-get
-
 # remove
 if [ "$remove" = "1" ] ; then
        # check if packages depend on package to be removed
@@ -127,22 +124,6 @@ if [ "$remove" = "1" ] ; then
 
        if [ "$simulate" != "1" ] ; then
 
-       # care about info/dir file
-       rm -f /tmp/.hdw-get/dir* ; modify_info_dir=""
-       if [ -n "`grep usr/share/info/dir $fl_file`" ] ; then
-       modify_info_dir="1"
-       cp $inst_root/usr/share/info/dir /tmp/.hdw-get/
-       for info_obj in `grep 'usr/share/info/.*.info' $fl_file | \
-                        awk -F/ '{ print $4 }'`; do
-               info_o=`echo $info_obj | sed 's/.info//'`
-               [ "$verbose" ] && echo "deleting $info_o from info/dir"
-               grep -v \($info_o\)\. /tmp/.hdw-get/dir | \
-               grep -v ^$package\ info\ -\ added\ by\ hdw > \
-               /tmp/.hdw-get/dir~
-               mv /tmp/.hdw-get/dir~ /tmp/.hdw-get/dir
-       done
-       fi
-
        # remove the files/dirs
        ((supposed = 0))
        ((counter = 0))
@@ -163,12 +144,13 @@ if [ "$remove" = "1" ] ; then
        done
        echo -en "\ndone.\n"
 
-       # reinstall info/dir file
-       if [ "$modify_info_dir" ] ; then
-               [ "$verbose" ] && echo "restoring modified info/dir file"
-               cp /tmp/.hdw-get/dir $inst_root/usr/share/info/dir
-               rm -f /tmp/.hdw-get/dir*
-       fi
+       # care about info/dir file
+       echo "recreating info dir file ..."
+       cd $inst_root/usr/share/info
+       rm -f dir
+       for f in *; do
+               install-info $f dir 2>/dev/null
+       done
 
        fi
 
@@ -240,13 +222,6 @@ elif [ "$install" = "1" ] ; then
        fi
        
        if [ "$simulate" != "1" ] ; then
-
-       # store info/dir file
-       rm -f /tmp/.hdw-get/dir*
-       if [ -f $inst_root/usr/share/info/dir ] ; then
-               [ "$verbose" ] && echo "backing up info/dir file"
-               cp $inst_root/usr/share/info/dir /tmp/.hdw-get/
-       fi
        
        # check/install package
        if [ -f $package ] ; then
@@ -277,29 +252,13 @@ elif [ "$install" = "1" ] ; then
                exit 1
        fi
 
-       # merging info/dir file
-       if [ "$pkg" != "00-dirtree" ] ; then
-       fl_file=`ls -A $inst_root/$FL_DIR/$pkg-[0-9]* | tail -1`
-       if [ -n "`grep usr/share/info/dir $fl_file`" ] ; then
-               echo "" >> /tmp/.hdw-get/dir
-               echo "$pkg info - added by hdw `date`" >> /tmp/.hdw-get/dir
-               for info_obj in `grep 'usr/share/info/.*.info' $fl_file | \
-                                       awk -F/ '{ print $4 }'`; do
-                       info_o=`echo $info_obj | sed 's/.info//'`
-                       if [ -z "`grep \($info_o\)\. /tmp/.hdw-get/dir`" ]
-                       then
-                               [ "$verbose" ] && \
-                                       echo "merging $info_o to info/dir"
-                               grep \($info_o\)\. \
-                                       $inst_root/usr/share/info/dir >> \
-                                       /tmp/.hdw-get/dir
-                       fi
-               done
-       fi
-       fi
-       [ -f /tmp/.hdw-get/dir ] && \
-               cp /tmp/.hdw-get/dir $inst_root/usr/share/info/dir
-       rm -f /tmp/.hdw-get/dir
+       # care about info/dir file
+       echo "recreating info dir file ..."
+       cd $inst_root/usr/share/info
+       rm -f dir
+       for f in *; do
+               install-info $f dir 2>/dev/null
+       done
 
        fi
 
@@ -317,6 +276,3 @@ elif [ "$d_install" = "1" ] ; then
        fi
 fi
 
-# remove temp directory
-rm -rf /tmp/.hdw-get
-