Avoid Slackware 14.2’s obsolete v4.07
ls -lF /var/log/packages/syslinux* removepkg syslinux
Requirements
#official slackpkg install nasm uuid python3 which nasm ls -lF /usr/include/uuid/uuid.h ln -s python3 /usr/bin/python #slackonly slackpkg install ucl upx ls -lF /var/log/packages/ucl-* ls -lF /var/log/packages/upx-* ldd /usr/bin/gpg ldd /usr/libexec/gnupg/gpgkeys_hkp slackpkg install nghttp2 brotli cyrus-sasl
Fetch the latest SYSLINUX stable
wget https://cdn.kernel.org/pub/linux/utils/boot/syslinux/syslinux-6.03.tar.gz wget https://cdn.kernel.org/pub/linux/utils/boot/syslinux/syslinux-6.03.tar.sign tar xzf syslinux-6.03.tar.gz gunzip syslinux-6.03.tar.gz gpg --recv-keys 58F7ABFE gpg --verify syslinux-6.03.tar.sign
gets
Primary key fingerprint: D864 55E3 D1D0 9620 37AA 86E0 88AE 647D 58F7 ABFE
apply debian patches
wget https://lab.nethence.com/nunux/syslinux603-debian-patches.tar.gz tar xzf syslinux603-debian-patches.tar.gz tar xf syslinux-6.03.tar cd syslinux-6.03/ for f in ../syslinux603-debian-patches/*.patch; do patch -p1 < $f; done; unset f
and proceed
echo $MAKEJOBS time nice make > ../syslinux.log && echo BUILT nice make install > ../syslinux.install.log && echo INSTALLED
with binaries
apt install syslinux-utils extlinux
from source
apt update apt install build-essential uuid-dev nasm upx-ucl
build as described above, and prevent Ubuntu from running update-grub
without asking
dpkg -l | grep grub apt purge ...
now check you’ve got EXTLINUX
which extlinux ls -lF /sbin/extlinux extlinux -v # slackware ls -lF /usr/share/syslinux/mbr.bin ls -lF /usr/share/syslinux/efi64/syslinux.efi # ubuntu ls -lF /usr/lib/syslinux/mbr/mbr.bin ls -lF /usr/lib/SYSLINUX.EFI/efi64/syslinux.efi
Package: syslinux https://sources.debian.org/patches/syslinux/
Package: syslinux / 3:6.03+dfsg-14.1+deb9u1 https://sources.debian.org/patches/syslinux/3:6.03+dfsg-14.1+deb9u1/
syslinux package in Ubuntu https://launchpad.net/ubuntu/+source/syslinux
or testing
wget https://cdn.kernel.org/pub/linux/utils/boot/syslinux/Testing/6.04/syslinux-6.04-pre1.tar.gz tar xzf syslinux-6.04-pre1.tar.gz cd syslinux-6.04-pre1
git clone --recursive git://repo.or.cz/syslinux.git cd syslinux/
Install latest UCL library
ls -lF /var/log/packages/ucl* slackpkg install ucl #slackonly wget https://www.oberhumer.com/opensource/ucl/download/ucl-1.03.tar.gz tar xzf ... cd ... ./configure nice make -j$j nice make install
Install latest UPX
ls -lF /var/log/packages/upx* slackpkg install upx #slackonly wget https://github.com/upx/upx/releases/download/v3.95/upx-3.95-src.tar.xz tar xJf upx-3.95-src.tar.xz cd upx-3.95-src/src/ nice make -j$j install -D upx.out /usr/local/bin/upx