summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libre/syslinux/PKGBUILD64
-rw-r--r--libre/syslinux/syslinux-install_update2
-rw-r--r--libre/syslinux/syslinux.install53
3 files changed, 71 insertions, 48 deletions
diff --git a/libre/syslinux/PKGBUILD b/libre/syslinux/PKGBUILD
index ad30022df..345523b0f 100644
--- a/libre/syslinux/PKGBUILD
+++ b/libre/syslinux/PKGBUILD
@@ -1,11 +1,11 @@
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
# Maintainer: Thomas Bächler <thomas@archlinux.org>
-# Contributor: Keshav Padram (the.ridikulus.rat) (aatt) (gemmaeiil) (ddoott) (ccoomm)>
+# Contributor: Keshav Padram Amburay <(the ddoott ridikulus ddoott rat) (aatt) (gemmaeiil) (ddoott) (ccoomm)>
# Maintainer (Parabola): André Silva <emulatorman@parabola.nu>
pkgname="syslinux"
pkgver="6.02"
-pkgrel="4"
+pkgrel="6"
arch=('x86_64' 'i686')
pkgdesc="Collection of boot loaders that boot from FAT, ext2/3/4 and btrfs filesystems, from CDs and via PXE (Parabola rebranded)"
url="http://syslinux.zytor.com/"
@@ -30,9 +30,30 @@ source=("https://www.kernel.org/pub/linux/utils/boot/syslinux/${pkgname}-${pkgve
'splash.png')
md5sums=('6f275813a1b08cf852e55c0a3f8fbc78'
'f048880b57e2c5a7017ff8804bfda327'
- '9da2b8b25ea8d628887f11749dc3fffa'
- '9dbede6b71a4de9e46aac4aad65334d7'
+ '9376f18fa3e42fc36cffa4cff0a84c09'
+ '9dbede6b71a4de9e46aac4aad65334d7
'cb46ca47c6b6323127d908440057d98f')
+prepare() {
+
+ cd "${srcdir}/${pkgname}-${pkgver}/"
+
+ ## Do not try to build the Windows or DOS installers and DIAG files
+ sed 's|diag libinstaller dos win32 win64 dosutil txt|libinstaller txt|g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true
+ sed 's|win32/syslinux.exe win64/syslinux64.exe||g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true
+ sed 's|dosutil/*.com dosutil/*.sys||g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true
+ sed 's|dos/syslinux.com||g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true
+ sed 's|INSTALLSUBDIRS = com32 utils dosutil|INSTALLSUBDIRS = com32 utils|g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true
+ sed 's|install -m 644 -c $(INSTALL_DIAG) $(INSTALLROOT)$(DIAGDIR)|# install -m 644 -c $(INSTALL_DIAG) $(INSTALLROOT)$(DIAGDIR)|g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true
+
+ ## Fix FHS manpage path
+ sed 's|/usr/man|/usr/share/man|g' -i "${srcdir}/${pkgname}-${pkgver}/mk/syslinux.mk" || true
+
+ # fix chainloading
+ # http://bugzilla.syslinux.org/show_bug.cgi?id=31
+ # http://www.syslinux.org/archives/2013-October/020971.html
+ patch -Np1 -i "${srcdir}/syslinux-6.02-fix-chainloading.patch"
+
+}
_build_syslinux_bios() {
@@ -43,7 +64,8 @@ _build_syslinux_bios() {
## Do not try to build syslinux with our default LDFLAGS, it will fail
unset LDFLAGS
make PYTHON="python2" bios
- make PYTHON="python2" bios installer
+ make PYTHON="python2" bios installer
+
}
_build_syslinux_efi64() {
@@ -60,7 +82,8 @@ _build_syslinux_efi64() {
unset MAKEFLAGS
make PYTHON="python2" efi64
- make PYTHON="python2" efi64 installer
+ make PYTHON="python2" efi64 installer
+
}
_build_syslinux_efi32() {
@@ -77,29 +100,14 @@ _build_syslinux_efi32() {
unset MAKEFLAGS
make PYTHON="python2" efi32
- make PYTHON="python2" efi32 installer
+ make PYTHON="python2" efi32 installer
+
}
build() {
cd "${srcdir}/${pkgname}-${pkgver}/"
- ## Do not try to build the Windows or DOS installers and DIAG files
- sed 's|diag libinstaller dos win32 win64 dosutil txt|libinstaller txt|g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true
- sed 's|win32/syslinux.exe win64/syslinux64.exe||g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true
- sed 's|dosutil/*.com dosutil/*.sys||g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true
- sed 's|dos/syslinux.com||g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true
- sed 's|INSTALLSUBDIRS = com32 utils dosutil|INSTALLSUBDIRS = com32 utils|g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true
- sed 's|install -m 644 -c $(INSTALL_DIAG) $(INSTALLROOT)$(DIAGDIR)|# install -m 644 -c $(INSTALL_DIAG) $(INSTALLROOT)$(DIAGDIR)|g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true
-
- ## Fix FHS manpage path
- sed 's|/usr/man|/usr/share/man|g' -i "${srcdir}/${pkgname}-${pkgver}/mk/syslinux.mk" || true
-
- # fix chainloading
- # http://bugzilla.syslinux.org/show_bug.cgi?id=31
- # http://www.syslinux.org/archives/2013-October/020971.html
- patch -Np1 -i "${srcdir}/syslinux-6.02-fix-chainloading.patch"
-
## Build syslinux-efi
if [[ "${CARCH}" == "x86_64" ]]; then
_build_syslinux_efi64
@@ -151,7 +159,7 @@ _package_syslinux_bios() {
install -D -m644 "${srcdir}/splash.png" "${pkgdir}/boot/syslinux/splash.png"
}
-package() {
+_package_syslinux_efi() {
cd "${srcdir}/${pkgname}-${pkgver}/"
@@ -165,6 +173,14 @@ package() {
make INSTALLROOT="${pkgdir}/" AUXDIR="/usr/lib/syslinux/" efi32 install
fi
+}
+
+package() {
+
+ cd "${srcdir}/${pkgname}-${pkgver}/"
+
+ _package_syslinux_efi
+
_package_syslinux_bios
}
diff --git a/libre/syslinux/syslinux-install_update b/libre/syslinux/syslinux-install_update
index 251b9c482..e278904e2 100644
--- a/libre/syslinux/syslinux-install_update
+++ b/libre/syslinux/syslinux-install_update
@@ -334,7 +334,7 @@ update() {
install_modules
if device_is_raid "$bootpart" ; then
- echo "Detected RAID on /boot - installing Syslinux with --raid"
+ echo "Detected RAID on /boot - updating Syslinux with --raid"
"$EXTLINUX" --update "$bios_bootpath" --raid &> /dev/null
else
"$EXTLINUX" --update "$bios_bootpath" &> /dev/null
diff --git a/libre/syslinux/syslinux.install b/libre/syslinux/syslinux.install
index 7dc7a43c1..ed8387773 100644
--- a/libre/syslinux/syslinux.install
+++ b/libre/syslinux/syslinux.install
@@ -1,36 +1,43 @@
post_install() {
- echo "==> If you want to use syslinux as your BIOS bootloader"
- echo "==> edit /boot/syslinux/syslinux.cfg and run"
- echo "==> # /usr/bin/syslinux-install_update -i -a -m"
- echo "==> to install it."
cat << EOF
-Syslinux efi64 and efi32 files have been installed at
-/usr/lib/syslinux/{efi64,efi32}/ respectively.
-To install, copy /usr/lib/syslinux/efi64 to (ESP)/EFI/syslinux and
-syslinux.cfg to (ESP)/EFI/syslinux/syslinux.cfg and add a boot entry
-using efibootmgr for (ESP)/EFI/syslinux/syslinux.efi
+==> For setting up Syslinux BIOS using the syslinux-install_update script follow
+ https://wiki.parabolagnulinux.org/index.php/Syslinux#Automatic_Install
EOF
+
+ ## Message specific to Syslinux 4.xx (or 5.xx) to 6.xx upgrade
+ if [ "$(vercmp $2 6.00)" -lt 0 ]; then
+
+ cat << EOF
+
+==> If you are upgrading from Syslinux 4.xx or 5.xx, please re-install
+ (not update) Syslinux BIOS manually (not using the install script) once
+ by following https://wiki.parabolagnulinux.org/index.php/Syslinux#Manual_install
+
+==> The install script may not properly upgrade Syslinux to 6.xx version
+EOF
+
+ fi
+
+ cat << EOF
+
+==> For setting up Syslinux EFI follow
+ https://wiki.parabolagnulinux.org/index.php/Syslinux#UEFI_Systems
+==> The syslinux-install_update script does not currently support EFI install
+
+EOF
+
}
post_upgrade() {
- # auto-update syslinux if /boot/syslinux/SYSLINUX_AUTOUPDATE exists
+
+ ## auto-update syslinux if /boot/syslinux/SYSLINUX_AUTOUPDATE exists
/usr/bin/syslinux-install_update -s
- # update to 5.01 message
- if [ "$(vercmp $2 5.01)" -lt 0 ]; then
- echo "If you used syslinux-install_update to install syslinux:"
- echo "==> If you want to use syslinux with menu and all modules please rerun"
- echo "==> # /usr/bin/syslinux-install_update -i -a -m"
- echo ""
- echo "If you manually installed syslinux:"
- echo "==> Please copy or symlink all .c32 modules to your /boot/syslinux directory."
- echo "==> If (/ and /boot on separate fs):"
- echo "==> # cp /usr/lib/syslinux/bios/*.c32 /boot/syslinux"
- echo "==> If (/ and /boot on same fs):"
- echo "==> # ln -s /usr/lib/syslinux/bios/*.c32 /boot/syslinux"
- fi
+
+ post_install
+
}
# vim:set ts=2 sw=2 et: