summaryrefslogblamecommitdiffstats
path: root/source/installer/sources/initrd/usr/lib/setup/INSdir
blob: cc9b1711ae75c5abba703880ca60baf44d49d66f (plain) (tree)








































































                                                                               
#!/bin/sh
TMP=/var/log/setup/tmp
T_PX="`cat $TMP/SeTT_PX`"
if [ ! -d $TMP ]; then
  mkdir -p $TMP
fi
# Include function to check for Slackware ISO images:
. /usr/lib/setup/INCISO
while [ 0 ]; do
rm -f $TMP/SeTDS $TMP/SeTmount
# OK, at this point /var/log/mount should not have anything mounted on it,
# but we will umount just in case.
umount /var/log/mount 2> /dev/null
# Anything mounted on /var/log/mount now is a fatal error:
if mount | grep /var/log/mount 1> /dev/null 2> /dev/null ; then
  echo "Can't umount /var/log/mount.  Reboot machine and run setup again."
  exit
fi
# If the mount table is corrupt, the above might not do it, so we will
# try to detect Linux and FAT32 partitions that have slipped by:
if [ -d /var/log/mount/lost+found -o -d /var/log/mount/recycled \
     -o -r /var/log/mount/io.sys ]; then
  echo "Mount table corrupt. Reboot machine and run setup again."
  exit
fi
cat << EOF > $TMP/tempmsg

OK, we will install from a directory within the current
filesystem. If you have mounted this directory yourself,
you should not use ${T_PX} or /var/log/mount as mount points,
since Setup might need to use these directories. You may
install from any part of the current directory structure,
no matter what the media is (including NFS). You will need
to type in the name of the directory containing the 
subdirectories for each source disk.

Which directory would you like to install from?
EOF
dialog --title "INSTALL FROM THE CURRENT FILESYSTEM" \
 --inputbox "`cat $TMP/tempmsg`" 19 67 2> $TMP/sourcedir
if [ ! $? = 0 ]; then
 rm -f $TMP/sourcedir $TMP/tempmsg
 exit
fi
SOURCEDIR="`cat $TMP/sourcedir`"
rm -f $TMP/sourcedir $TMP/tempmsg
mkdir -p /var/log/mount
# First, check if a Slackware ISO image is present in $SOURCEDIR
if check_iso_image $SOURCEDIR ; then
 echo "/var/log/mount/slackware" > $TMP/SeTDS
else
 rm -f /var/log/mount 2> /dev/null
 rmdir /var/log/mount 2> /dev/null
 ln -sf $SOURCEDIR /var/log/mount
 echo "/var/log/mount" > $TMP/SeTDS
fi
echo "-source_mounted" > $TMP/SeTmount
echo "/dev/null" > $TMP/SeTsource
if [ ! -d $SOURCEDIR ]; then
 cat << EOF > $TMP/tempmsg

Sorry - the directory you specified is not valid. Please 
check the directory and try again.

(Directory given: $SOURCEDIR)

EOF
 dialog --title "INVALID DIRECTORY ENTERED" --msgbox "`cat $TMP/tempmsg`" 10 65
 rm -f $TMP/SeTDS $TMP/SeTmount $TMP/SeTsource $TMP/sourcedir $TMP/tempmsg
else
 exit
fi
done;