slackware-current/source/installer/sources/initrd/usr/lib/setup/INSURL

242 lines
7.2 KiB
Text
Raw Normal View History

Wed Jun 6 22:19:01 UTC 2018 a/bash-4.4.023-x86_64-1.txz: Upgraded. a/kernel-firmware-20180604_1fa9ce3-noarch-1.txz: Upgraded. a/kernel-generic-4.14.48-x86_64-1.txz: Upgraded. a/kernel-huge-4.14.48-x86_64-1.txz: Upgraded. a/kernel-modules-4.14.48-x86_64-1.txz: Upgraded. ap/cups-2.2.8-x86_64-1.txz: Upgraded. ap/ghostscript-fonts-std-8.11-noarch-3.txz: Rebuilt. Rebuilt this and many other font packages or packages with build scripts that call mkfontdir or mkfontscale to suppress any error messages caused by collisions if another package installation is writing files to the same font directories when those utilities are run. In that case, the other package will also be running mkfontdir/mkfontscale after the files are installed, so any issues will be cleaned up then. Last one out turn off the lights, so to speak. ap/sqlite-3.24.0-x86_64-1.txz: Upgraded. ap/terminus-font-4.40-noarch-3.txz: Rebuilt. d/kernel-headers-4.14.48-x86-1.txz: Upgraded. d/rust-1.26.2-x86_64-1.txz: Upgraded. k/kernel-source-4.14.48-noarch-1.txz: Upgraded. l/elfutils-0.171-x86_64-1.txz: Upgraded. l/harfbuzz-1.7.7-x86_64-1.txz: Upgraded. l/mozilla-nss-3.37.3-x86_64-1.txz: Upgraded. l/readline-7.0.005-x86_64-1.txz: Upgraded. x/dejavu-fonts-ttf-2.37-noarch-4.txz: Rebuilt. x/font-adobe-100dpi-1.0.3-noarch-3.txz: Rebuilt. x/font-adobe-75dpi-1.0.3-noarch-3.txz: Rebuilt. x/font-adobe-utopia-100dpi-1.0.4-noarch-3.txz: Rebuilt. x/font-adobe-utopia-75dpi-1.0.4-noarch-3.txz: Rebuilt. x/font-adobe-utopia-type1-1.0.4-noarch-3.txz: Rebuilt. x/font-arabic-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-bh-100dpi-1.0.3-noarch-3.txz: Rebuilt. x/font-bh-75dpi-1.0.3-noarch-3.txz: Rebuilt. x/font-bh-lucidatypewriter-100dpi-1.0.3-noarch-3.txz: Rebuilt. x/font-bh-lucidatypewriter-75dpi-1.0.3-noarch-3.txz: Rebuilt. x/font-bh-ttf-1.0.3-noarch-3.txz: Rebuilt. x/font-bh-type1-1.0.3-noarch-3.txz: Rebuilt. x/font-bitstream-100dpi-1.0.3-noarch-3.txz: Rebuilt. x/font-bitstream-75dpi-1.0.3-noarch-3.txz: Rebuilt. x/font-bitstream-speedo-1.0.2-noarch-3.txz: Rebuilt. x/font-bitstream-type1-1.0.3-noarch-3.txz: Rebuilt. x/font-cronyx-cyrillic-1.0.3-noarch-3.txz: Rebuilt. x/font-cursor-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-daewoo-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-dec-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-ibm-type1-1.0.3-noarch-3.txz: Rebuilt. x/font-isas-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-jis-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-micro-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-misc-cyrillic-1.0.3-noarch-3.txz: Rebuilt. x/font-misc-ethiopic-1.0.3-noarch-3.txz: Rebuilt. x/font-misc-meltho-1.0.3-noarch-3.txz: Rebuilt. x/font-misc-misc-1.1.2-noarch-3.txz: Rebuilt. x/font-mutt-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-schumacher-misc-1.1.2-noarch-3.txz: Rebuilt. x/font-screen-cyrillic-1.0.4-noarch-3.txz: Rebuilt. x/font-sony-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-sun-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-winitzki-cyrillic-1.0.3-noarch-3.txz: Rebuilt. x/font-xfree86-type1-1.0.4-noarch-3.txz: Rebuilt. x/liberation-fonts-ttf-2.00.1-noarch-3.txz: Rebuilt. x/libinput-1.11.0-x86_64-1.txz: Upgraded. x/sazanami-fonts-ttf-20040629-noarch-3.txz: Rebuilt. x/sinhala_lklug-font-ttf-20060929-noarch-3.txz: Rebuilt. x/tibmachuni-font-ttf-1.901b-noarch-3.txz: Rebuilt. x/ttf-indic-fonts-0.5.14-noarch-3.txz: Rebuilt. x/ttf-tlwg-0.6.4-noarch-3.txz: Rebuilt. x/urw-core35-fonts-otf-20170801_91edd6e_git-noarch-2.txz: Rebuilt. x/wqy-zenhei-font-ttf-0.8.38_1-noarch-6.txz: Rebuilt. xap/mozilla-firefox-60.0.2-x86_64-1.txz: Upgraded. This release contains security fixes and improvements. For more information, see: https://www.mozilla.org/security/known-vulnerabilities/firefox.html (* Security fix *) xap/x3270-3.3.12ga7-x86_64-5.txz: Rebuilt. isolinux/initrd.img: Rebuilt. kernels/*: Upgraded. usb-and-pxe-installers/usbboot.img: Rebuilt.
2018-06-07 00:19:01 +02:00
#!/bin/sh
TMP=/var/log/setup/tmp
if [ ! -d $TMP ]; then
mkdir -p $TMP
fi
if [ -f $TMP/Punattended ]; then
eval $(grep "^REMOTE_URL=" $TMP/Punattended)
eval $(grep "^REMOTE_PATH=" $TMP/Punattended)
fi
# Return a package name that has been stripped of the dirname portion
# and any of the valid extensions (only):
pkgbase() {
PKGEXT=$(echo $1 | rev | cut -f 1 -d . | rev)
case $PKGEXT in
'tgz' )
PKGRETURN=$(basename $1 .tgz)
;;
'tbz' )
PKGRETURN=$(basename $1 .tbz)
;;
'tlz' )
PKGRETURN=$(basename $1 .tlz)
;;
'txz' )
PKGRETURN=$(basename $1 .txz)
;;
*)
PKGRETURN=$(basename $1)
;;
esac
echo $PKGRETURN
}
package_name() {
STRING=$(pkgbase $1)
# Check for old style package name with one segment:
if [ "$(echo $STRING | cut -f 1 -d -)" = "$(echo $STRING | cut -f 2 -d -)" ]; then
echo $STRING
else # has more than one dash delimited segment
# Count number of segments:
INDEX=1
while [ ! "$(echo $STRING | cut -f $INDEX -d -)" = "" ]; do
INDEX=$(expr $INDEX + 1)
done
INDEX=$(expr $INDEX - 1) # don't include the null value
# If we don't have four segments, return the old-style (or out of spec) package name:
if [ "$INDEX" = "2" -o "$INDEX" = "3" ]; then
echo $STRING
else # we have four or more segments, so we'll consider this a new-style name:
NAME=$(expr $INDEX - 3)
NAME="$(echo $STRING | cut -f 1-$NAME -d -)"
echo $NAME
fi
fi
}
while [ 0 ]; do
rm -f $TMP/SeTDS $TMP/SeTmount
UPNRUN=$(cat $TMP/SeTupnrun)
cat << EOF > $TMP/tempmsg
Good! We're all set on the local end, but now we need to know
where to find the software packages to install. First, we need
the URL of the ftp or http server where the Slackware sources
are stored.
URL examples are: 'ftp://192.168.0.1' ; 'http://172.16.10.31'
EOF
if [ "$UPNRUN" = "0" ]; then
cat << EOF >> $TMP/tempmsg
Since you're already running on the network, you should be able
to use the hostname instead of an IP address if you wish.
EOF
fi
echo "What is the URL of your FTP/HTTP server? " >> $TMP/tempmsg
dialog --title "ENTER URL OF FTP/HTTP SERVER" --inputbox \
"$(cat $TMP/tempmsg)" 15 70 $REMOTE_URL 2> $TMP/remote
if [ ! $? = 0 ]; then
rm -f $TMP/tempmsg $TMP/remote
exit
fi
REMOTE_URL="$(cat $TMP/remote)"
rm $TMP/remote
cat << EOF > $TMP/tempmsg
There must be a directory on the server with the Slackware
packages and files arranged in a tree like the FTP site.
The installation script needs to know the name of the
directory on your server that contains the series
subdirectories. For example, if your A series is found at
/slack/slackware/a, then you would respond: /slack/slackware
What is the Slackware source directory?
EOF
dialog --title "SELECT SOURCE DIRECTORY" --inputbox "$(cat $TMP/tempmsg)" \
17 65 $REMOTE_PATH 2> $TMP/slacksrc
if [ ! $? = 0 ]; then
rm -f $TMP/tempmsg $TMP/slacksrc
exit
fi
REMOTE_PATH="$(cat $TMP/slacksrc)"
rm $TMP/slacksrc
cat << EOF > $TMP/tempmsg
In the next screen you should watch for possible errors.
First, we'll download the PACKAGES.TXT from the parent of the
directory that you entered before (which should be the root
of the remote Slackware tree). If that succeeds, then we use
PACKAGES.TXT to reconstruct a local cache of the package tree
(should take a minute or less on an average system).
After that, we're all set to go!
Downloading PACKAGES.TXT at the Slackware root starts
after you press OK.
That file is several hundreds of KB in size so it may
take some time to get here...
EOF
dialog --title "DOWNLOAD INFORMATION" --msgbox "$(cat $TMP/tempmsg)" 20 70
rm -f $TMP/tempmsg
REMOTE_ROOT=$(dirname $REMOTE_PATH)
mkdir -p $TMP/treecache 2>/dev/null
chmod 700 $TMP/treecache
rm -rf $TMP/treecache/* 2>/dev/null
ln -sf $TMP/treecache /var/log/mount/
cd /var/log/mount/treecache
echo "Downloading PACKAGES.TXT ..." >> $TMP/wgetout
echo "URL: $REMOTE_URL$REMOTE_ROOT" > $TMP/wgetout
wget -q $REMOTE_URL$REMOTE_ROOT/PACKAGES.TXT > /dev/null 2>&1
RET=$?
if [ $RET != 0 ]; then
echo "> Download failed. Going to try one directory lower." >> $TMP/wgetout
REMOTE_ROOT=$REMOTE_PATH
echo "URL: $REMOTE_URL$REMOTE_ROOT" >> $TMP/wgetout
wget -q $REMOTE_URL$REMOTE_ROOT/PACKAGES.TXT > /dev/null 2>&1
RET=$?
[ $RET != 0 ] && echo "> Download failed again." >> $TMP/wgetout
fi
echo "" >> $TMP/wgetout
if [ -r /var/log/mount/treecache/PACKAGES.TXT ]; then
if head /var/log/mount/treecache/PACKAGES.TXT | grep -q "PACKAGES.TXT" ; then
echo "A Slackware 'PACKAGES.TXT' is available. Ready to continue!" >> $TMP/wgetout
DEFANSW="no"
fi
else
echo "No file 'PACKAGES.TXT' was found. Wrong URL?" >> $TMP/wgetout
DEFANSW="yes"
fi
echo "" >> $TMP/wgetout
echo "Do you want to try setting up FTP/HTTP again?" >> $TMP/wgetout
echo "" >> $TMP/wgetout
if [ "$DEFANSW" = "no" ]; then
dialog --title "DOWNLOAD RESULT" \
--defaultno --yesno "$(cat $TMP/wgetout)" 12 68
RET=$?
else
dialog --title "DOWNLOAD RESULT" \
--yesno "$(cat $TMP/wgetout)" 12 68
RET=$?
fi
if [ $RET = 1 ]; then
rm -f $TMP/wgetout
break
fi
rm -f $TMP/wgetout
#if [ "$UPNRUN" = "1" ]; then
# route del $LOCAL_NETWORK
# ifconfig $ENET_DEVICE down
#fi
done
if [ -r /var/log/mount/treecache/PACKAGES.TXT ]; then
echo "/var/log/mount/treecache/slackware" > $TMP/SeTDS
echo "-source_mounted" > $TMP/SeTmount
echo "/dev/null" > $TMP/SeTsource
echo "${REMOTE_URL},${REMOTE_ROOT}" > $TMP/SeTremotesvr
dialog --title "INITIALIZING PACKAGE TREE" --infobox \
"\nSetting up local cache for the FTP/HTTP server's package tree ..." 5 72
mkdir slackware isolinux 2>/dev/null
wget -q -P ./isolinux $REMOTE_URL$REMOTE_ROOT/isolinux/setpkg
# Create a local package tree with zero-byte package placeholders:
TOTALP=$(grep "PACKAGE NAME:" PACKAGES.TXT | wc -l)
(
NUMPKG=0
GAUGE=0
grep "PACKAGE " PACKAGES.TXT | while read REPLY ; do
case "$REPLY" in
"PACKAGE NAME:"*)
TEMP=$(echo $REPLY | cut -d: -f2)
PKGNAME=$(echo $TEMP)
PKGBASE=$(pkgbase $PKGNAME)
PKGSHRT=$(package_name $PKGNAME)
let NUMPKG=NUMPKG+1
if [ $(( ((100 * $NUMPKG)/$TOTALP)/5 )) -gt $(( $GAUGE/5 )) ]; then
GAUGE=$(( (100 * $NUMPKG)/$TOTALP ))
echo "$GAUGE"
fi
;;
"PACKAGE LOCATION:"*)
TEMP=$(echo $REPLY | cut -d: -f2)
PKGDIR=$(echo $TEMP)
mkdir -p $PKGDIR
touch ${PKGDIR}/${PKGNAME}
;;
"PACKAGE SIZE (compressed):"*)
TEMP=$(echo $REPLY | cut -d: -f2)
PKGSIZE=$(echo $TEMP)
echo "$PKGSIZE" 1> ${PKGDIR}/${PKGBASE}.size
;;
*)
;;
esac
done \
) | dialog --title "INITIALIZING PACKAGE TREE" --gauge \
"\nProcessing ${TOTALP} Slackware packages..." 8 65
# Make sure we can select stuff from the package series:
dialog --title "INITIALIZING PACKAGE TREE" --infobox \
"\nRetrieving tagfile information for the package tree ..." 5 65
for series in $(ls -1 slackware) ; do
wget -q -P ./slackware/$series $REMOTE_URL$REMOTE_ROOT/slackware/$series/tagfile
wget -q -P ./slackware/$series $REMOTE_URL$REMOTE_ROOT/slackware/$series/maketag.ez
wget -q -P ./slackware/$series $REMOTE_URL$REMOTE_ROOT/slackware/$series/maketag
done
else
dialog --title "REMOTE SERVER CONFIGURATION" --msgbox \
"\nFailed to configure for installation from remote server." 5 65
fi