From 1d1ae9edde65ef95b3564e5bbbcbce3a14ad296b Mon Sep 17 00:00:00 2001 From: "Tomas Kelemen (vudiq)" Date: Tue, 29 May 2018 09:21:15 +0200 Subject: [PATCH 1/6] options: add volume labels for use in other places --- distributions/LibreELEC/options | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/distributions/LibreELEC/options b/distributions/LibreELEC/options index 22a34534e6..1a44b2ff65 100644 --- a/distributions/LibreELEC/options +++ b/distributions/LibreELEC/options @@ -210,3 +210,7 @@ # Default supported get handlers (archive, git, file etc.) GET_HANDLER_SUPPORT="archive" + +# Partition labels + DISTRO_FAT_VOLUME_LABEL="LIBREELEC" + DISTRO_STORAGE_VOLUME_LABEL="STORAGE" From ba307e3366270592b2426cbe13222160f56dac94 Mon Sep 17 00:00:00 2001 From: "Tomas Kelemen (vudiq)" Date: Tue, 29 May 2018 09:21:44 +0200 Subject: [PATCH 2/6] mkimage: use labels defined by distro options --- scripts/mkimage | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/mkimage b/scripts/mkimage index 6b40b94040..679197ba8d 100755 --- a/scripts/mkimage +++ b/scripts/mkimage @@ -71,8 +71,8 @@ trap cleanup SIGINT UUID_2=$(date '+%M%S') FAT_SERIAL_NUMBER="${UUID_1}${UUID_2}" UUID_SYSTEM="${UUID_1}-${UUID_2}" - FAT_VOLUME_LABEL="LIBREELEC" - STORAGE_VOLUME_LABEL="STORAGE" + FAT_VOLUME_LABEL="${DISTRO_FAT_VOLUME_LABEL}" + STORAGE_VOLUME_LABEL="${DISTRO_STORAGE_VOLUME_LABEL}" # create an image echo From efe33a0a9695d41d688c7c1c5203fafe4b2e6b8c Mon Sep 17 00:00:00 2001 From: "Tomas Kelemen (vudiq)" Date: Tue, 29 May 2018 09:23:01 +0200 Subject: [PATCH 3/6] platform_init: use labels defined by distro options --- packages/sysutils/busybox/package.mk | 3 +++ projects/Amlogic/initramfs/platform_init | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/sysutils/busybox/package.mk b/packages/sysutils/busybox/package.mk index 601074ca24..71889680fe 100644 --- a/packages/sysutils/busybox/package.mk +++ b/packages/sysutils/busybox/package.mk @@ -218,6 +218,9 @@ makeinstall_init() { if find_file_path initramfs/platform_init; then cp ${FOUND_PATH} $INSTALL + sed -e "s/@BOOT_LABEL@/$DISTRO_FAT_VOLUME_LABEL/g" \ + -e "s/@DISK_LABEL@/$DISTRO_STORAGE_VOLUME_LABEL/g" \ + -i $INSTALL/platform_init chmod 755 $INSTALL/platform_init fi diff --git a/projects/Amlogic/initramfs/platform_init b/projects/Amlogic/initramfs/platform_init index b82a0a71e7..b98b0fd07d 100755 --- a/projects/Amlogic/initramfs/platform_init +++ b/projects/Amlogic/initramfs/platform_init @@ -44,7 +44,7 @@ done if [ -z "$BOOT_IMAGE" -o -z "$boot" -o -z "$disk" ]; then cmdline=$(cat /proc/cmdline) if [ -n "$bootfromext" ]; then - cmdline="$cmdline BOOT_IMAGE=kernel.img boot=LABEL=LIBREELEC disk=LABEL=STORAGE" + cmdline="$cmdline BOOT_IMAGE=kernel.img boot=LABEL=@BOOT_LABEL@ disk=LABEL=@DISK_LABEL@" else cmdline="$cmdline BOOT_IMAGE=/dev/boot boot=/dev/system disk=/dev/data" fi From e0c8006ae04d6d644dae6cb82427792d49836f2e Mon Sep 17 00:00:00 2001 From: "Tomas Kelemen (vudiq)" Date: Tue, 29 May 2018 22:33:35 +0200 Subject: [PATCH 4/6] bootloader: use labels defined by distro options --- packages/tools/u-boot/package.mk | 14 ++++++++++++++ projects/Amlogic/bootloader/update.sh | 8 ++++---- projects/Amlogic/devices/KVIM/bootloader/boot.ini | 2 +- projects/Amlogic/devices/KVIM2/bootloader/boot.ini | 2 +- .../Amlogic/devices/LePotato/bootloader/boot.ini | 2 +- .../Amlogic/devices/Odroid_C2/bootloader/boot.ini | 2 +- projects/Amlogic/packages/u-boot/package.mk | 14 ++++++++++++++ 7 files changed, 36 insertions(+), 8 deletions(-) diff --git a/packages/tools/u-boot/package.mk b/packages/tools/u-boot/package.mk index 67e689aa66..cce1fa3d33 100644 --- a/packages/tools/u-boot/package.mk +++ b/packages/tools/u-boot/package.mk @@ -69,6 +69,20 @@ makeinstall_target() { # Always install the update script find_file_path bootloader/update.sh && cp -av ${FOUND_PATH} $INSTALL/usr/share/bootloader + # Replace partition names in update.sh + if [ -f "$INSTALL/usr/share/bootloader/update.sh" ] ; then + sed -e "s/@BOOT_LABEL@/$DISTRO_FAT_VOLUME_LABEL/g" \ + -e "s/@DISK_LABEL@/$DISTRO_STORAGE_VOLUME_LABEL/g" \ + -i $INSTALL/usr/share/bootloader/update.sh + fi + + # Replace labels in boot.ini + if [ -f "$INSTALL/usr/share/bootloader/boot.ini" ] ; then + sed -e "s/@BOOT_LABEL@/$DISTRO_FAT_VOLUME_LABEL/g" \ + -e "s/@DISK_LABEL@/$DISTRO_STORAGE_VOLUME_LABEL/g" \ + -i $INSTALL/usr/share/bootloader/boot.ini + fi + # Always install the canupdate script if find_file_path bootloader/canupdate.sh; then cp -av ${FOUND_PATH} $INSTALL/usr/share/bootloader diff --git a/projects/Amlogic/bootloader/update.sh b/projects/Amlogic/bootloader/update.sh index bd179b39d7..44e9b53865 100755 --- a/projects/Amlogic/bootloader/update.sh +++ b/projects/Amlogic/bootloader/update.sh @@ -44,10 +44,10 @@ for arg in $(cat /proc/cmdline); do boot="${arg#*=}" case $boot in /dev/mmc*) - LD_LIBRARY_PATH="$SYSTEM_ROOT/lib" $SYSTEM_ROOT/usr/sbin/fatlabel $boot "LIBREELEC" + LD_LIBRARY_PATH="$SYSTEM_ROOT/lib" $SYSTEM_ROOT/usr/sbin/fatlabel $boot "@BOOT_LABEL@" ;; LABEL=*) - LD_LIBRARY_PATH="$SYSTEM_ROOT/lib" $SYSTEM_ROOT/usr/sbin/fatlabel $($SYSTEM_ROOT/usr/sbin/findfs $boot) "LIBREELEC" + LD_LIBRARY_PATH="$SYSTEM_ROOT/lib" $SYSTEM_ROOT/usr/sbin/fatlabel $($SYSTEM_ROOT/usr/sbin/findfs $boot) "@BOOT_LABEL@" ;; esac @@ -91,10 +91,10 @@ for arg in $(cat /proc/cmdline); do disk="${arg#*=}" case $disk in /dev/mmc*) - LD_LIBRARY_PATH="$SYSTEM_ROOT/lib" $SYSTEM_ROOT/usr/sbin/e2label $disk "STORAGE" + LD_LIBRARY_PATH="$SYSTEM_ROOT/lib" $SYSTEM_ROOT/usr/sbin/e2label $disk "@DISK_LABEL@" ;; LABEL=*) - LD_LIBRARY_PATH="$SYSTEM_ROOT/lib" $SYSTEM_ROOT/usr/sbin/e2label $($SYSTEM_ROOT/usr/sbin/findfs $disk) "STORAGE" + LD_LIBRARY_PATH="$SYSTEM_ROOT/lib" $SYSTEM_ROOT/usr/sbin/e2label $($SYSTEM_ROOT/usr/sbin/findfs $disk) "@DISK_LABEL@" ;; esac ;; diff --git a/projects/Amlogic/devices/KVIM/bootloader/boot.ini b/projects/Amlogic/devices/KVIM/bootloader/boot.ini index 43e173e4e2..a11d85d5da 100644 --- a/projects/Amlogic/devices/KVIM/bootloader/boot.ini +++ b/projects/Amlogic/devices/KVIM/bootloader/boot.ini @@ -8,7 +8,7 @@ #------------------------------------------------------------------------------------------------------ KHADAS-UBOOT-CONFIG -setenv bootrootfs "BOOT_IMAGE=kernel.img boot=LABEL=LIBREELEC disk=LABEL=STORAGE" +setenv bootrootfs "BOOT_IMAGE=kernel.img boot=LABEL=@BOOT_LABEL@ disk=LABEL=@DISK_LABEL@" setenv condev "ttyS0,115200" setenv hdmimode "1080p60hz" setenv hdmioutput "1" diff --git a/projects/Amlogic/devices/KVIM2/bootloader/boot.ini b/projects/Amlogic/devices/KVIM2/bootloader/boot.ini index 43e173e4e2..a11d85d5da 100644 --- a/projects/Amlogic/devices/KVIM2/bootloader/boot.ini +++ b/projects/Amlogic/devices/KVIM2/bootloader/boot.ini @@ -8,7 +8,7 @@ #------------------------------------------------------------------------------------------------------ KHADAS-UBOOT-CONFIG -setenv bootrootfs "BOOT_IMAGE=kernel.img boot=LABEL=LIBREELEC disk=LABEL=STORAGE" +setenv bootrootfs "BOOT_IMAGE=kernel.img boot=LABEL=@BOOT_LABEL@ disk=LABEL=@DISK_LABEL@" setenv condev "ttyS0,115200" setenv hdmimode "1080p60hz" setenv hdmioutput "1" diff --git a/projects/Amlogic/devices/LePotato/bootloader/boot.ini b/projects/Amlogic/devices/LePotato/bootloader/boot.ini index d27a75a60b..91c080a013 100644 --- a/projects/Amlogic/devices/LePotato/bootloader/boot.ini +++ b/projects/Amlogic/devices/LePotato/bootloader/boot.ini @@ -8,7 +8,7 @@ #------------------------------------------------------------------------------------------------------ LIBRETECH-UBOOT-CONFIG -setenv bootrootfs "BOOT_IMAGE=kernel.img boot=LABEL=LIBREELEC disk=LABEL=STORAGE" +setenv bootrootfs "BOOT_IMAGE=kernel.img boot=LABEL=@BOOT_LABEL@ disk=LABEL=@DISK_LABEL@" setenv condev "ttyS0,115200" setenv hdmimode "1080p60hz" setenv hdmioutput "1" diff --git a/projects/Amlogic/devices/Odroid_C2/bootloader/boot.ini b/projects/Amlogic/devices/Odroid_C2/bootloader/boot.ini index 95db1970b1..a96615c33e 100644 --- a/projects/Amlogic/devices/Odroid_C2/bootloader/boot.ini +++ b/projects/Amlogic/devices/Odroid_C2/bootloader/boot.ini @@ -8,7 +8,7 @@ #------------------------------------------------------------------------------------------------------ ODROIDC2-UBOOT-CONFIG -setenv bootrootfs "BOOT_IMAGE=KERNEL boot=LABEL=LIBREELEC disk=LABEL=STORAGE" +setenv bootrootfs "BOOT_IMAGE=KERNEL boot=LABEL=@BOOT_LABEL@ disk=LABEL=@DISK_LABEL@" setenv condev "ttyS0,115200" setenv hdmimode "1080p60hz" setenv hdmioutput "1" diff --git a/projects/Amlogic/packages/u-boot/package.mk b/projects/Amlogic/packages/u-boot/package.mk index 5451747d14..0110fe4525 100644 --- a/projects/Amlogic/packages/u-boot/package.mk +++ b/projects/Amlogic/packages/u-boot/package.mk @@ -89,4 +89,18 @@ makeinstall_target() { cp -av $PKG_BUILD/fip/u-boot.bin.sd.bin $INSTALL/usr/share/bootloader/u-boot ;; esac + + # Replace partition names in update.sh + if [ -f "$INSTALL/usr/share/bootloader/update.sh" ] ; then + sed -e "s/@BOOT_LABEL@/$DISTRO_FAT_VOLUME_LABEL/g" \ + -e "s/@DISK_LABEL@/$DISTRO_STORAGE_VOLUME_LABEL/g" \ + -i $INSTALL/usr/share/bootloader/update.sh + fi + + # Replace labels in boot.ini + if [ -f "$INSTALL/usr/share/bootloader/boot.ini" ] ; then + sed -e "s/@BOOT_LABEL@/$DISTRO_FAT_VOLUME_LABEL/g" \ + -e "s/@DISK_LABEL@/$DISTRO_STORAGE_VOLUME_LABEL/g" \ + -i $INSTALL/usr/share/bootloader/boot.ini + fi } From c2792f5dbba194ec8757cc652050b48fc3fc2c69 Mon Sep 17 00:00:00 2001 From: "Tomas Kelemen (vudiq)" Date: Wed, 30 May 2018 08:31:04 +0200 Subject: [PATCH 5/6] redefine variable names for partition labels --- distributions/LibreELEC/options | 6 +++--- packages/sysutils/busybox/package.mk | 4 ++-- packages/tools/u-boot/package.mk | 8 ++++---- projects/Amlogic/packages/u-boot/package.mk | 8 ++++---- scripts/mkimage | 4 ++-- 5 files changed, 15 insertions(+), 15 deletions(-) diff --git a/distributions/LibreELEC/options b/distributions/LibreELEC/options index 1a44b2ff65..166882daab 100644 --- a/distributions/LibreELEC/options +++ b/distributions/LibreELEC/options @@ -211,6 +211,6 @@ # Default supported get handlers (archive, git, file etc.) GET_HANDLER_SUPPORT="archive" -# Partition labels - DISTRO_FAT_VOLUME_LABEL="LIBREELEC" - DISTRO_STORAGE_VOLUME_LABEL="STORAGE" +# Partition labels for USB/SD installation media + DISTRO_BOOTLABEL="LIBREELEC" + DISTRO_DISKLABEL="STORAGE" diff --git a/packages/sysutils/busybox/package.mk b/packages/sysutils/busybox/package.mk index 71889680fe..63d519ed93 100644 --- a/packages/sysutils/busybox/package.mk +++ b/packages/sysutils/busybox/package.mk @@ -218,8 +218,8 @@ makeinstall_init() { if find_file_path initramfs/platform_init; then cp ${FOUND_PATH} $INSTALL - sed -e "s/@BOOT_LABEL@/$DISTRO_FAT_VOLUME_LABEL/g" \ - -e "s/@DISK_LABEL@/$DISTRO_STORAGE_VOLUME_LABEL/g" \ + sed -e "s/@BOOT_LABEL@/$DISTRO_BOOTLABEL/g" \ + -e "s/@DISK_LABEL@/$DISTRO_DISKLABEL/g" \ -i $INSTALL/platform_init chmod 755 $INSTALL/platform_init fi diff --git a/packages/tools/u-boot/package.mk b/packages/tools/u-boot/package.mk index cce1fa3d33..22d094d924 100644 --- a/packages/tools/u-boot/package.mk +++ b/packages/tools/u-boot/package.mk @@ -71,15 +71,15 @@ makeinstall_target() { # Replace partition names in update.sh if [ -f "$INSTALL/usr/share/bootloader/update.sh" ] ; then - sed -e "s/@BOOT_LABEL@/$DISTRO_FAT_VOLUME_LABEL/g" \ - -e "s/@DISK_LABEL@/$DISTRO_STORAGE_VOLUME_LABEL/g" \ + sed -e "s/@BOOT_LABEL@/$DISTRO_BOOTLABEL/g" \ + -e "s/@DISK_LABEL@/$DISTRO_DISKLABEL/g" \ -i $INSTALL/usr/share/bootloader/update.sh fi # Replace labels in boot.ini if [ -f "$INSTALL/usr/share/bootloader/boot.ini" ] ; then - sed -e "s/@BOOT_LABEL@/$DISTRO_FAT_VOLUME_LABEL/g" \ - -e "s/@DISK_LABEL@/$DISTRO_STORAGE_VOLUME_LABEL/g" \ + sed -e "s/@BOOT_LABEL@/$DISTRO_BOOTLABEL/g" \ + -e "s/@DISK_LABEL@/$DISTRO_DISKLABEL/g" \ -i $INSTALL/usr/share/bootloader/boot.ini fi diff --git a/projects/Amlogic/packages/u-boot/package.mk b/projects/Amlogic/packages/u-boot/package.mk index 0110fe4525..557f94f98c 100644 --- a/projects/Amlogic/packages/u-boot/package.mk +++ b/projects/Amlogic/packages/u-boot/package.mk @@ -92,15 +92,15 @@ makeinstall_target() { # Replace partition names in update.sh if [ -f "$INSTALL/usr/share/bootloader/update.sh" ] ; then - sed -e "s/@BOOT_LABEL@/$DISTRO_FAT_VOLUME_LABEL/g" \ - -e "s/@DISK_LABEL@/$DISTRO_STORAGE_VOLUME_LABEL/g" \ + sed -e "s/@BOOT_LABEL@/$DISTRO_BOOTLABEL/g" \ + -e "s/@DISK_LABEL@/$DISTRO_DISKLABEL/g" \ -i $INSTALL/usr/share/bootloader/update.sh fi # Replace labels in boot.ini if [ -f "$INSTALL/usr/share/bootloader/boot.ini" ] ; then - sed -e "s/@BOOT_LABEL@/$DISTRO_FAT_VOLUME_LABEL/g" \ - -e "s/@DISK_LABEL@/$DISTRO_STORAGE_VOLUME_LABEL/g" \ + sed -e "s/@BOOT_LABEL@/$DISTRO_BOOTLABEL/g" \ + -e "s/@DISK_LABEL@/$DISTRO_DISKLABEL/g" \ -i $INSTALL/usr/share/bootloader/boot.ini fi } diff --git a/scripts/mkimage b/scripts/mkimage index 679197ba8d..424181ec0a 100755 --- a/scripts/mkimage +++ b/scripts/mkimage @@ -71,8 +71,8 @@ trap cleanup SIGINT UUID_2=$(date '+%M%S') FAT_SERIAL_NUMBER="${UUID_1}${UUID_2}" UUID_SYSTEM="${UUID_1}-${UUID_2}" - FAT_VOLUME_LABEL="${DISTRO_FAT_VOLUME_LABEL}" - STORAGE_VOLUME_LABEL="${DISTRO_STORAGE_VOLUME_LABEL}" + FAT_VOLUME_LABEL="${DISTRO_BOOTLABEL}" + STORAGE_VOLUME_LABEL="${DISTRO_DISKLABEL}" # create an image echo From 00f059abfd4c7896e3fd8de78ac7c1b66dcd6ba8 Mon Sep 17 00:00:00 2001 From: "Tomas Kelemen (vudiq)" Date: Fri, 1 Jun 2018 11:52:36 +0200 Subject: [PATCH 6/6] mkimage: use BOOTLABEL and DISKLABEL directly --- scripts/mkimage | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/scripts/mkimage b/scripts/mkimage index 424181ec0a..e482defaa6 100755 --- a/scripts/mkimage +++ b/scripts/mkimage @@ -71,8 +71,6 @@ trap cleanup SIGINT UUID_2=$(date '+%M%S') FAT_SERIAL_NUMBER="${UUID_1}${UUID_2}" UUID_SYSTEM="${UUID_1}-${UUID_2}" - FAT_VOLUME_LABEL="${DISTRO_BOOTLABEL}" - STORAGE_VOLUME_LABEL="${DISTRO_DISKLABEL}" # create an image echo @@ -129,7 +127,7 @@ fi alias mmd="mmd -i $DISK@@$OFFSET" if [ "$BOOTLOADER" = "syslinux" -o "$BOOTLOADER" = "bcm2835-bootloader" -o "$BOOTLOADER" = "u-boot" ]; then - mformat -v "$FAT_VOLUME_LABEL" -N "$FAT_SERIAL_NUMBER" :: + mformat -v "$DISTRO_BOOTLABEL" -N "$FAT_SERIAL_NUMBER" :: fi sync @@ -277,7 +275,7 @@ fi # bootloader # create filesystem on part2 echo "image: creating filesystem on part2..." mke2fs -F -q -t ext4 -m 0 "$LE_TMP/part2.ext4" - tune2fs -L "$STORAGE_VOLUME_LABEL" -U $UUID_STORAGE "$LE_TMP/part2.ext4" >"$SAVE_ERROR" 2>&1 || show_error + tune2fs -L "$DISTRO_DISKLABEL" -U $UUID_STORAGE "$LE_TMP/part2.ext4" >"$SAVE_ERROR" 2>&1 || show_error e2fsck -n "$LE_TMP/part2.ext4" >"$SAVE_ERROR" 2>&1 || show_error sync