diff --git a/config/noobs/partitions.json b/config/noobs/partitions.json index bc05e26adb..591b255ded 100644 --- a/config/noobs/partitions.json +++ b/config/noobs/partitions.json @@ -1,7 +1,7 @@ { "partitions": [ { - "label": "@DISTRONAME@_@PROJECT@_System", + "label": "System", "filesystem_type": "FAT", "partition_size_nominal": @SYSTEM_SIZE@, "want_maximised": false, @@ -9,7 +9,7 @@ "mkfs_options": "" }, { - "label": "@DISTRONAME@_@PROJECT@_Storage", + "label": "Storage", "filesystem_type": "ext4", "partition_size_nominal": 512, "want_maximised": true, diff --git a/scripts/image b/scripts/image index 24cf126c92..b8615e537a 100755 --- a/scripts/image +++ b/scripts/image @@ -417,29 +417,34 @@ if [ "$1" = "release" -o "$1" = "mkimage" -o "$1" = "amlpkg" -o "$1" = "noobs" ] popd > /dev/null elif [ "$1" = "noobs" ]; then + echo "Creating \"$1\" release tarball..." + RELEASE_DIR="$TARGET_IMG/${IMAGE_NAME}-$1" + # eg. LibreELEC_RPi, LibreELEC_RPi2 etc. + NOOBS_DISTRO="${DISTRONAME}_${DEVICE:-$PROJECT}" + # create release dir - mkdir -p $RELEASE_DIR/${DISTRONAME}_${PROJECT} + mkdir -p $RELEASE_DIR/${NOOBS_DISTRO} if [ -f $DISTRO_DIR/$DISTRO/${DISTRONAME}_40x40.png ]; then - cp -PR $DISTRO_DIR/$DISTRO/${DISTRONAME}_40x40.png $RELEASE_DIR/${DISTRONAME}_${PROJECT}/${DISTRONAME}_${PROJECT}.png + cp -PR $DISTRO_DIR/$DISTRO/${DISTRONAME}_40x40.png $RELEASE_DIR/${NOOBS_DISTRO}/${NOOBS_DISTRO}.png else - cp -PR $DISTRO_DIR/$DISTRO/${DISTRONAME}.png $RELEASE_DIR/${DISTRONAME}_${PROJECT}/${DISTRONAME}_${PROJECT}.png + cp -PR $DISTRO_DIR/$DISTRO/${DISTRONAME}.png $RELEASE_DIR/${NOOBS_DISTRO}/${NOOBS_DISTRO}.png fi - cp -PR $ROOT/config/noobs/os.json $RELEASE_DIR/${DISTRONAME}_${PROJECT} - cp -PR $ROOT/config/noobs/partition_setup.sh $RELEASE_DIR/${DISTRONAME}_${PROJECT} - cp -PR $ROOT/config/noobs/partitions.json $RELEASE_DIR/${DISTRONAME}_${PROJECT} + cp -PR $ROOT/config/noobs/os.json $RELEASE_DIR/${NOOBS_DISTRO} + cp -PR $ROOT/config/noobs/partition_setup.sh $RELEASE_DIR/${NOOBS_DISTRO} + cp -PR $ROOT/config/noobs/partitions.json $RELEASE_DIR/${NOOBS_DISTRO} if [ -d $DISTRO_DIR/$DISTRO/noobs/marketing ]; then - tar cf $RELEASE_DIR/${DISTRONAME}_${PROJECT}/marketing.tar -C $DISTRO_DIR/$DISTRO/noobs/marketing . + tar cf $RELEASE_DIR/${NOOBS_DISTRO}/marketing.tar -C $DISTRO_DIR/$DISTRO/noobs/marketing . else - tar cf $RELEASE_DIR/${DISTRONAME}_${PROJECT}/marketing.tar -C $ROOT/config/noobs/marketing . + tar cf $RELEASE_DIR/${NOOBS_DISTRO}/marketing.tar -C $ROOT/config/noobs/marketing . fi - cp $ROOT/README* $RELEASE_DIR/${DISTRONAME}_${PROJECT} - cp $ROOT/CHANGELOG $RELEASE_DIR/${DISTRONAME}_${PROJECT}/release_notes.txt + cp $ROOT/README* $RELEASE_DIR/${NOOBS_DISTRO} + cp $ROOT/CHANGELOG $RELEASE_DIR/${NOOBS_DISTRO}/release_notes.txt sed -e "s%@DISTRONAME@%$DISTRONAME%g" \ - -e "s%@PROJECT@%$PROJECT%g" \ + -e "s%@PROJECT@%${DEVICE:-$PROJECT}%g" \ -e "s%@LIBREELEC_VERSION@%$LIBREELEC_VERSION%g" \ -e "s%@RELEASE_DATE@%$(date +%F)%g" \ -e "s%@KERNEL_VERSION@%$(kernel_version)%g" \ @@ -447,71 +452,71 @@ if [ "$1" = "release" -o "$1" = "mkimage" -o "$1" = "amlpkg" -o "$1" = "noobs" ] -e "s%@ROOT_PASSWORD@%$ROOT_PASSWORD%g" \ -e "s%@NOOBS_SUPPORTED_MODELS@%$NOOBS_SUPPORTED_MODELS%g" \ -e "s%@NOOBS_HEX@%$NOOBS_HEX%g" \ - -i $RELEASE_DIR/${DISTRONAME}_${PROJECT}/os.json + -i $RELEASE_DIR/${NOOBS_DISTRO}/os.json sed -e "s%@DISTRONAME@%$DISTRONAME%g" \ - -e "s%@PROJECT@%$PROJECT%g" \ + -e "s%@PROJECT@%${DEVICE:-$PROJECT}%g" \ -e "s%@SYSTEM_SIZE@%$SYSTEM_SIZE%g" \ - -i $RELEASE_DIR/${DISTRONAME}_${PROJECT}/partitions.json + -i $RELEASE_DIR/${NOOBS_DISTRO}/partitions.json # create System dir - mkdir -p $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System + mkdir -p $RELEASE_DIR/${NOOBS_DISTRO}/System BOOTLOADER_DIR="$(get_pkg_directory "$BOOTLOADER")" if [ -d $BOOTLOADER_DIR/files/3rdparty/bootloader/ ]; then - cp -PR $BOOTLOADER_DIR/files/3rdparty/bootloader/* $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System + cp -PR $BOOTLOADER_DIR/files/3rdparty/bootloader/* $RELEASE_DIR/${NOOBS_DISTRO}/System fi # copy Bootloader - cp -PR $BUILD/bcm2835-bootloader-*/LICENCE* $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System/ - cp -PR $BUILD/bcm2835-bootloader-*/bootcode.bin $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System/ - cp -PR $BUILD/bcm2835-bootloader-*/fixup_x.dat $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System/fixup.dat - cp -PR $BUILD/bcm2835-bootloader-*/start_x.elf $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System/start.elf - [ -f $BUILD/bcm2835-bootloader-*/dt-blob.bin ] && cp -PR $BUILD/bcm2835-bootloader-*/dt-blob.bin $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System/dt-blob.bin + cp -PR $BUILD/bcm2835-bootloader-*/LICENCE* $RELEASE_DIR/${NOOBS_DISTRO}/System/ + cp -PR $BUILD/bcm2835-bootloader-*/bootcode.bin $RELEASE_DIR/${NOOBS_DISTRO}/System/ + cp -PR $BUILD/bcm2835-bootloader-*/fixup_x.dat $RELEASE_DIR/${NOOBS_DISTRO}/System/fixup.dat + cp -PR $BUILD/bcm2835-bootloader-*/start_x.elf $RELEASE_DIR/${NOOBS_DISTRO}/System/start.elf + [ -f $BUILD/bcm2835-bootloader-*/dt-blob.bin ] && cp -PR $BUILD/bcm2835-bootloader-*/dt-blob.bin $RELEASE_DIR/${NOOBS_DISTRO}/System/dt-blob.bin # copy system files - cp $TARGET_IMG/$IMAGE_NAME.system $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System/SYSTEM - cp $TARGET_IMG/$IMAGE_NAME.kernel $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System/kernel.img + cp $TARGET_IMG/$IMAGE_NAME.system $RELEASE_DIR/${NOOBS_DISTRO}/System/SYSTEM + cp $TARGET_IMG/$IMAGE_NAME.kernel $RELEASE_DIR/${NOOBS_DISTRO}/System/kernel.img for dtb in $INSTALL/usr/share/bootloader/*.dtb ; do if [ -f $dtb ]; then - cp -PR $dtb $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System + cp -PR $dtb $RELEASE_DIR/${NOOBS_DISTRO}/System fi done for overlay in $INSTALL/usr/share/bootloader/overlays/* ; do if [ -f $overlay ]; then - mkdir -p $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System/overlays - cp -PR $overlay $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System/overlays + mkdir -p $RELEASE_DIR/${NOOBS_DISTRO}/System/overlays + cp -PR $overlay $RELEASE_DIR/${NOOBS_DISTRO}/System/overlays fi done # create md5sum's - ( cd $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System; + ( cd $RELEASE_DIR/${NOOBS_DISTRO}/System; md5sum -t SYSTEM > SYSTEM.md5; md5sum -t kernel.img > kernel.img.md5; ) # copy additional files - mkdir -p $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System/licenses - cp $ROOT/licenses/* $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System/licenses + mkdir -p $RELEASE_DIR/${NOOBS_DISTRO}/System/licenses + cp $ROOT/licenses/* $RELEASE_DIR/${NOOBS_DISTRO}/System/licenses # create Storage dir - mkdir -p $RELEASE_DIR/${DISTRONAME}_${PROJECT}/Storage + mkdir -p $RELEASE_DIR/${NOOBS_DISTRO}/Storage - # remove an previous created release tarball - rm -rf $RELEASE_DIR/${DISTRONAME}_${PROJECT}/${DISTRONAME}_${PROJECT}_System.tar.xz - rm -rf $RELEASE_DIR/${DISTRONAME}_${PROJECT}/${DISTRONAME}_${PROJECT}_Storage.tar.xz + # remove any previously created release tarball + rm -rf $RELEASE_DIR/${NOOBS_DISTRO}/System.tar.xz + rm -rf $RELEASE_DIR/${NOOBS_DISTRO}/Storage.tar.xz # create filesystem tarballs - tar cJf $RELEASE_DIR/${DISTRONAME}_${PROJECT}/${DISTRONAME}_${PROJECT}_System.tar.xz -C $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System/ . - tar cJf $RELEASE_DIR/${DISTRONAME}_${PROJECT}/${DISTRONAME}_${PROJECT}_Storage.tar.xz -C $RELEASE_DIR/${DISTRONAME}_${PROJECT}/Storage/ . + tar cJf $RELEASE_DIR/${NOOBS_DISTRO}/System.tar.xz -C $RELEASE_DIR/${NOOBS_DISTRO}/System/ . + tar cJf $RELEASE_DIR/${NOOBS_DISTRO}/Storage.tar.xz -C $RELEASE_DIR/${NOOBS_DISTRO}/Storage/ . - # remove an filesystem dirs - rm -rf $RELEASE_DIR/${DISTRONAME}_${PROJECT}/System - rm -rf $RELEASE_DIR/${DISTRONAME}_${PROJECT}/Storage + # remove filesystem dirs + rm -rf $RELEASE_DIR/${NOOBS_DISTRO}/System + rm -rf $RELEASE_DIR/${NOOBS_DISTRO}/Storage - # remove an previous created release tarball + # remove any previously created release tarball rm -rf $TARGET_IMG/${IMAGE_NAME}-$1.tar # create release tarball