parent
31937f1a4d
commit
fb589ecf00
@ -0,0 +1,117 @@
|
||||
#!/bin/sh
|
||||
|
||||
case $PASS in
|
||||
ubuntu-server-minimal.ubuntu-server.installer.generic.netboot)
|
||||
;;
|
||||
*)
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
|
||||
set -eux
|
||||
|
||||
flavor=generic
|
||||
|
||||
KERNEL=${PWD}/livecd.${PROJECT}.kernel-$flavor
|
||||
INITRD=${PWD}/livecd.${PROJECT}.initrd-$flavor
|
||||
|
||||
mkdir -p tarball/$ARCH
|
||||
|
||||
case $ARCH in
|
||||
s390x)
|
||||
cp $INITRD tarball/$ARCH/initrd.ubuntu
|
||||
cp $KERNEL tarball/$ARCH/kernel.ubuntu
|
||||
;;
|
||||
|
||||
*)
|
||||
cp $INITRD tarball/$ARCH/initrd
|
||||
cp $KERNEL tarball/$ARCH/kernel
|
||||
;;
|
||||
esac
|
||||
|
||||
case $ARCH in
|
||||
amd64)
|
||||
mv chroot/usr/lib/PXELINUX/pxelinux.0 tarball/pxelinux.0
|
||||
mv chroot/usr/lib/syslinux/modules/bios/ldlinux.c32 tarball/ldlinux.c32
|
||||
mv chroot/usr/lib/shim/shimx64.efi tarball/bootx64.efi
|
||||
mv chroot/usr/lib/grub/x86_64-efi-signed/grubnetx64.efi.signed tarball/grubx64.efi
|
||||
|
||||
mkdir tarball/x86_64-efi tarball/pxelinux.cfg
|
||||
cat > tarball/x86_64-efi/grub.cfg.in <<EOF
|
||||
menuentry "Install Ubuntu Server" {
|
||||
set gfxpayload=keep
|
||||
linux amd64/linux url=#ISOURL# ip=dhcp ---
|
||||
initrd amd64/initrd
|
||||
}
|
||||
EOF
|
||||
cat > tarball/pxelinux.cfg/default.in <<EOF
|
||||
DEFAULT install
|
||||
LABEL install
|
||||
KERNEL amd64/linux
|
||||
INITRD amd64/initrd
|
||||
APPEND root=/dev/ram0 ramdisk_size=1500000 ip=dhcp url=#ISOURL# ---
|
||||
EOF
|
||||
;;
|
||||
|
||||
arm64)
|
||||
mv chroot/usr/lib/shim/shimaa64.efi tarball/bootaa64.efi
|
||||
mv chroot/usr/lib/grub/arm64-efi-signed/grubnetaa64.efi.signed tarball/grubaa64.efi
|
||||
|
||||
mkdir tarball/arm64-efi
|
||||
cat > tarball/arm64-efi/grub.cfg.in <<EOF
|
||||
menuentry "Install Ubuntu Server" {
|
||||
set gfxpayload=keep
|
||||
linux arm64/linux url=#ISOURL# ip=dhcp ---
|
||||
initrd arm64/initrd
|
||||
}
|
||||
EOF
|
||||
;;
|
||||
|
||||
s390x)
|
||||
cat > tarball/s390x/ubuntu.exec <<EOF
|
||||
/* REXX EXEC TO IPL Ubuntu for */
|
||||
/* z Systems FROM THE VM READER. */
|
||||
/* */
|
||||
'CP CLOSE RDR'
|
||||
'PURGE RDR ALL'
|
||||
'SPOOL PUNCH * RDR'
|
||||
'PUNCH KERNEL UBUNTU * (NOHEADER'
|
||||
'PUNCH PARMFILE UBUNTU * (NOHEADER'
|
||||
'PUNCH INITRD UBUNTU * (NOHEADER'
|
||||
'CHANGE RDR ALL KEEP NOHOLD'
|
||||
'CP IPL 000C CLEAR'
|
||||
EOF
|
||||
cat > tarball/s390x/ubuntu.ins <<EOF
|
||||
* Ubuntu for IBM Z (default kernel)
|
||||
kernel.ubuntu 0x00000000
|
||||
initrd.off 0x0001040c
|
||||
initrd.siz 0x00010414
|
||||
parmfile.ubuntu 0x00010480
|
||||
initrd.ubuntu 0x01000000
|
||||
EOF
|
||||
cat > tarball/s390x/parmfile.ubuntu.in <<EOF
|
||||
url=#ISOURL# ---
|
||||
EOF
|
||||
perl -e "print pack('N', 0x1000000)" > tarball/s390x/initrd.off
|
||||
perl -e "print pack('N', -s 'tarball/s390x/initrd.ubuntu')" > tarball/s390x/initrd.siz
|
||||
cat > tarball/s390x-kvm.cfg.in <<EOF
|
||||
DEFAULT install
|
||||
LABEL install
|
||||
KERNEL amd64/linux.ubuntu
|
||||
INITRD amd64/initrd.ubuntu
|
||||
APPEND ip=dhcp url=#ISOURL# ---
|
||||
EOF
|
||||
cat > tarball/dpm.cfg.in <<EOF
|
||||
PROMPT 1
|
||||
DEFAULT install
|
||||
TIMEOUT 1
|
||||
LABEL install
|
||||
kernel=amd64/linux.ubuntu
|
||||
initrd=amd64/initrd.ubuntu
|
||||
append=ip=dhcp url=#ISOURL# ---
|
||||
EOF
|
||||
;;
|
||||
esac
|
||||
|
||||
tar -C tarball -czf livecd.${PROJECT}.netboot.tar.gz .
|
||||
rm -rf tarball
|
Loading…
Reference in new issue