On 11/23/2011 07:52 PM, Thomas Bächler wrote:
Am 23.11.2011 23:36, schrieb Gerardo Exequiel Pozzi:
The releng env is currently set to build every 4 days. And it should
auto-update archiso from git IIRC
Gerardo didn't push these patches to archiso.git yet. That's why I asked.
These patches are waiting for next mkinitcpio + pending RFC patch to fix
BASEDIR (Or I can just say "good-bye" to -b BASEDIR and use chroot
mkinitcpio")
We could install mkinitcpio-git in the releng environments. Dieter?
Also I want to change a bit the directory structure of the ISO to be
more pxelinux friendly.
This is a change that I want to do long long time ago, but breaks "the
nice scheme" (syslinux only files in one place, kernel/initramfs in
other...).
[...]
bah, is still nice...
is there any objections?
I like the old scheme better. I like how the bootloader files are
separate from the linux files.
Yes current scheme is nice.
We can start a TFTP/FTP/HTTP/NFS that points directly to
/run/archiso/bootmnt from the live-enviroment. Or just extract/mount the
ISO in a running system ;)
Why can't we do that with the current scheme?
Because pxelinux works different compared to other bootloaders (in terms
of filesystem).
While syslinux/isolinux/extlinux you can see all files from the
filesystem where is installed. For example extlinux installed on
/boot/syslinux/ld-linux.sys from the bootloader you can access to
/anyotherdir.
In pxelinux things works differently, You have it installed on
/tftpboot/syslinux/pxelinux.0 and you can not access to files outside
"syslinux/" when you reference a file as "/pepito.txt" you are trying to
access to /tftpboot/syslinux/pepito.txt (even if tftpd root is set to
/tftpboot/).
Yes sure still can be referenced as tftp:// (or http://)
I tried with change the tftp-prefix with dhcp-option 210
(pxelinux.pathprefix) "dnsmasq --dhcp-option-force=210,/" then having
this scheme (by default will take syslinux/ as prefix, the directory
where pxelinux.0 is found)
/tftpboot/arch/boot/i686/vmlinuz
/tftpboot/syslinux/with-all-files-here
/tftpboot/pxelinux.cfg/default
And default file with this content (the same method used in ISO under
/isolinux/isolinux.cfg)
---
DEFAULT loadconfig
LABEL loadconfig
CONFIG /syslinux/syslinux.cfg
APPEND /syslinux/
---
All things related to syslinux loads OK (c32, splash.png, etc...) but
when you try to access to /arch/boot/i686/vmlinuz is not found
boot: cat /arch/pepe.txt
cat.c32: /arch/pepe.txt: file not found
boot: cat tftp://192.168.0.77/arch/pepe.txt
I Am /tftpboot/arch/pepe.txt
boot: cat pepe.txt
I Am /tftpboot/syslinux/pepe.txt
boot: cat /pepe.txt
I Am /tftpboot/syslinux/pepe.txt
boot:
-------------
Another alternative directory scheme is
/arch/boot/{i686,x86_64}/{vmlinuz,archiso.img,...}
/arch/boot/syslinux/*.{cfg,c32,...}
/arch/boot/pxelinux.cfg/default <- this is a copy of syslinux.cfg (not a
"loadconfig" hack) So in the case of dual-iso, we need *.cfg files here.
/arch/boot/{g,p}xelinux.0
--
Gerardo Exequiel Pozzi
\cos^2\alpha + \sin^2\alpha = 1