#!/bin/bash # Copyright (C) 2017-2018 Daniel Tartavel-jeannot # Copyright (C) 2019-2020 Jean-Baptiste Biernacki # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . #Fdisk partitionment commands : DEFAULT="" NEW_DOSTAB="o" NEW_PART="n" PRIMARY="p" CHANGE_TYPE="t" TYPE_FAT32LBA="c" CHANGE_BOOTFLAG="a" APPLY="w" # PART_BOOT=1 # PART_BOOT_FIRST_SECTOR=${DEFAULT} # PART_BOOT_SIZE="+128M" # # PART_ROOT=2 # PART_ROOT_FIRST_SECTOR=${DEFAULT} # PART_ROOT_SIZE=${DEFAULT} PART_BOOTandROOT="1" PART_BOOTandROOT_FIRST_SECTOR="${DEFAULT}" PART_BOOTandROOT_SIZE="${DEFAULT}" # FDISK_SCRIPT="${NEW_PART}\n${PRIMARY}\n${PART_BOOTandROOT}\n${PART_BOOTandROOT_FIRST_SECTOR}\n${PART_BOOTandROOT_SIZE}\n${CHANGE_BOOTFLAG}\n${APPLY}\n" SFDISK_SCRIPT=",128M,U,*\n,,L,\nwrite\n" function preImgCreation() { # title "Creating Banana Pro image" #Nothing to download. return 0 } function postPrepareChroot() { #Nothing to do. warning "copie rpm" cp ${SOURCE_PATH}/rpm/grub2-common-2.02.0-16.mga7.armv7hl.rpm ${BUILD_PATH}/ cp ${SOURCE_PATH}/rpm/grub2-efi-2.02.0-16.mga7.armv7hl.rpm ${BUILD_PATH}/ cp ${SOURCE_PATH}/rpm/grub2-mageia-theme-2.02.0-16.mga7.noarch.rpm ${BUILD_PATH}/ return 0 } function bunrningBootloader() { # DEVICE is set just before this function and looped. title "Burning the bootloader..." dd if=${BUILD_PATH}/usr/lib/u-boot/Bananapro/u-boot-sunxi-with-spl.bin of=${DEVICE} bs=1024 seek=8 return 0 } function copyingCustomSystem() { # LIST_OF_UBOOT="$(ls -1 ${SOURCE_PATH}/rpm/ | grep u-boot | tr '\n' ' ')" # echo ${LIST_OF_UBOOT} # pushd ${SOURCE_PATH}/rpm/ # installpkg ${LIST_OF_UBOOT} installpkg ${CONFIG_PATH}/u-boot-bananapro-20200706-2.mga7.armv7hl.rpm installpkg ${CONFIG_PATH}/u-boot-tools-20200706-2.mga7.armv7hl.rpm # installpkg ${SOURCE_PATH}/rpm/grub2-common-2.02.0-15.mga7.armv7hl.rpm ${SOURCE_PATH}/rpm/grub2-efi-2.02.0-15.mga7.armv7hl.rpm ${SOURCE_PATH}/rpm/grub2-mageia-theme-2.02.0-15.mga7.noarch.rpm # echo -e "# Configuration file for fw_(printenv/setenv) utility.\n# Up to two entries are valid, in this case the redundant\n# environment sector is assumed present.\n# MTD device name Device offset Env. size Flash sector size\n/boot/u-boot.env 0x0000 0x20000" > "${BUILD_PATH}/etc/fw_env.config" # popd # info "copying kernel-desktop, dtb, boot.scr and vmlinuz symlink in ${BUILD_PATH}/boot" info "copying dtb and boot.scr in ${BUILD_PATH}/boot" #Generating uboot autoboot script : # mkimage -C none -A arm -T script -d "${CONFIG_PATH}/boot.cmd" "${BUILD_PATH}/boot/boot.scr" /usr/bin/cp --preserve=mode "${BUILD_PATH}/usr/lib/u-boot/Bananapro/u-boot.dtb" "${BUILD_PATH}/boot/" /usr/bin/cp --preserve=mode "${BUILD_PATH}/usr/lib/u-boot/Bananapro/u-boot.env" "${BUILD_PATH}/boot/" # /usr/bin/cp --preserve=mode "${BUILD_PATH}/usr/lib/linux/sun7i-a20-bananapro.dtb" "${BUILD_PATH}/boot/u-boot.dtb" #${BOOT} defined to the path to the mounted boot partition. # /usr/bin/cp --preserve=mode "${CONFIG_PATH}/vmlinuz-5.3.1-desktop-2.mga7" "${BOOT}" # /usr/bin/cp --preserve=mode "${CONFIG_PATH}/sun7i-a20-bananapro.dtb" "${BOOT}" # /usr/bin/cp --preserve=mode "${CONFIG_PATH}/boot.scr" "${BOOT}/" # /usr/bin/cp --preserve=mode "${CONFIG_PATH}/uboot.env" "${BOOT}/" # /usr/bin/cp --preserve=mode "${CONFIG_PATH}/uEnv.txt" "${BOOT}/" # /usr/bin/cp --preserve=mode -d "${CONFIG_PATH}/vmlinuz" "${BOOT}/" # cp --preserve=mode -R "${BUILD_PATH}/boot/extlinux" "${BOOT}/" return 0 }