[arch-releng] [PATCH] [configs/releng] Make kernel and initramfs patch relative for syslinux

Gerardo Exequiel Pozzi vmlinuz386 at yahoo.com.ar
Thu Nov 24 19:43:43 EST 2011


On 11/24/2011 07:32 PM, Gerardo Exequiel Pozzi wrote:
> On 11/24/2011 01:20 PM, Thomas Bächler wrote:
>> Am 24.11.2011 17:01, schrieb Gerardo Exequiel Pozzi:
>>> Aha! I now rebember why I pushed absolute paths in syslinux.cfg: 
>>> isolinux does not support ".." in paths!
>>>
>>> Only (ext|sys)linux have this and other nice features like install 
>>> it on any path. ;)
>>>
>>>
>>> PS: Sorry I for "de-chain-email" am outside my home from webmail.
>> Holy shit! This needs to be fixed, otherwise we cannot unify the
>> configuration files without ugliness. See my previous mail about ".." in
>> TFTP paths.
>>
> Yes I read it. So as you can see we have these choices we want to 
> unify dir struct for all bootloaders: (in resume)
>
> 1) Change directory scheme, put kernel/initramfs inside 
> syslinux/%ARCH%, keep _all_ files references *relative* (also we can 
> change current absolute paths to make it relative)
> 2) Keep directory scheme as now, but change _all_ files references to 
> make it *absolute*. Plus adding a pxelinux.cfg with "loadconfig".
pxelinux.cfg "loadconfig" not needed putting it will change the prefix, 
and will not work for tftp.

This is currently implemented in pxe_enhanced branch [#1] Is working in 
*all* bootloaders. Just mount iso in some path, make it as tftp_root or 
http_root and thats all.

# mount iso in some place
mount -o ro /tmp/out/archlinux-2011.11.24-netinstall-i686.iso /mnt/iso

# Setup DHCP only for HTTP method (gpxe only)
dnsmasq --port=0 \
         --dhcp-range=192.168.0.2,192.168.0.254,8640 \
         --dhcp-boot=arch/boot/syslinux/gpxelinux.0,192.168.0.77 \
         --dhcp-option-force=209,arch/boot/syslinux/syslinux.cfg \
         --dhcp-option-force=210,http://192.168.0.77/

# Setup DHCP for TFTP/HTTP (others pxe)
dnsmasq --port=0 \
         --enable-tftp \
         --tftp-root=/mnt/iso \
         --dhcp-range=192.168.0.2,192.168.0.254,8640 \
         --dhcp-boot=arch/boot/syslinux/gpxelinux.0,192.168.0.77 \
         --dhcp-option-force=209,arch/boot/syslinux/syslinux.cfg \
         --dhcp-option-force=210,/

# Setup a quickly HTTP server (for both cases)
darkhttpd /mnt/iso

[#1] https://github.com/djgera/archiso/compare/experimental...pxe_enhanced

> 3) Wait some time for feature ".." in pxelinux/isolinux.
>
>
> For each scheme I see some points:
> 1) Is not nice, we have mixed files.
> 2) Does not look to bad like (1), and if you think we have currently 
> absolute paths _mixed_ with relative path, I this way we have _all_ 
> path in only way form. Is trivial if you want to rename "/arch" to 
> "/anyotherdirectory", or move "syslinux/" to another place.
> 3) The beautiful solution, but I guess will take some time to be 
> implemented, in the case that can be possible.
>
> I think we can use (2) until we get (3).
>


-- 
Gerardo Exequiel Pozzi
\cos^2\alpha + \sin^2\alpha = 1



More information about the arch-releng mailing list