New iso/pxe/syslinux config

* Uses main.py settings for KIT_NAME
* Uses archiso %vars% which are expanded during build.sh
* Pxelinux/Syslinux use backgrounds from Images/
This commit is contained in:
2Shirt 2017-12-27 17:19:34 -07:00
parent aac9badc4f
commit cde9953b2a
20 changed files with 217 additions and 8 deletions

View file

@ -0,0 +1,6 @@
PATH /%INSTALL_DIR%/boot/syslinux/
DEFAULT loadconfig
LABEL loadconfig
CONFIG /%INSTALL_DIR%/boot/syslinux/wklive.cfg
APPEND /%INSTALL_DIR%/

View file

View file

@ -0,0 +1,5 @@
DEFAULT loadconfig
LABEL loadconfig
CONFIG wklive.cfg
APPEND ../../

View file

@ -0,0 +1,11 @@
DEFAULT select
LABEL select
COM32 boot/syslinux/whichsys.c32
APPEND -pxe- pxe -sys- sys -iso- sys
LABEL pxe
CONFIG boot/syslinux/wklive_pxe.cfg
LABEL sys
CONFIG boot/syslinux/wklive_sys.cfg

View file

@ -0,0 +1,5 @@
# http://hdt-project.org/
LABEL hdt
MENU LABEL Hardware Information (HDT)
COM32 boot/syslinux/hdt.c32
APPEND modules_alias=boot/syslinux/hdt/modalias.gz pciids=boot/syslinux/hdt/pciids.gz

View file

@ -0,0 +1,43 @@
SERIAL 0 38400
UI boot/syslinux/vesamenu.c32
MENU TITLE _______
MENU BACKGROUND boot/syslinux/syslinux.png
MENU WIDTH 80
MENU MARGIN 10
MENU ROWS 15
MENU VSHIFT 2
MENU TABMSGROW 22
MENU CMDLINEROW 22
MENU HELPMSGROW 24
MENU HELPMSGENDROW -1
MENU TABMSG
# Refer to http://syslinux.zytor.com/wiki/index.php/Doc/menu
MENU COLOR screen 30;44 #a0000000 #a0000000 none
MENU COLOR border 30;44 #a0000000 #a0000000 none
MENU COLOR title 1;36;44 #9033ccff #a0000000 none
MENU COLOR sel 7;37;40 #e0ffffff #a0000000 std
MENU COLOR disabled 37;44 #50ffffff #a0000000 none
MENU COLOR unsel 37;44 #50ffffff #a0000000 none
MENU COLOR help 37;40 #c0ffffff #a0000000 none
MENU COLOR tabmsg 30;44 #a0000000 #a0000000 none
menu color cmdmark 1;36;44 #9033ccff #a0000000 none
menu color cmdline 37;40 #c0ffffff #a0000000 none
MENU COLOR timeout_msg 37;40 #80ffffff #a0000000 none
MENU COLOR timeout 1;37;40 #c0ffffff #a0000000 none
MENU COLOR msg07 37;40 #90ffffff #a0000000 none
MENU COLOR tabmsg 31;40 #30ffffff #a0000000 none
# Start entries
MENU SEPARATOR
# http://www.memtest.org/
LABEL memtest
MENU LABEL Memtest86+
TEXT HELP
Perform RAM diagnostics
* This utility is not recommended for testing DDR4 RAM
ENDTEXT
LINUX boot/memtest

View file

@ -0,0 +1,8 @@
INCLUDE boot/syslinux/wklive_head.cfg
MENU BACKGROUND boot/syslinux/pxelinux.png
INCLUDE boot/syslinux/wklive_pxe_linux.cfg
INCLUDE boot/syslinux/wklive_pxe_winpe.cfg
INCLUDE boot/syslinux/wklive_pxe_extras_entry.cfg
INCLUDE boot/syslinux/wklive_tail.cfg

View file

@ -0,0 +1,9 @@
INCLUDE boot/syslinux/wklive_head.cfg
MENU BACKGROUND boot/syslinux/pxelinux.png
INCLUDE boot/syslinux/wklive_pxe_linux.cfg
INCLUDE boot/syslinux/wklive_pxe_linux_extras.cfg
INCLUDE boot/syslinux/wklive_pxe_winpe.cfg
INCLUDE boot/syslinux/wklive_hdt.cfg
INCLUDE boot/syslinux/wklive_tail.cfg

View file

@ -0,0 +1,7 @@
LABEL wklive_pxe_extras
TEXT HELP
Show extra boot options
ENDTEXT
MENU LABEL Extras
KERNEL vesamenu.c32
APPEND boot/syslinux/wklive_pxe_extras.cfg

View file

@ -0,0 +1,10 @@
LABEL wklive_http_linux
TEXT HELP
A live Linux environment
* HW diagnostics, file-based backups, data recovery, etc
ENDTEXT
MENU LABEL Linux
LINUX boot/x86_64/vmlinuz
INITRD boot/intel_ucode.img,boot/x86_64/archiso.img
APPEND archisobasedir=%INSTALL_DIR% archiso_http_srv=http://${pxeserver}/ quiet
SYSAPPEND 3

View file

@ -0,0 +1,21 @@
LABEL wklive_http_linux_i3
TEXT HELP
A live Linux environment (i3)
* HW diagnostics, file-based backups, data recovery, etc
ENDTEXT
MENU LABEL Linux (i3)
LINUX boot/x86_64/vmlinuz
INITRD boot/intel_ucode.img,boot/x86_64/archiso.img
APPEND archisobasedir=%INSTALL_DIR% archiso_http_srv=http://${pxeserver}/ quiet i3
SYSAPPEND 3
LABEL wklive_http_linux_cli
TEXT HELP
A live Linux environment (CLI)
* HW diagnostics, file-based backups, data recovery, etc
ENDTEXT
MENU LABEL Linux (CLI)
LINUX boot/x86_64/vmlinuz
INITRD boot/intel_ucode.img,boot/x86_64/archiso.img
APPEND archisobasedir=%INSTALL_DIR% archiso_http_srv=http://${pxeserver}/ quiet nox
SYSAPPEND 3

View file

@ -0,0 +1,8 @@
LABEL wklive_http_winpe
TEXT HELP
A live Windows environment
* Create partition backups, Install Windows, etc
ENDTEXT
MENU LABEL Windows PE
COM32 boot/syslinux/linux.c32
APPEND boot/wimboot gui initrdfile=winpe/x86_64/bootmgr,winpe/x86_64/BCD,winpe/x86_64/boot.sdi,winpe/x86_64/boot.wim

View file

@ -0,0 +1,7 @@
INCLUDE boot/syslinux/wklive_head.cfg
INCLUDE boot/syslinux/wklive_sys_linux.cfg
INCLUDE boot/syslinux/wklive_sys_winpe.cfg
INCLUDE boot/syslinux/wklive_sys_extras_entry.cfg
INCLUDE boot/syslinux/wklive_tail.cfg

View file

@ -0,0 +1,8 @@
INCLUDE boot/syslinux/wklive_head.cfg
INCLUDE boot/syslinux/wklive_sys_linux.cfg
INCLUDE boot/syslinux/wklive_sys_linux_extras.cfg
INCLUDE boot/syslinux/wklive_sys_winpe.cfg
INCLUDE boot/syslinux/wklive_hdt.cfg
INCLUDE boot/syslinux/wklive_tail.cfg

View file

@ -0,0 +1,7 @@
LABEL wklive_sys_extras
TEXT HELP
Show extra boot options
ENDTEXT
MENU LABEL Extras
KERNEL vesamenu.c32
APPEND boot/syslinux/wklive_sys_extras.cfg

View file

@ -0,0 +1,9 @@
LABEL wklive_linux
TEXT HELP
A live Linux environment
* HW diagnostics, file-based backups, data recovery, etc
ENDTEXT
MENU LABEL Linux
LINUX boot/x86_64/vmlinuz
INITRD boot/intel_ucode.img,boot/x86_64/archiso.img
APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% quiet copytoram loglevel=3 vga=current

View file

@ -0,0 +1,21 @@
LABEL wklive_linux_i3
TEXT HELP
A live Linux environment (i3)
* HW diagnostics, file-based backups, data recovery, etc
ENDTEXT
MENU LABEL Linux (i3)
LINUX boot/x86_64/vmlinuz
INITRD boot/intel_ucode.img,boot/x86_64/archiso.img
APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% quiet copytoram loglevel=3 vga=current i3
SYSAPPEND 3
LABEL wklive_linux_cli
TEXT HELP
A live Linux environment (CLI)
* HW diagnostics, file-based backups, data recovery, etc
ENDTEXT
MENU LABEL Linux (CLI)
LINUX boot/x86_64/vmlinuz
INITRD boot/intel_ucode.img,boot/x86_64/archiso.img
APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% quiet copytoram loglevel=3 vga=current nox
SYSAPPEND 3

View file

@ -0,0 +1,8 @@
LABEL wklive_winpe
TEXT HELP
A live Windows environment
* Create partition backups, Install Windows, etc
ENDTEXT
MENU LABEL Windows PE
COM32 boot/syslinux/linux.c32
APPEND boot/wimboot gui initrdfile=../sources/bootmgr,../sources/BCD,../sources/boot.sdi,../sources/boot.wim

View file

@ -0,0 +1,9 @@
MENU SEPARATOR
LABEL reboot
MENU LABEL Reboot
COM32 boot/syslinux/reboot.c32
LABEL poweroff
MENU LABEL Power Off
COM32 boot/syslinux/poweroff.c32

View file

@ -93,11 +93,6 @@ function load_settings() {
function copy_live_env() {
echo "Copying Archlinux files..."
rsync -aI /usr/share/archiso/configs/releng/ "$LIVE_DIR/"
# Add items
rsync -aI "$ROOT_DIR/.linux_items/include/" "$LIVE_DIR/"
mkdir -p "$LIVE_DIR/airootfs/usr/local/bin"
rsync -aI "$ROOT_DIR/.bin/Scripts/" "$LIVE_DIR/airootfs/usr/local/bin/"
# Remove items
rm "$LIVE_DIR/airootfs/etc/systemd/scripts/choose-mirror"
@ -108,6 +103,13 @@ function copy_live_env() {
rm "$LIVE_DIR/airootfs/etc/udev/rules.d/81-dhcpcd.rules"
rmdir "$LIVE_DIR/airootfs/etc/udev/rules.d" --ignore-fail-on-non-empty
rmdir "$LIVE_DIR/airootfs/etc/udev" --ignore-fail-on-non-empty
rm "$LIVE_DIR/isolinux/*.cfg"
rm "$LIVE_DIR/syslinux/*.cfg" "$LIVE_DIR/syslinux/*.png"
# Add items
rsync -aI "$ROOT_DIR/.linux_items/include/" "$LIVE_DIR/"
mkdir -p "$LIVE_DIR/airootfs/usr/local/bin"
rsync -aI "$ROOT_DIR/.bin/Scripts/" "$LIVE_DIR/airootfs/usr/local/bin/"
}
function run_elevated() {
@ -125,6 +127,11 @@ function update_live_env() {
hostname="$(echo "${KIT_NAME_SHORT}-linux" | tr "[:upper:]" "[:lower:]")"
username="$(echo "${KIT_NAME_SHORT}tech" | tr "[:upper:]" "[:lower:]")"
# Boot config (legacy)
cp "$ROOT_DIR/Images/Pxelinux.png" "$LIVE_DIR/syslinux/pxelinux.png"
cp "$ROOT_DIR/Images/Syslinux.png" "$LIVE_DIR/syslinux/syslinux.png"
sed -i -r "s/_+/$KIT_NAME_FULL/" "$LIVE_DIR/syslinux/wklive_head.cfg"
# Hostname
echo "$hostname" > "$LIVE_DIR/airootfs/etc/hostname"
echo "127.0.1.1 $hostname.localdomain $hostname" >> "$LIVE_DIR/airootfs/etc/hosts"
@ -143,7 +150,7 @@ function update_live_env() {
echo "sed -i 's/#Server/Server/g' /etc/pacman.d/mirrorlist" >> "$LIVE_DIR/airootfs/root/customize_airootfs.sh"
# MOTD
sed -i "s/_+/$KIT_NAME_FULL Linux Environment/" "$LIVE_DIR/airootfs/etc/motd"
sed -i -r "s/_+/$KIT_NAME_FULL Linux Environment/" "$LIVE_DIR/airootfs/etc/motd"
# Oh My ZSH
git clone --depth=1 git://github.com/robbyrussell/oh-my-zsh.git "$SKEL_DIR/.oh-my-zsh"
@ -257,11 +264,11 @@ function build_iso() {
# Build ISO
prefix="$(< "$LIVE_DIR/airootfs/etc/hostname")"
label="${KIT_NAME_SHORT}_LINUX"
"$LIVE_DIR/build.sh" -N "$prefix" -V "$DATE" -L "$label" -w "$TEMP_DIR/Arch" -o "$OUT_DIR" -v | tee -a "$LOG_DIR/$DATETIME.log"
"$LIVE_DIR/build.sh" -N "$prefix" -V "$DATE" -L "$label" -D "wklive" -w "$TEMP_DIR/WKLive" -o "$OUT_DIR" -v | tee -a "$LOG_DIR/$DATETIME.log"
# Cleanup
echo "Removing temp files..."
rm "$TEMP_DIR/Arch" -Rf | tee -a "$LOG_DIR/$DATETIME.log"
rm "$TEMP_DIR/WKLive" -Rf | tee -a "$LOG_DIR/$DATETIME.log"
echo "Reverting permissions..."
chown $REAL_USER:$REAL_USER "$LIVE_DIR" -R