diff options
author | Rod Whitby <rod@whitby.id.au> | 2006-11-15 07:20:03 +0000 |
---|---|---|
committer | Rod Whitby <rod@whitby.id.au> | 2006-11-15 07:20:03 +0000 |
commit | c1a7b8ddc811d94cfe2d14331feae0f6ee92e892 (patch) | |
tree | 2c575ff72812a4934cae8a5a2e313d2d13f72f75 | |
parent | d5b4e6d7811866391956ad4a0469b00f8b630d57 (diff) | |
parent | 684aef505e7cd2e509e9ea172fddea7ed68d50a5 (diff) |
merge of 'ae579c1f35512dfab367e798299148581e0c7b11'
and 'bcb6ebdf4f4051fe2953e3f6319bdf6ef5e111a9'
-rwxr-xr-x | packages/nslu2-binary-only/unslung-rootfs/rc.bootdisk | 39 | ||||
-rw-r--r-- | packages/nslu2-binary-only/unslung-rootfs_2.3r63.bb | 4 |
2 files changed, 36 insertions, 7 deletions
diff --git a/packages/nslu2-binary-only/unslung-rootfs/rc.bootdisk b/packages/nslu2-binary-only/unslung-rootfs/rc.bootdisk index 3055c1a6c4..c83881a333 100755 --- a/packages/nslu2-binary-only/unslung-rootfs/rc.bootdisk +++ b/packages/nslu2-binary-only/unslung-rootfs/rc.bootdisk @@ -1,5 +1,8 @@ #!/bin/sh +# If the nobootdisk flag is set, exit. +if ( [ -f /.nobootdisk ] ) ; then return 0 ; fi + # If we're not booting from flash, exit. i=`grep "/dev/root / jffs2" /proc/mounts` if ( [ -z "$i" ] ) ; then return 0 ; fi @@ -12,30 +15,56 @@ echo "====> real_hostname is $real_hostname" # but don't duplicate if ( [ "$linksys_hostname" = `hostname` ] ) ; then linksys_hostname= ; fi -if ( [ "$real_hostname" = "unslung" ] ) ; then real_hostname= ; fi +if ( [ "$real_hostname" = "default" ] ) ; then real_hostname= ; fi # Search all FAT/NTFS filesystem in order. # (heavily borrowed from the rc.start-optware script). + for i in /share/*/data/HDD_* ; do + + # if the value of i is the string with the wildcards, no match occurred. if ( [ "$i" = '/share/*/data/HDD_*' ] ) ; then break ; fi + echo "====> searching $i..." - for j in $linksys_hostname $real_hostname "unslung" ; do + + # Now check inside directories named for the Linksys hostname, the real + # hostname, and finally the name "default"... + for j in $linksys_hostname $real_hostname "default" ; do + echo "====> checking $i/bootdisk/$j ..." - if ( [ -d "$i"/bootdisk/"$j" ] ) ; then - for k in "$i"/bootdisk/"$j"/S??* ; do + if ( [ -d "$i/bootdisk/$j" ] ) ; then + + # We have the correct subdirectory... + for k in "$i/bootdisk/$j"/S??* ; do + + # Bail out if no match in that directory + if ( [ "$k" = "$i/bootdisk/$j"'/S??*' ] ) ; then break ; fi + echo "====> found $k ..." [ ! -f "$k" ] && continue - nocopy=`grep "^#unslung-nocopy" "$k"` + + # Check to see if we need to copy or run in-place.. + nocopy=`grep "^#bootdisk:nocopy" "$k"` if ( [ -z "$nocopy" ] ) ; then + + # copy and strip the MSDOS-style line endings, then execute. echo "====> running copy: /tmp/tmpscript $k $i" dos2unix -u <"$k" >/tmp/tmpscript /bin/sh /tmp/tmpscript "$k" "$i" rm -f /tmp/tmpscript + else + + # execute in place echo "====> running in-place $k $k $i" /bin/sh "$k" "$k" "$i" + fi + done + fi + done + done diff --git a/packages/nslu2-binary-only/unslung-rootfs_2.3r63.bb b/packages/nslu2-binary-only/unslung-rootfs_2.3r63.bb index f6b65aad2a..dab61db94e 100644 --- a/packages/nslu2-binary-only/unslung-rootfs_2.3r63.bb +++ b/packages/nslu2-binary-only/unslung-rootfs_2.3r63.bb @@ -1,7 +1,7 @@ SECTION = "base" COMPATIBLE_MACHINE = "nslu2" -PR = "r17" +PR = "r18" DEPENDS = "nslu2-linksys-libs nslu2-linksys-sambacodepages" @@ -165,7 +165,7 @@ do_compile () { # No reason not to have a home directory for root... mkdir -p ${S}/root - chmod 775 ${S}/root + chmod 755 ${S}/root } do_install () { |