X-Git-Url: https://hackdaworld.org/gitweb/?p=hdw-linux%2Fhdw-linux.git;a=blobdiff_plain;f=misc%2Fhdw-tools%2Fhdw-get;h=fa08cb16e38c340b92f5e79f7c3783193ad014a3;hp=9ff72ec5b3acff5ce7db421cdbfbce784dd051c2;hb=e6cbadee3fa9e3e04c70d6d652a64d7025936695;hpb=51af0580ff316ad09d5b5d2f5fe7e9194c74f475 diff --git a/misc/hdw-tools/hdw-get b/misc/hdw-tools/hdw-get index 9ff72ec..fa08cb1 100644 --- a/misc/hdw-tools/hdw-get +++ b/misc/hdw-tools/hdw-get @@ -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 -