You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

63 lines
1.6 KiB

#!/bin/bash
# This script will update the file ../bootfiles/isolinux.bin to match
# your LiveKit name. Note you may need to run this on a 32bit system.
#
# Requires: Debian
#
set -e
CWD=$(pwd)
echo
echo "--------------------------------------------------------------------"
echo "Add directory to isolinux search paths (usually /\$LIVEKITNAME/boot)"
echo -n "(for example /slax/boot or /linux/boot): "
read DIR
# download, unpack, and patch syslinux
if ! apt-get --yes build-dep syslinux; then
echo "the most common cause of build-dep failures can be solved by following the steps described here: https://askubuntu.com/questions/496549/error-you-must-put-some-source-uris-in-your-sources-list"
exit 1
fi
mkdir -m 0777 /tmp/syslinux
cd /tmp/syslinux
apt-get source syslinux
apt-get --yes install upx
cd syslinux*/core
for file in fs/iso9660/iso9660.c fs/lib/loadconfig.c elflink/load_env32.c; do
sed -i -r 's:"/",:"'$DIR'",\n\t"/",:' $file
done
cd ../
rm -f bios/core/isolinux.bin
rm -f bios/com32/elflink/ldlinux/ldlinux.c32
rm -f bios/com32/lib/libcom32.c32
rm -f bios/com32/libutil/libutil.c32
rm -f bios/com32/menu/vesamenu.c32
rm -f bios/extlinux/extlinux
make -j 8 -i
echo
echo "Copying files to $CWD ..."
cp bios/core/isolinux.bin $CWD
cp bios/com32/elflink/ldlinux/ldlinux.c32 $CWD
cp bios/com32/lib/libcom32.c32 $CWD
cp bios/com32/libutil/libutil.c32 $CWD
cp bios/com32/menu/vesamenu.c32 $CWD
ARCH=$(uname -m)
if [ "$ARCH" = "x86_64" ]; then ARCH=64; else ARCH=32; fi
EXTLINUX=extlinux.x$ARCH
strip --strip-unneeded bios/extlinux/extlinux
cp bios/extlinux/extlinux $CWD/extlinux.x$ARCH
echo "done"