From 1f47792a878fbe57d7a057f485831f45760d57ed Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Mon, 17 Mar 2014 22:40:57 +0400 Subject: [PATCH] atvboot: cleanup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit changes to put all the boot/installer files in one place instead of scattering them over multiple packages, and removing the 3rdparty folder from the .tar file as it’s +12MB and nobody is ever going to use them --- .../files/3rdparty/atvboot/BootLogo.png | Bin 26321 -> 0 bytes .../files/3rdparty/atvboot/BootLogoSwiss.png | Bin 30078 -> 0 bytes .../files/3rdparty/atvboot/com.apple.Boot.hdd | 16 - .../3rdparty/atvboot/com.apple.Boot.plist | 16 - .../files/3rdparty/atvboot/com.apple.Boot.usb | 16 - .../files/3rdparty/atvboot/patchstick.sh | 478 ------------------ packages/tools/atv-bootloader/release | 25 - packages/tools/atvboot/package.mk | 8 +- scripts/image | 1 + scripts/mkimage-atv | 2 +- 10 files changed, 6 insertions(+), 556 deletions(-) delete mode 100644 packages/tools/atv-bootloader/files/3rdparty/atvboot/BootLogo.png delete mode 100644 packages/tools/atv-bootloader/files/3rdparty/atvboot/BootLogoSwiss.png delete mode 100644 packages/tools/atv-bootloader/files/3rdparty/atvboot/com.apple.Boot.hdd delete mode 100644 packages/tools/atv-bootloader/files/3rdparty/atvboot/com.apple.Boot.plist delete mode 100644 packages/tools/atv-bootloader/files/3rdparty/atvboot/com.apple.Boot.usb delete mode 100755 packages/tools/atv-bootloader/files/3rdparty/atvboot/patchstick.sh delete mode 100755 packages/tools/atv-bootloader/release diff --git a/packages/tools/atv-bootloader/files/3rdparty/atvboot/BootLogo.png b/packages/tools/atv-bootloader/files/3rdparty/atvboot/BootLogo.png deleted file mode 100644 index 62bb12f1a8f83a21af8ccafa6197d42a7736a54d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26321 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 diff --git a/packages/tools/atv-bootloader/files/3rdparty/atvboot/BootLogoSwiss.png b/packages/tools/atv-bootloader/files/3rdparty/atvboot/BootLogoSwiss.png deleted file mode 100644 index 39f154f064ff0ff2499129a3dfd8380ead23e299..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30078 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�pSG`h-NlKY-HTD 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 - - - - Background Color - 0 - Boot Fail Logo - - Boot Logo - BootLogo.png - Kernel - MACH_KERNEL - Kernel Flags - boot=/dev/sda1 disk=/dev/sda2 quiet BOOT_IMAGE=MACH_KERNEL SYSTEM_IMAGE=SYSTEM - - diff --git a/packages/tools/atv-bootloader/files/3rdparty/atvboot/com.apple.Boot.plist b/packages/tools/atv-bootloader/files/3rdparty/atvboot/com.apple.Boot.plist deleted file mode 100644 index e335a0f72a..0000000000 --- a/packages/tools/atv-bootloader/files/3rdparty/atvboot/com.apple.Boot.plist +++ /dev/null @@ -1,16 +0,0 @@ - - - - - Background Color - 0 - Boot Fail Logo - - Boot Logo - BootLogoSwiss.png - Kernel - mach_kernel - Kernel Flags - atv-boot=patchstick logo.nologo quiet video=vesafb - - diff --git a/packages/tools/atv-bootloader/files/3rdparty/atvboot/com.apple.Boot.usb b/packages/tools/atv-bootloader/files/3rdparty/atvboot/com.apple.Boot.usb deleted file mode 100644 index ca2fcc00aa..0000000000 --- a/packages/tools/atv-bootloader/files/3rdparty/atvboot/com.apple.Boot.usb +++ /dev/null @@ -1,16 +0,0 @@ - - - - - Background Color - 0 - Boot Fail Logo - - Boot Logo - BootLogo.png - Kernel - MACH_KERNEL - Kernel Flags - boot=/dev/sdb1 disk=/dev/sdb2 quiet BOOT_IMAGE=MACH_KERNEL SYSTEM_IMAGE=SYSTEM - - diff --git a/packages/tools/atv-bootloader/files/3rdparty/atvboot/patchstick.sh b/packages/tools/atv-bootloader/files/3rdparty/atvboot/patchstick.sh deleted file mode 100755 index 6d8620d60c..0000000000 --- a/packages/tools/atv-bootloader/files/3rdparty/atvboot/patchstick.sh +++ /dev/null @@ -1,478 +0,0 @@ -#!/bin/bash -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2011-2013 Christian Hewitt (chewitt@openelec.tv) -# -# 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, 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 OpenELEC.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -blink(){ - atvclient &>/dev/null & -} - -check_verbose(){ - exec 1>/dev/console - exec 2>/dev/console - if [ -f /mnt/openelec/enable_verbose ]; then - exec 3>&1 - exec 4>&2 - else - exec 3> /dev/null - exec 4> /dev/null - fi -} - -check_debug(){ - if [ -f /mnt/rootfs/enable_debug ]; then - echo " INFO: Script debugging enabled" - set -x - fi -} - -check_function(){ - FUNCTION=$(cat /mnt/rootfs/function) -} - -check_bootdevice(){ - SDA=$(ls /dev/sda) - SDB=$(ls /dev/sdb) - BOOTDEVICE=$(cat /proc/mounts | grep /mnt/rootfs | awk '{print $1}' | sed 's/[0-9]//g') - if [ -n "${SDA}" -a -n "${SDB}" ]; then - # AppleTV has USB and HDD devices - if [ "${BOOTDEVICE}" = "/dev/sda" ]; then - # AppleTV has a SATA adapter the kernel recognises slowly - USB="/dev/sda" - HDD="/dev/sdb" - SLOWBOOT="TRUE" - else - # AppleTV has a normal setup - USB="/dev/sdb" - HDD="/dev/sda" - fi - else - # AppleTV has no HDD - USB="/dev/sda" - HDD="/dev/sda" - NOHDD="TRUE" - fi -} - -banner(){ - clear - echo "" - echo "" - echo "" - echo " ********************************************************************************" - echo " * *" - case $FUNCTION in - factoryrestore) echo " * OpenELEC AppleTV Factory Restore *" ;; - update) echo " * OpenELEC AppleTV Updater *" ;; - emergency) echo " * OpenELEC AppleTV Emergency Boot *" ;; - *) echo " * OpenELEC AppleTV Installer *" ;; - esac - echo " * *" - echo " ********************************************************************************" - echo "" -} - -get_partition_end(){ - local PARTITION=$1 - PARTITION_END=$(parted -s "${TARGET}" print -m | egrep "^${PARTITION}" | cut -d ":" -f 3) - strip_alpha_characters "${PARTITION_END}" - PARTITION_END="${STRIPPED}" -} - -strip_alpha_characters(){ - local TEXT=$1 - STRIPPED=$(echo "${TEXT}" | sed 's/[^.0-9]//g') -} - -disk_sync(){ - partprobe "${TARGET}" 1>&3 2>&4 - sync 1>&3 2>&4 -} - -network(){ - ifconfig eth0 0.0.0.0 - /sbin/udhcpc --now 1>&3 2>&4 - sleep 4 - IPADDRESS=$(ifconfig | head -n 2 | grep inet | awk '{print $2}' | sed 's/addr://g') - if [ "${IPADDRESS}" = "" ]; then - ERROR="noipaddress" - error - else - echo " INFO: Leased ipv4 address ${IPADDRESS} from DHCP server" - fi -} - -prepare(){ - case $FUNCTION in - factoryrestore) - if [ ! -d /mnt/rootfs/restore ]; then - echo "" - echo " FAIL: No restore files!" - echo "" - error - fi - ;; - *) - if [ ! -f /mnt/rootfs/MACH_KERNEL -a ! -f /mnt/rootfs/SYSTEM ]; then - network - DOWNLOAD=$(wget -qO- "http://update.openelec.tv/updates.php?i=INSTALLER&d=OpenELEC&pa=ATV.i386&v=3.1.0" | \ - sed 's/{"data":{"update":"//g' | sed 's/","folder":"releases"}}//g' | grep OpenELEC-ATV) - echo "" - echo " INFO: Downloading ${DOWNLOAD}" - echo "" - wget -O /mnt/rootfs/${DOWNLOAD} http://releases.openelec.tv/${DOWNLOAD} - tar -xvf /mnt/rootfs/${DOWNLOAD} -C /mnt/rootfs 1>&3 2>&4 - FOLDER=$(echo ${DOWNLOAD} | sed 's/.tar//g') - mv /mnt/rootfs/${FOLDER}/target/MACH_KERNEL /mnt/rootfs/ 1>&3 2>&4 - mv /mnt/rootfs/${FOLDER}/target/MACH_KERNEL.md5 /mnt/rootfs/ 1>&3 2>&4 - mv /mnt/rootfs/${FOLDER}/target/SYSTEM /mnt/rootfs/ 1>&3 2>&4 - mv /mnt/rootfs/${FOLDER}/target/SYSTEM.md5 /mnt/rootfs/ 1>&3 2>&4 - rm -rf /mnt/rootfs/${FOLDER} 1>&3 2>&4 - fi - SUM1=$(md5sum /mnt/rootfs/MACH_KERNEL | awk '{print $1}') - SUM2=$(cat /mnt/rootfs/MACH_KERNEL.md5 | awk '{print $1}') - SUM3=$(md5sum /mnt/rootfs/SYSTEM | awk '{print $1}') - SUM4=$(cat /mnt/rootfs/SYSTEM.md5 | awk '{print $1}') - if [ "${SUM1}" != "${SUM2}" -o "${SUM3}" != "${SUM4}" -o -z "${SUM2}" -o -z "${SUM4}" ]; then - ERROR="badchecksum" - error - fi - rm /mnt/rootfs/MACH_KERNEL.md5 1>&3 2>&4 - rm /mnt/rootfs/SYSTEM.md5 1>&3 2>&4 - ;; - esac -} - -create_target(){ - echo "" - dd if=/dev/zero of=${TARGET} bs=512 count=40 1>&3 2>&4 - disk_sync - echo " INFO: Creating GPT Scheme" - parted -s ${TARGET} mklabel gpt 1>&3 2>&4 -} - -create_boot(){ - echo " INFO: Creating BOOT Partition" - PARTITION="1" - parted -s ${TARGET} mkpart primary HFS 40s 409600s 1>&3 2>&4 - parted -s ${TARGET} set ${PARTITION} atvrecv on 1>&3 2>&4 - parted -s ${TARGET} name ${PARTITION} 'BOOT' 1>&3 2>&4 - disk_sync - mkfs.hfsplus -s -v "BOOT" ${TARGET}${PARTITION} 1>&3 2>&4 - fsck.hfsplus -y ${TARGET}${PARTITION} 1>&3 2>&4 - BOOT=$(mktemp -d "/tmp/mounts.XXXXXX") - mount ${TARGET}${PARTITION} ${BOOT} 1>&3 2>&4 - PARTITION=$(( ${PARTITION} + 1 )) -} - -create_boot_usb(){ - echo " INFO: Creating BOOT Partition" - PARTITION="1" - parted -s ${TARGET} mkpart primary HFS 40s 1048542s 1>&3 2>&4 - parted -s ${TARGET} set ${PARTITION} atvrecv on 1>&3 2>&4 - parted -s ${TARGET} name ${PARTITION} 'BOOT' 1>&3 2>&4 - disk_sync - PARTITION=$(( ${PARTITION} + 1 )) -} - -create_storage(){ - echo " INFO: Creating STORAGE Partition" - P1_END=$(parted -s ${TARGET} unit s print | grep atvrecv | awk '{print $3}' | sed 's/s//g') - P2_START=$(( ${P1_END} + 1 )) - DRIVE_END=$(parted -s ${TARGET} unit s print | grep ${TARGET} | awk '{print $3}' | sed 's/s//g') - SWAP_SIZE=$(( 512 * 1024 * 1024 / 512 )) # 512MB in bytes / 512 byte sectors - if [ "${SWAP}" = "TRUE" -a "${FUNCTION}" = "install-hdd" ]; then - P2_END=$(( ${DRIVE_END} - ${SWAP_SIZE} - 40 )) - else - P2_END=$(( ${DRIVE_END} - 40 )) - fi - parted -s ${TARGET} mkpart primary ext4 ${P2_START}s ${P2_END}s 1>&3 2>&4 - parted -s ${TARGET} name ${PARTITION} 'STORAGE' 1>&3 2>&4 - disk_sync - mkfs.ext4 -L "STORAGE" ${TARGET}${PARTITION} 1>&3 2>&4 - fsck.ext4 -y ${TARGET}${PARTITION} 1>&3 2>&4 - STORAGE=$(mktemp -d "/tmp/mounts.XXXXXX") - mount ${TARGET}${PARTITION} ${STORAGE} 1>&3 2>&4 - PARTITION=$(( ${PARTITION} + 1 )) -} - -create_swap(){ - if [ "${SWAP}" = "TRUE" ]; then - echo " INFO: Creating LINUX-SWAP Partition" - P2_END=$(parted -s ${TARGET} unit s print | grep STORAGE | awk '{print $3}' | sed 's/s//g') - DRIVE_END=$(parted -s ${TARGET} unit s print | grep ${TARGET} | awk '{print $3}' | sed 's/s//g') - P3_START=$(( ${P2_END} + 1 )) - P3_END=$(( ${DRIVE_END} - 40 )) - parted -s ${TARGET} mkpart primary linux-swap ${P3_START}s ${P3_END}s 1>&3 2>&4 - parted -s ${TARGET} name ${PARTITION} 'LINUX-SWAP' 1>&3 2>&4 - mkswap ${TARGET}${PARTITION} 1>&3 2>&4 - disk_sync - fi -} - -install_hdd(){ - TARGET=${HDD} - SWAP="TRUE" - echo "" - echo " WARN: Continuing with installation will replace the original Apple OS or current" - echo " Linux OS on the AppleTV's internal hard drive with OpenELEC. If you do not" - echo " want installation to contine please POWER OFF your AppleTV within the next" - echo " 30 seconds and remove the USB key." - catnap - create_target - create_boot - create_storage - create_swap - echo " INFO: Creating BOOT Files" - cp -av /mnt/rootfs/boot.efi "${BOOT}"/ 1>&3 2>&4 - cp -av /mnt/rootfs/BootLogo.png "${BOOT}"/ 1>&3 2>&4 - cp -Rv /mnt/rootfs/System "${BOOT}"/ 1>&3 2>&4 - cp -av /mnt/rootfs/MACH_KERNEL "${BOOT}"/ 1>&3 2>&4 - cp -av /mnt/rootfs/SYSTEM "${BOOT}"/ 1>&3 2>&4 - if [ "${SLOWBOOT}" = "TRUE" ]; then - cp -av /mnt/rootfs/com.apple.Boot.usb "${BOOT}"/com.apple.Boot.plist 1>&3 2>&4 - else - cp -av /mnt/rootfs/com.apple.Boot.hdd "${BOOT}"/com.apple.Boot.plist 1>&3 2>&4 - fi - chown root:root "${BOOT}"/* 1>&3 2>&4 - mkdir -p ${STORAGE}/.update 1>&3 2>&4 - mkdir -p ${STORAGE}/.cache/services 1>&3 2>&4 - echo SSHD_START=true > ${STORAGE}/.cache/services/ssh.conf - # for systemd testing we also need to touch sshd.conf - touch ${STORAGE}/.cache/services/sshd.conf - remove_temp_mounts 1>&3 2>&4 - echo "" - echo " INFO: Installation Completed!" - echo "" - echo " INFO: Ignore the warnings below as we reboot :)" - echo "" -} - -install_usb(){ - TARGET=${USB} - SWAP="FALSE" - create_target - create_boot_usb - create_storage - if [ "${NOHDD}" = "TRUE" ]; then - cp -av /mnt/rootfs/com.apple.Boot.hdd /mnt/rootfs/com.apple.Boot.plist 1>&3 2>&4 - else - cp -av /mnt/rootfs/com.apple.Boot.usb /mnt/rootfs/com.apple.Boot.plist 1>&3 2>&4 - fi - mkdir -p ${STORAGE}/.update 1>&3 2>&4 - mkdir -p ${STORAGE}/.cache/services 1>&3 2>&4 - echo SSHD_START=true > ${STORAGE}/.cache/services/ssh.conf - # for systemd testing we also need to touch sshd.conf - touch ${STORAGE}/.cache/services/sshd.conf - remove_temp_mounts 1>&3 2>&4 - echo "" - echo " INFO: Installation Completed!" - echo "" - echo " INFO: Ignore the warnings below as we reboot :)" - echo "" -} - -update(){ - echo "" - echo " INFO: Checking ${HDD}1 Filesystem for Errors" - fsck.hfsplus ${HDD}1 1>&3 2>&4 - # echo " INFO: Checking ${HDD}2 Filesystem for Errors" - # fsck.ext4 ${HDD}2 1>&3 2>&4 - mkdir -p /mnt/boot 1>&3 2>&4 - echo " INFO: Mounting BOOT Partition" - mount -t hfsplus -o rw,force ${HDD}1 /mnt/boot 1>&3 2>&4 - echo " INFO: Updating MACH_KERNEL and SYSTEM" - cp -av /mnt/rootfs/MACH_KERNEL /mnt/boot/ 1>&3 2>&4 - cp -av /mnt/rootfs/SYSTEM /mnt/boot/ 1>&3 2>&4 - echo "" - echo " INFO: Files updated!" - echo "" - echo " INFO: Ignore the warnings below as we reboot :)" - echo "" -} - -factoryrestore(){ - DISKSIZE=$(parted -s ${HDD} unit s print | grep "Disk ${HDD}:" | awk '{print $3}' | sed 's/s//g') - let SECTORS="${DISKSIZE}"-262145 - echo " WARN: Continuing with restore will erase OpenELEC from the internal HDD of your" - echo " AppleTV and will reinstall AppleOS files to prepare for a factory-restore" - echo " boot. To abort the restore, POWER OFF your AppleTV in the next 30 seconds" - echo "" - catnap - echo " INFO: Creating GPT Scheme" - parted -s ${HDD} mklabel gpt 1>&3 2>&4 - echo " INFO: Creating Partitions" - parted -s ${HDD} mkpart primary fat32 40s 69671s 1>&3 2>&4 - parted -s ${HDD} mkpart primary HFS 69672s 888823s 1>&3 2>&4 - parted -s ${HDD} mkpart primary HFS 888824s 2732015s 1>&3 2>&4 - parted -s ${HDD} mkpart primary HFS 2732016s ${SECTORS}s 1>&3 2>&4 - partprobe ${HDD} 1>&3 2>&4 - parted -s ${HDD} set 2 atvrecv on 1>&3 2>&4 - parted -s ${HDD} set 1 boot on 1>&3 2>&4 - echo " INFO: Creating Filesystems" - mkfs.msdos -F 32 -n EFI ${HDD}1 1>&3 2>&4 - mkfs.hfsplus -v Recovery ${HDD}2 1>&3 2>&4 - mkfs.hfsplus -J -v OSBoot ${HDD}3 1>&3 2>&4 - mkfs.hfsplus -J -v Media ${HDD}4 1>&3 2>&4 - partprobe ${HDD} 1>&3 2>&4 - echo " INFO: Restoring Recovery Files" - mkdir /mnt/Recovery 1>&3 2>&4 - mount -t hfsplus -o rw,force ${HDD}2 /mnt/Recovery 1>&3 2>&4 - cp -Rv /mnt/rootfs/restore/* /mnt/Recovery 1>&3 2>&4 - sync 1>&3 2>&4 - sleep 2 - umount /mnt/Recovery 1>&3 2>&4 - sleep 2 - echo y | gptsync ${HDD} 1>&3 2>&4 - sleep 2 - echo "" - echo " INFO: Preparation has completed!" - echo "" - echo " INFO: Ignore the warnings below as we reboot :)" - echo "" -} - -emergency(){ - echo "" - echo " INFO: Telnet login available; user = 'root' and password = 'root'" - echo "" - telnetd -l /bin/login -} - -cleanup_hdd(){ - umount /mnt/rootfs 1>&3 2>&4 - echo y | gptsync ${HDD} 1>&3 2>&4 - dd if=/dev/zero of=${USB} bs=512 count=40 1>&3 2>&4 -} - -cleanup_usb(){ - umount /mnt/rootfs 1>&3 2>&4 - echo y | gptsync ${USB} 1>&3 2>&4 -} - -snooze(){ - sleep 100000 -} - -catnap(){ - sleep 30 -} - -pause(){ - sleep 10 -} - -error(){ - case $ERROR in - download) echo " FAIL: The files could not be downloaded, aborting!";; - badchecksum) echo " FAIL: Checksum does not match, aborting!";; - noipaddress) echo " FAIL: Failed to lease an ipv4 address, aborting!";; - *) echo " FAIL: There was an error, aborting!";; - esac - echo "" - if [ -z "${IPADDRESS}" ]; then - network - fi - emergency - snooze -} - -main(){ - blink - check_verbose - check_debug - check_function - check_bootdevice - banner - case $FUNCTION in - install-hdd) - prepare - install_hdd - cleanup_hdd - pause - reboot - ;; - install-hdd-offline) - prepare - install_hdd - cleanup_hdd - pause - reboot - ;; - install-hdd-offline-debug) - prepare - install_hdd - cleanup_hdd - pause - reboot - ;; - install-usb) - prepare - install_usb - cleanup_usb - pause - reboot - ;; - install-usb-offline) - prepare - install_usb - cleanup_usb - pause - reboot - ;; - install-usb-offline-debug) - prepare - install_usb - cleanup_usb - pause - reboot - ;; - update) - prepare - update - cleanup_hdd - pause - reboot - ;; - update-offline) - prepare - update - cleanup_hdd - pause - reboot - ;; - factoryrestore) - prepare - factoryrestore - cleanup_hdd - pause - reboot - ;; - emergency) - network - emergency - ;; - *) - error - ;; - esac -} - -main -snooze diff --git a/packages/tools/atv-bootloader/release b/packages/tools/atv-bootloader/release deleted file mode 100755 index 538b88a39b..0000000000 --- a/packages/tools/atv-bootloader/release +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv) -# -# OpenELEC 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. -# -# OpenELEC 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 OpenELEC. If not, see . -################################################################################ - -. config/options $1 - -mkdir -p $RELEASE_DIR/3rdparty/atvboot - cp -PR $BUILD/atvboot-*/boot.efi $RELEASE_DIR/3rdparty/atvboot - cp -PR $BUILD/atvboot-*/mach_kernel $RELEASE_DIR/3rdparty/atvboot diff --git a/packages/tools/atvboot/package.mk b/packages/tools/atvboot/package.mk index c9c3faa48d..f08f6cefc6 100644 --- a/packages/tools/atvboot/package.mk +++ b/packages/tools/atvboot/package.mk @@ -17,17 +17,17 @@ ################################################################################ PKG_NAME="atvboot" -PKG_VERSION="1" +PKG_VERSION="1.0" PKG_REV="1" PKG_ARCH="i386 x86_64" PKG_LICENSE="GPL" PKG_SITE="http://openelec.tv" -PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz" +PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.gz" PKG_DEPENDS_TARGET="toolchain" PKG_PRIORITY="optional" PKG_SECTION="tools" -PKG_SHORTDESC="atvboot: ATV Bootloader files" -PKG_LONGDESC="atvboot: ATV Bootloader files" +PKG_SHORTDESC="atvboot: ATV Boot/Installer files" +PKG_LONGDESC="atvboot: ATV Boot/Installer files" PKG_IS_ADDON="no" PKG_AUTORECONF="no" diff --git a/scripts/image b/scripts/image index 50a701976a..df08a247ad 100755 --- a/scripts/image +++ b/scripts/image @@ -281,6 +281,7 @@ IMAGE_NAME="$DISTRONAME-$TARGET_VERSION" # variables used in image script must be passed sudo env \ ROOT="$ROOT" \ + BUILD="$BUILD" \ RELEASE_DIR="$RELEASE_DIR" \ TARGET_IMG="$TARGET_IMG" \ IMAGE_NAME="$IMAGE_NAME" \ diff --git a/scripts/mkimage-atv b/scripts/mkimage-atv index 3b2ec43af4..885256240b 100755 --- a/scripts/mkimage-atv +++ b/scripts/mkimage-atv @@ -73,7 +73,7 @@ mount /dev/mapper/loop0p1 $OE_TMP 1>&3 2>&4 # copy recovery files - cp -Rv $RELEASE_DIR/3rdparty/atvboot/* $OE_TMP 1>&3 2>&4 + cp -Rv $BUILD/atvboot-*/* $OE_TMP 1>&3 2>&4 echo $FUNCTION > $OE_TMP/function # copy MACH_KERNEL/SYSTEM/.md5 files