[syslinux] [PATCH 3/3] syslinux: support isolinux configuration files

Thomas Bächler thomas at archlinux.org
Tue Feb 14 06:43:38 PST 2012


Am 14.02.2012 15:05, schrieb Pete Batard:
> This one is the most critical for my app, but also possibly the most
> controversial to integrate.
> 
> A few applications that convert isolinux ISOs to bootable USB, including
> mine, copy the ISO content to a VFAT formatted partition and then add
> syslinux to make it bootable.
> This would work great... if isolinux and syslinux shared the same
> defaults when it comes to configuration files.

NAK.

If we want to unify configuration file names, we first need to unify
behaviour:

1) "Working directory"
* ISOLINUX: Working directory is /, config file is hardcoded to a
restricted set of paths.
* SYSLINUX: Working directory is the directory the config file lives,
the same where ldlinux.sys lives.
* PXELINUX: Working directory is the "prefix", config file is given as a
relative path.

2) ".." support:
* ISOLINUX: No ".." support in paths
* SYSLINUX: ".." in paths supported
* PXELINUX: No ".." support in paths

When we unified directory structure in the Arch Linux ISO, this caused
problems. We now have several "loadconfig" tricks to get a unified
configuration:

* ISOLINUX: /isolinux/isolinux.cfg:

DEFAULT loadconfig

LABEL loadconfig
  CONFIG /arch/boot/syslinux/archiso.cfg
  APPEND /arch/

(Note that the path /arch/ is hardcoded).

* SYSLINUX: Install syslinux in /arch/boot/syslinux/ldlinux.sys, config
file /arch/boot/syslinux/syslinux.cfg:

DEFAULT loadconfig

LABEL loadconfig
  CONFIG archiso.cfg
  APPEND ../../

(Note that the path /arch/ is not hardcoded, you can move the toplevel
directory anywhere on the medium).

* PXELINUX: Directly tell syslinux the right prefix ($TFTPDIR/arch/) and
have "boot/syslinux/archiso.cfg" as the configuration file.

This was the ONLY way to unify configuration files across all three
systems and at the same time use _relative paths_ everywhere. It would
have been easier if isolinux and pxelinux had allowed "..".

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 900 bytes
Desc: OpenPGP digital signature
URL: <http://www.zytor.com/pipermail/syslinux/attachments/20120214/687cec2d/attachment.sig>


More information about the Syslinux mailing list