* Marc Singer <[EMAIL PROTECTED]> [2008-05-18 14:01]: > Let me see if I understand. You want 1.4.15 with Kevin's patch and > nothing else?
I believe Kevin's patch contains some changes we don't need. I think this one is what we want: --- apex-1.4.xx.orig/debian/rules +++ apex-1.4.xx/debian/rules @@ -58,6 +58,7 @@ install -m 0644 src/arch-arm/rom/apex.bin\ debian/$(package)/boot/apex.flash install -m 0755 usr/apex-env debian/$(package)/usr/sbin + install -m 0755 usr/flash-apex debian/$(package)/usr/sbin dh_strip dh_installchangelogs ChangeLog dh_installdocs -a --- apex-1.4.xx.orig/debian/postinst +++ apex-1.4.xx/debian/postinst @@ -0,0 +1,8 @@ +#!/bin/sh +set -e + +#DEBHELPER# + +if [ "$1" = configure ]; then + flash-apex +fi --- apex-1.4.xx.orig/src/mach-ixp42x/debian-nslu2-arm_config +++ apex-1.4.xx/src/mach-ixp42x/debian-nslu2-arm_config @@ -48,7 +48,7 @@ CONFIG_NOR_BANK0_START=0x50000000 CONFIG_NOR_BANK0_LENGTH=0x00800000 CONFIG_MACH="ixp42x" -CONFIG_RAMDISK_SIZE=0x00400000 +CONFIG_RAMDISK_SIZE=0x005FFFF0 CONFIG_MACH_NSLU2=y # CONFIG_MACH_NAS100D is not set # CONFIG_MACH_DSMG600 is not set --- apex-1.4.xx.orig/src/mach-ixp42x/debian-nslu2-armeb_config +++ apex-1.4.xx/src/mach-ixp42x/debian-nslu2-armeb_config @@ -48,7 +48,7 @@ CONFIG_NOR_BANK0_START=0x50000000 CONFIG_NOR_BANK0_LENGTH=0x00800000 CONFIG_MACH="ixp42x" -CONFIG_RAMDISK_SIZE=0x00400000 +CONFIG_RAMDISK_SIZE=0x005FFFF0 CONFIG_MACH_NSLU2=y # CONFIG_MACH_NAS100D is not set # CONFIG_MACH_DSMG600 is not set --- apex-1.4.xx.orig/usr/flash-apex +++ apex-1.4.xx/usr/flash-apex @@ -0,0 +1,92 @@ +#!/bin/sh + +# Copyright (C) 2006 Joey Hess <[EMAIL PROTECTED]> +# Copyright (C) 2006 Martin Michlmayr <[EMAIL PROTECTED]> +# Copyright (C) 2007 Gordon Farquharson <[EMAIL PROTECTED]> + +# This code is covered by the GNU General Public License. + +set -e + +error() { + echo "$@" >&2 + exit 1 +} + +check_mtd() { + if [ ! -e /proc/mtd ]; then + error "/proc/mtd doesn't exist" + fi +} + +mtdblock() { + grep "$1" /proc/mtd | cut -d: -f 1 | sed 's/mtd/\/dev\/mtdblock/' +} + +# See http://www.nslu2-linux.org/wiki/Info/BootFlash -- the NSLU2 uses a +# 16 byte MTD header, the first four bytes (big endian) give the length of +# the remainder of the image, and the remaining bytes are zero. Generate +# this header. +sercomm_header() { + perl -e 'print pack("N4", shift)' "$1" +} + +nslu2_swap() { + if [ "$little_endian" ]; then + devio "<<"$1 "xp $,4" + else + cat $1 + fi +} + +apex_file=/boot/apex.flash + +if [ ! -e $apex_file ]; then + error "Can't find $apex_file" +fi + +machine=$(grep "^Hardware" /proc/cpuinfo | sed 's/Hardware\s*:\s*//') +case "$machine" in + "Linksys NSLU2") + check_mtd + case "$(dpkg --print-architecture)" in + arm|armel) + little_endian=1 + ;; + armeb) + little_endian=0 + ;; + esac + mtdloader=$(mtdblock Loader) + if [ -z "$mtdloader" ]; then + error "Cannot find mtd partition 'Loader'" + fi + lsize=$(wc -c $apex_file | awk '{print $1}') + mtdblocksize=131072 + pad=$(expr $mtdblocksize - $lsize - 16) + # Store non-default APEX configuration + tmp=$(tempfile) + (apex-env printenv | egrep -v '\*=') > $tmp + printf "Flashing loader: " >&2 + ( + sercomm_header $(expr $lsize + 16) + nslu2_swap $apex_file + perl -e "print pack(\"C\", 0xff) x $pad" + ) > "$mtdloader" || error "failed." + # Write the stored APEX configuration. For each line, + # remove whitespace from the start and the end of the + # line, and use all the characters, including + # whitespace, after '=' as the value. + while read line + do + key=$(echo $line | cut -d '=' -f1 | awk '{print $1}') + val=$(echo $line | awk '{$1=""; $2=""; print substr($0,3)}') + apex-env setenv "$key" "$val" + done < $tmp + rm $tmp + echo "done." >&2 + ;; + *) + error "Unsupported platform." + ;; +esac -- Martin Michlmayr http://www.cyrius.com/ -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]