[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Adding preseeding and firmware to wheezy iso netinst



(Please cc me)
Hello d-i team,

I want to use the current Debian installer (7.0 Beta4) hybrid ISO
netinst but when I add a preseed.cfg file, EFI boot doesn't work.

What I need:
- Boot on CD-ROM Legacy (BIOS)
- Boot on USB Legacy (BIOS)
- Boot on USB EFI
- Boot from other modes?
- Add a preseed.cfg
- (sometimes) add some firmware files

Steve told me to use xorriso as found in the .disk/mkisofs file but I
didn't succeeded.

Having a simple tool to do this would be useful, like:
mkdebianiso --preseed=preseed.cfg --firmware=firmware-bnx2_*_all.deb
--firmware=firmware-qlogic_*_all.deb
debian-wheezy-DI-b4-amd64-netinst.iso


Regards
--
Mathieu Parent

PS:
What I have done so far:

# Some vars
DEBIAN_ISO_VERSION='wheezy-DI-b4-amd64'
DEBIAN_DIR_VERSION='wheezy_di_beta4'
mkdir ~/mk_debian_inst
cd ~/mk_debian_inst

# Get ISO and preseed
wget http://cdimage.debian.org/cdimage/$DEBIAN_DIR_VERSION/amd64/iso-cd/debian-$DEBIAN_ISO_VERSION-netinst.iso
wget http://autoserver/d-i/wheezy/preseed.cfg # Local webserver

# Some deps
sudo aptitude install bsdtar xorriso syslinux-common

# Extract iso
mkdir cd
bsdtar -C cd -xf debian-$DEBIAN_ISO_VERSION-netinst.iso

# Preseed:
mkdir irmod
cd irmod
gzip -d < ../cd/install.amd/initrd.gz | \
    cpio --extract --make-directories --no-absolute-filenames
cp ../preseed.cfg preseed.cfg
chmod +w ../cd/install.amd/initrd.gz
find . | cpio -H newc --create --verbose | \
        gzip -9 > ../cd/install.amd/initrd.gz
chmod -w ../cd/install.amd/initrd.gz
cd ../
rm -fr irmod/

# Auto boot after 5 sec
chmod +w cd/isolinux/
sed -i 's/^timeout 0$/timeout 50/' cd/isolinux/isolinux.cfg
chmod -w cd/isolinux/
chmod +w ./cd/isolinux/isolinux.bin

# Build the image -> FAILURE
xorriso -as mkisofs -r -checksum_algorithm_iso md5,sha1,sha256,sha512 \
 -V 'Debian wheezy-DI-b4 amd64 1' \
 -o debian-$DEBIAN_ISO_VERSION-netinst-nantes.iso \
 -jigdo-exclude /.disk/ -jigdo-exclude /pics/ -jigdo-exclude
'Release*' -jigdo-exclude 'Packages*' -jigdo-exclude 'Sources*' \
 -J -isohybrid-mbr /usr/lib/syslinux/isohdpfx.bin -partition_offset 16 \
 -J -joliet-long -cache-inodes -b isolinux/isolinux.bin -c
isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table
-eltorito-alt-boot \
 --efi-boot boot/grub/efi.img -append_partition 2 0x01
cd/boot/grub/efi.img boot1 CD1

# How it fails:
xorriso 1.2.2 : RockRidge filesystem manipulator, libburnia project.

Drive current: -outdev 'stdio:debian-wheezy-DI-b4-amd64-netinst-nantes.iso'
Media current: stdio file, overwriteable
Media status : is blank
Media summary: 0 sessions, 0 data blocks, 0 data, 61.1g free
xorriso : WARNING : -volid text problematic as automatic mount point name
xorriso : WARNING : -volid text does not comply to ISO 9660 / ECMA 119 rules
xorriso : NOTE : -as mkisofs: Ignored option '-cache-inodes'
xorriso : FAILURE : Cannot determine attributes of source file
'/home/aadsi255/Téléchargements/mk_debian_inst/boot1' : No such file
or directory
xorriso : aborting : -abort_on 'FAILURE' encountered 'FAILURE'


Reply to: