shell-scripte-code/make_mksquashfs.sh

64 lines
2.8 KiB
Bash
Raw Normal View History

2017-02-05 21:32:44 +01:00
#!/bin/bash
echo "HOOKS="base udev archiso sata filesystems"" > work/airootfs/etc/mkinitcpio.conf
2017-02-05 21:35:59 +01:00
echo "COMPRESSION="xz"" >> work/airootfs/etc/mkinitcpio.conf
2017-02-05 21:32:44 +01:00
2017-02-05 21:10:37 +01:00
arch-chroot work/airootfs mkinitcpio -p linux
2017-02-05 20:31:03 +01:00
mkdir work/iso
mkdir work/iso/isolinux
mkdir work/iso/arch
mkdir work/iso/arch/boot
mkdir work/iso/arch/x86_64
mkdir work/iso/arch/boot/x86_64
mkdir work/iso/arch/boot/syslinux
cp -R work/airootfs/usr/lib/syslinux/bios/* work/iso/arch/boot/syslinux/
cp work/airootfs/boot/initramfs-linux.img work/iso/arch/boot/x86_64/
cp work/airootfs/boot/initramfs-linux-fallback.img work/iso/arch/boot/x86_64/
cp work/airootfs/boot/vmlinuz-linux work/iso/arch/boot/x86_64/
2017-02-05 21:19:16 +01:00
cp work/airootfs/usr/lib/syslinux/bios/isolinux.bin work/iso/isolinux/
cp work/airootfs/usr/lib/syslinux/bios/isohdpfx.bin work/iso/isolinux/
cp work/airootfs/usr/lib/syslinux/bios/ldlinux.c32 work/iso/isolinux/
2017-02-05 20:31:03 +01:00
2017-02-05 20:33:47 +01:00
arch-chroot work/airootfs LANG=C pacman -Sl | awk '/\[installed\]$/ {print $1 "/" $2 "-" $3}' > /pkglist.txt
2017-02-05 21:10:37 +01:00
cp work/airootfs/pkglist.txt work/iso/arch/x86_64/
2017-02-05 20:33:47 +01:00
arch-chroot work/airootfs pacman -Scc
2017-02-05 21:29:43 +01:00
mksquashfs work/airootfs work/iso/arch/x86_64/airootfs.sfs -noappend -comp xz
2017-02-05 20:48:18 +01:00
md5sum work/iso/arch/x86_64/airootfs.sfs > work/iso/arch/x86_64/airootfs.md5
echo "DEFAULT menu.c32" > work/iso/arch/boot/syslinux/syslinux.cfg
echo "PROMPT 0" >> work/iso/arch/boot/syslinux/syslinux.cfg
echo "MENU TITLE Simon Linux" >> work/iso/arch/boot/syslinux/syslinux.cfg
echo "TIMEOUT 300" >> work/iso/arch/boot/syslinux/syslinux.cfg
echo "" >> work/iso/arch/boot/syslinux/syslinux.cfg
echo "LABEL arch" >> work/iso/arch/boot/syslinux/syslinux.cfg
echo "MENU LABEL Simon Linux" >> work/iso/arch/boot/syslinux/syslinux.cfg
echo "LINUX ../x86_64/vmlinuz-linux" >> work/iso/arch/boot/syslinux/syslinux.cfg
echo "INITRD ../x86_64/initramfs-linux-fallback.img" >> work/iso/arch/boot/syslinux/syslinux.cfg
echo "APPEND archisolabel=SIMON_LINUX" >> work/iso/arch/boot/syslinux/syslinux.cfg
echo "" >> work/iso/arch/boot/syslinux/syslinux.cfg
echo "ONTIMEOUT arch" >> work/iso/arch/boot/syslinux/syslinux.cfg
echo "DEFAULT loadconfig" > work/iso/isolinux/isolinux.cfg
echo "" >> work/iso/isolinux/isolinux.cfg
echo "LABEL loadconfig" >> work/iso/isolinux/isolinux.cfg
echo " CONFIG /arch/boot/syslinux/syslinux.cfg" >> work/iso/isolinux/isolinux.cfg
echo " APPEND /arch/boot/syslinux/" >> work/iso/isolinux/isolinux.cfg
2017-02-05 20:39:58 +01:00
read -p "Soll das Image jetzt gemacht werden? [Y/n] " image
2017-02-05 21:05:57 +01:00
if [ "$image" != "n" ]
2017-02-05 20:39:58 +01:00
then
mkdir out
xorriso -as mkisofs \
-iso-level 3 \
-full-iso9660-filenames \
-volid "SIMON_LINUX" \
2017-02-05 21:42:47 +01:00
-eltorito-boot isolinux/isolinux.bin \
-eltorito\-catalog isolinux/boot.cat \
2017-02-05 20:39:58 +01:00
-no-emul-boot -boot-load-size 4 -boot-info-table \
2017-02-05 21:38:46 +01:00
-isohybrid-mbr $(pwd)/work/iso/isolinux/isohdpfx.bin \
2017-02-05 21:42:47 +01:00
-output out/arch-simon-linux-$(date "+%y.%m.%d")-x86_64.iso work/iso/
2017-02-05 20:39:58 +01:00
fi