diff options
| author | Rod Whitby <rod@whitby.id.au> | 2005-08-11 10:21:07 +0000 |
|---|---|---|
| committer | OpenEmbedded Project <openembedded-devel@lists.openembedded.org> | 2005-08-11 10:21:07 +0000 |
| commit | fae33cac57d8a8cea05736cc47a9c2e19d679503 (patch) | |
| tree | 56b3e9ce1104dafd167b1e013c423341b404d146 | |
| parent | 37f7ad3401acb5edf6633dd99bc56db96d404d8d (diff) | |
| parent | 0654a007425b7b7b4d7646bd5cc2edeb1375d622 (diff) | |
merge of 878c33f63dddf26432371b39e5ac632427adb9a9
and f27802cb19bc2b8066af4e34ef08a08acd4f6203
23 files changed, 1350 insertions, 14 deletions
diff --git a/classes/nslu2_flashimg.bbclass b/classes/nslu2-jffs2-image.bbclass index 56ad0f0659..56ad0f0659 100644 --- a/classes/nslu2_flashimg.bbclass +++ b/classes/nslu2-jffs2-image.bbclass diff --git a/classes/nslu2-ramdisk-image.bbclass b/classes/nslu2-ramdisk-image.bbclass new file mode 100644 index 0000000000..0b545854fd --- /dev/null +++ b/classes/nslu2-ramdisk-image.bbclass @@ -0,0 +1,18 @@ +NSLU2_SLUGIMAGE_ARGS ?= "" + +nslu2_pack_image () { + install -d ${DEPLOY_DIR_IMAGE}/slug + install -m 0644 ${STAGING_LIBDIR}/nslu2-binaries/RedBoot \ + ${STAGING_LIBDIR}/nslu2-binaries/Trailer \ + ${STAGING_LIBDIR}/nslu2-binaries/SysConf \ + ${DEPLOY_DIR_IMAGE}/slug/ + install -m 0644 ${DEPLOY_DIR_IMAGE}/zImage-${IMAGE_BASENAME} ${DEPLOY_DIR_IMAGE}/slug/vmlinuz + install -m 0644 ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext2.gz ${DEPLOY_DIR_IMAGE}/slug/ramdisk.ext2.gz + cd ${DEPLOY_DIR_IMAGE}/slug + slugimage -p -b RedBoot -s SysConf -r Ramdisk:ramdisk.ext2.gz -t Trailer \ + -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.ramdisk.img ${NSLU2_SLUGIMAGE_ARGS} + rm -rf ${DEPLOY_DIR_IMAGE}/slug +} + +EXTRA_IMAGEDEPENDS += 'slugimage-native nslu2-linksys-firmware' +IMAGE_POSTPROCESS_COMMAND += "nslu2_pack_image; " diff --git a/conf/distro/openslug.conf b/conf/distro/openslug.conf index 78e3cc0378..b5a580d97b 100644 --- a/conf/distro/openslug.conf +++ b/conf/distro/openslug.conf @@ -15,7 +15,7 @@ TARGET_OS = "linux" USE_NLS ?= "no" USE_NLS_glib-2.0 = "yes" -INHERIT += " package_ipk debian nslu2_flashimg" +INHERIT += " package_ipk debian nslu2-jffs2-image" # NOTE: to build new packages set OPENSLUG_EXTRA_BBFILES to the full path name to # the .bb files for the packages to build - see openslug-packages.conf in this diff --git a/conf/distro/ucslugc.conf b/conf/distro/ucslugc.conf index 0376eadd00..39251c5375 100644 --- a/conf/distro/ucslugc.conf +++ b/conf/distro/ucslugc.conf @@ -19,7 +19,7 @@ ARM_INTERWORK = ":thumb-interwork" USE_NLS ?= "no" USE_NLS_glib-2.0 = "yes" -INHERIT += " package_ipk debian nslu2_flashimg" +INHERIT += " package_ipk debian nslu2-jffs2-image" # The OVERRIDES are modified here so that 'openslug' overrides are picked up if # present (ucslugc overrides take precedence). diff --git a/conf/distro/unslung-binary-kernel.conf b/conf/distro/unslung-binary-kernel.conf new file mode 100644 index 0000000000..9394ba4475 --- /dev/null +++ b/conf/distro/unslung-binary-kernel.conf @@ -0,0 +1,52 @@ +#@TYPE: Distribution +#@NAME: Unslung +#@DESCRIPTION: Unslung Linux Distribution for the NSLU2 + +FEED_URIS = "cross##http://ipkg.nslu2-linux.org/feeds/unslung/cross" +FEED_URIS += "native##http://ipkg.nslu2-linux.org/feeds/unslung/native" +FEED_URIS += "oe##http://ipkg.nslu2-linux.org/feeds/unslung/oe" + +DISTRO_NAME = "Unslung" +DISTRO_VERSION = "6.0-beta" +DISTRO_TYPE = "beta" + +# pull in the frozen list of bbfiles +UNSLUNG_EXTRA_BBFILES ?= "" +include conf/distro/freeze.conf + +TARGET_FPU = "soft" +TARGET_OS = "linux" + +FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2" + +INHERIT += " package_ipk nslu2-ramdisk-image" + +IMAGE_FSTYPE = "ext2.gz" +UNSLUNG_DEVICE_TABLE = "${@bb.which(bb.data.getVar('BBPATH', d, 1), 'files/device_table-unslung.txt')}" +EXTRA_IMAGECMD_ext2.gz = "-D ${UNSLUNG_DEVICE_TABLE}" +IMAGE_ROOTFS_SIZE_ext2.gz = "14000" + +UNSLUNG_EXTRA_DEPENDS ?= "" +UNSLUNG_EXTRA_RDEPENDS ?= "\ +kernel-module-usbnet \ +kernel-module-pegasus kernel-module-kaweth \ +kernel-module-usbserial \ +kernel-module-pl2303 kernel-module-ftdi-sio" + +UNSLUNG_EXTRA_INSTALL ?= "${UNSLUNG_EXTRA_RDEPENDS}" + +# Select between multiple alternative providers, if more than one is eligible. +PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial" +PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross" +PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross" + +PREFERRED_VERSION_glibc ?= "2.2.5" +PREFERRED_VERSION_glibc-initial ?= "2.2.5" +PREFERRED_VERSION_binutils ?= "2.15.94.0.1" +PREFERRED_VERSION_binutils-cross ?= "2.15.94.0.1" + +PREFERRED_VERSION_unslung-kernel ?= "2.4.22.l2.3r63" +PREFERRED_VERSION_unslung-rootfs ?= "2.3r63" +PREFERRED_VERSION_nslu2-linksys-firmware ?= "2.3r63" +PREFERRED_VERSION_nslu2-linksys-libs ?= "2.3r63" +PREFERRED_VERSION_nslu2-linksys-ramdisk ?= "2.3r63" diff --git a/conf/distro/unslung-packages.conf b/conf/distro/unslung-packages.conf index 1f41b1e846..3e9059fae8 100644 --- a/conf/distro/unslung-packages.conf +++ b/conf/distro/unslung-packages.conf @@ -12,6 +12,7 @@ ${PKGDIR}/packages/findutils/*.bb \ ${PKGDIR}/packages/flex/*.bb \ ${PKGDIR}/packages/freeze/*.bb \ ${PKGDIR}/packages/gcc/*.bb \ +${PKGDIR}/packages/genext2fs/*.bb \ ${PKGDIR}/packages/gettext/*.bb \ ${PKGDIR}/packages/glibc/*.bb \ ${PKGDIR}/packages/gnu-config/*.bb \ diff --git a/conf/distro/unslung.conf b/conf/distro/unslung.conf index 75c251f220..06331707fc 100644 --- a/conf/distro/unslung.conf +++ b/conf/distro/unslung.conf @@ -7,7 +7,7 @@ FEED_URIS += "native##http://ipkg.nslu2-linux.org/feeds/unslung/native" FEED_URIS += "oe##http://ipkg.nslu2-linux.org/feeds/unslung/oe" DISTRO_NAME = "Unslung" -DISTRO_VERSION = "5.5-beta" +DISTRO_VERSION = "5.6-alpha" DISTRO_TYPE = "beta" # pull in the frozen list of bbfiles @@ -19,7 +19,7 @@ TARGET_OS = "linux" FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2" -INHERIT += " package_ipk nslu2_flashimg" +INHERIT += " package_ipk nslu2-jffs2-image" IMAGE_FSTYPE = "jffs2" UNSLUNG_DEVICE_TABLE = "${@bb.which(bb.data.getVar('BBPATH', d, 1), 'files/device_table-unslung.txt')}" @@ -43,3 +43,9 @@ PREFERRED_VERSION_glibc ?= "2.2.5" PREFERRED_VERSION_glibc-initial ?= "2.2.5" PREFERRED_VERSION_binutils ?= "2.15.94.0.1" PREFERRED_VERSION_binutils-cross ?= "2.15.94.0.1" + +PREFERRED_VERSION_unslung-kernel ?= "2.4.22.l2.3r29" +PREFERRED_VERSION_unslung-rootfs ?= "2.3r29" +PREFERRED_VERSION_nslu2-linksys-firmware ?= "2.3r29" +PREFERRED_VERSION_nslu2-linksys-libs ?= "2.3r29" +PREFERRED_VERSION_nslu2-linksys-ramdisk ?= "2.3r29" diff --git a/conf/machine/nslu2.conf b/conf/machine/nslu2.conf index 3a9a9d9730..1616299ae9 100644 --- a/conf/machine/nslu2.conf +++ b/conf/machine/nslu2.conf @@ -120,11 +120,6 @@ NSLU2_PACKAGE_ARCH = "${@['thumbv5tb', 'armv5teb'][bb.data.getVar('ARM_INSTRUCTI #------------------------------------------------------------------------------- # Miscellany #------------------------------------------------------------------------------- -# JBowler(20050811): I don't think any of the following are required (now). -PREFERRED_PROVIDER_xserver ?= "xserver-kdrive" -IMAGE_ROOTFS_SIZE_ext2 = "10240" -IMAGE_ROOTFS_SIZE_ext2.gz = "10240" - SERIAL_CONSOLE = "115200 ttyS0" KERNEL_CONSOLE = "ttyS0,115200n8" USE_VT = "0" diff --git a/files/device_table-unslung.txt b/files/device_table-unslung.txt index 1639acadaf..7fdd4df68b 100644 --- a/files/device_table-unslung.txt +++ b/files/device_table-unslung.txt @@ -30,15 +30,15 @@ /dev/rtc c 644 0 0 10 135 - - - /dev/scd b 664 0 0 11 0 0 1 4 /dev/sda b 664 0 0 8 0 - - - -/dev/sda b 664 0 0 8 1 1 1 5 +/dev/sda b 664 0 0 8 1 1 1 16 /dev/sdb b 664 0 0 8 16 - - - -/dev/sdb b 664 0 0 8 17 1 1 5 +/dev/sdb b 664 0 0 8 17 1 1 16 /dev/sdc b 664 0 0 8 32 - - - -/dev/sdc b 664 0 0 8 33 1 1 5 +/dev/sdc b 664 0 0 8 33 1 1 16 /dev/sdd b 664 0 0 8 48 - - - -/dev/sdd b 664 0 0 8 49 1 1 5 +/dev/sdd b 664 0 0 8 49 1 1 16 /dev/sde b 664 0 0 8 64 - - - -/dev/sde b 664 0 0 8 65 1 1 5 +/dev/sde b 664 0 0 8 65 1 1 16 /dev/st c 664 0 0 9 0 0 1 4 /dev/tty c 666 0 0 5 0 - - - /dev/tty c 644 0 0 4 0 0 1 10 diff --git a/packages/linux/unslung-kernel_2.4.22.l2.3r63.bb b/packages/linux/unslung-kernel_2.4.22.l2.3r63.bb new file mode 100644 index 0000000000..858af69eb0 --- /dev/null +++ b/packages/linux/unslung-kernel_2.4.22.l2.3r63.bb @@ -0,0 +1,46 @@ +DEFAULT_PREFERENCE_unslung = "-1" + +SECTION = "kernel" +DESCRIPTION = "Unslung kernel for the Linksys NSLU2 device" +LICENSE = "GPL" +MAINTAINER = "NSLU2 Linux <www.nlsu2-linux.org>" +PR = "r0" + +S = "${WORKDIR}/linux-2.4.22" + +KERNEL_IMAGETYPE = "zImage" +KERNEL_SUFFIX = "unslung" + +DEPENDS += "nslu2-linksys-firmware" + +python () { + # Don't build unslung kernel unless we're targeting an nslu2 + mach = bb.data.getVar("MACHINE", d, 1) + dist = bb.data.getVar("DISTRO", d, 1) + if mach != 'nslu2' or dist != 'unslung': + raise bb.parse.SkipPackage("Unslung only builds for the Linksys NSLU2") +} + + +do_deploy() { + cp ${STAGING_LIBDIR}/nslu2-binaries/vmlinuz vmlinuz + dd if=vmlinuz bs=1 count=11732 > vmlinuh + dd if=vmlinuz bs=1 skip=11732 count=975109 | gzip -dc > vmlinux + dd if=vmlinuz bs=1 skip=986841 > vmlinut + cat vmlinux | sed \ + -e 's/ram0/slug/' \ + -e 's/\x01\x31\x2c\xff/\x00\x1e\x84\x7f/' \ + -e 's/flash_sda\x00/hdd_sda\x00\x00\x00/' \ + -e 's/flash_\x00/hdd_\x00\x00\x00/' \ + -e 's/flash_sd%c\x00/hdd_sd%c\x00\x00\x00/' \ + | gzip -9 -c > vmlinux.gz +# cat vmlinuh vmlinux.gz vmlinut > vmlinuz + dd if=/dev/zero of=padding bs=1 count=9 + cat vmlinuh vmlinux.gz padding vmlinut > vmlinuz + install -d ${DEPLOY_DIR}/images + install -m 0644 vmlinuz ${DEPLOY_DIR}/images/${KERNEL_IMAGETYPE}-${KERNEL_SUFFIX} +} + +do_deploy[dirs] = "${S}" + +addtask deploy before do_build after do_compile diff --git a/packages/nslu2-binary-only/nslu2-linksys-firmware_2.3r63.bb b/packages/nslu2-binary-only/nslu2-linksys-firmware_2.3r63.bb new file mode 100644 index 0000000000..c90bcd6fe3 --- /dev/null +++ b/packages/nslu2-binary-only/nslu2-linksys-firmware_2.3r63.bb @@ -0,0 +1,27 @@ +DEFAULT_PREFERENCE_unslung = "-1" + +SECTION = "base" +DEPENDS = "slugimage-native unzip-native" +PACKAGES = "" +LICENSE = "GPL" +INHIBIT_DEFAULT_DEPS = "1" +PR = "r0" + +SRC_URI = "http://www.you-need-to-get-this-one-yourself.com/NSLU2_V23R63.zip" +S = "${WORKDIR}" + +python () { + # Don't build unless we're targeting an nslu2 + if bb.data.getVar("MACHINE", d, 1) != "nslu2": + raise bb.parse.SkipPackage("NSLU2 firmware only builds for the Linksys NSLU2") +} + +do_compile () { + slugimage -u -i NSLU2_V23R63.bin -k vmlinuz -b RedBoot -s SysConf -r ramdisk.ext2.gz -t Trailer + install -d ${STAGING_LIBDIR}/nslu2-binaries + install -m 0755 RedBoot ${STAGING_LIBDIR}/nslu2-binaries/ + install -m 0755 SysConf ${STAGING_LIBDIR}/nslu2-binaries/ + install -m 0755 vmlinuz ${STAGING_LIBDIR}/nslu2-binaries/ + install -m 0755 ramdisk.ext2.gz ${STAGING_LIBDIR}/nslu2-binaries/ + install -m 0755 Trailer ${STAGING_LIBDIR}/nslu2-binaries/ +} diff --git a/packages/nslu2-binary-only/nslu2-linksys-libs_2.3r63.bb b/packages/nslu2-binary-only/nslu2-linksys-libs_2.3r63.bb new file mode 100644 index 0000000000..299286c2ac --- /dev/null +++ b/packages/nslu2-binary-only/nslu2-linksys-libs_2.3r63.bb @@ -0,0 +1,25 @@ +DEFAULT_PREFERENCE_unslung = "-1" + +DESCRIPTION = "Linksys NSLU2 Stock Firmware Libraries." +PACKAGE_ARCH = "nslu2" +SECTION = "base" +PRIORITY = "required" +PR = "r0" + +SRC_URI = "http://www.you-need-to-create-this-yourself.com/nslu2-linksys-ramdisk-2.3r63.tar.bz2" + +S = "${WORKDIR}/nslu2-linksys-ramdisk-2.3r63" + +do_install () { + ( cd ${S} ; rm -rf bin dev etc home mnt proc sbin share tmp upload usr var ) + ( cd ${S} ; tar cvf - . ) | ( cd ${D} ; tar xvf - ) +} + +PACKAGES = "${PN}" +FILES_${PN} = "/lib" + +python () { + # Don't build unless we're targeting an nslu2 + if bb.data.getVar("MACHINE", d, 1) != "nslu2": + raise bb.parse.SkipPackage("NSLU2 stock firmware libraries only builds for the Linksys NSLU2") +} diff --git a/packages/nslu2-binary-only/nslu2-linksys-ramdisk_2.3r63.bb b/packages/nslu2-binary-only/nslu2-linksys-ramdisk_2.3r63.bb new file mode 100644 index 0000000000..af5a2dabbd --- /dev/null +++ b/packages/nslu2-binary-only/nslu2-linksys-ramdisk_2.3r63.bb @@ -0,0 +1,22 @@ +DEFAULT_PREFERENCE_unslung = "-1" + +DESCRIPTION = "Linksys NSLU2 Stock Firmware Ramdisk." +PACKAGE_ARCH = "nslu2" +SECTION = "base" +PRIORITY = "required" +PR = "r0" + +SRC_URI = "http://www.you-need-to-create-this-yourself.com/nslu2-linksys-ramdisk-2.3r63.tar.bz2" + +do_install () { + ( cd ${S} ; tar cvf - . ) | ( cd ${D} ; tar xvf - ) +} + +PACKAGES = "${PN}" +FILES_${PN} = "/" + +python () { + # Don't build unless we're targeting an nslu2 + if bb.data.getVar("MACHINE", d, 1) != "nslu2": + raise bb.parse.SkipPackage("NSLU2 ramdisk only builds for the Linksys NSLU2") +} diff --git a/packages/nslu2-binary-only/unslung-rootfs-2.3r63/.mtn2git_empty b/packages/nslu2-binary-only/unslung-rootfs-2.3r63/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/nslu2-binary-only/unslung-rootfs-2.3r63/.mtn2git_empty diff --git a/packages/nslu2-binary-only/unslung-rootfs-2.3r63/NOTES b/packages/nslu2-binary-only/unslung-rootfs-2.3r63/NOTES new file mode 100644 index 0000000000..4e09b459c2 --- /dev/null +++ b/packages/nslu2-binary-only/unslung-rootfs-2.3r63/NOTES @@ -0,0 +1,453 @@ +Unslung-6.x Family Release Notes + +Unslung is a replacement firmware image for the Linksys NSLU2 which is designed +to allow you to make changes to the root filesystem (including the installation +of downloadable packages) while still providing all the standard product +functionality. + +If, at any time, you have any questions concerning the installation or +operation of Unslung firmware, your first port of call should be the +NSLU2-Linux wiki at: + + http://www.nslu2-linux.org + +Specifically, check the HowTos and the Frequently Asked Questions before +posting to the mailing list or asking a question in the IRC channel +[#nslu2-general @ irc.freenode.net]. + +OK! Now that that's out of the way... + +This file is provided to give general information and usage notes for the +Unslung 6.x firmware. If you are looking for installation instructions, please +stop now and go to the README file. Follow the README instructions WORD for +WORD to keep from turning your NSLU2 into a brick. The information contained +in this file will make more sense if you have already "unslung" your NSLU2. + +-------------------------------------------------------------------------------- + +These "Notes" are divided into four sections: + + 1 - GENERAL INFORMATION + 2 - IPKG PACKAGES + 3 - DIVERSION SCRIPTS + 4 - CHANGELOG + + +GENERAL INFORMATION + +As stated above, Unslung firmware is a replacement firmware image for the +Linksys NSLU2. The Unslung firmware is intended to be used for loading new +packages (giving enhanced or additional functionality) with minimal changes +to the standard user interface and firmware. The differences in the Unslung 6.x +firmware from the standard Linksys 2.3R63 firmware can be found at: + + http://www.nslu2-linux.org/wiki/Unslung/UnslungFeatures + +For more information about the Unslung firmware, including details on how to +build it from source code yourself, look at: + + http://www.nslu2-linux.org/wiki/Unslung + +There are several assumptions made in this Notes. One, you've successfully +unslung your NSLU2, and can verify the basic Linksys functionality (samba +users, groups, and shares setup with the Linksys interface). Two, that you can +get telnet or ssh shell access to your NSLU2 from any computer on the same +network as the NSLU2. Three, that you have read and understand the NSLU2-linux +community rules at: + + http://www.nslu2-linux.org/wiki/Main/HomePage + +If you understand the third assumption, then you also understand that there is +an emphasis on using and developing the NSLU2-Linux wiki. Clarifications and +further documentation is always welcomed on the wiki. + +If you are experienced with the Linux operating system, then you can make +changes directly to the root filesystem - changes which are persistent across +reboot. If you want to get involved, then check the NSLU2-linux wiki at: + + http://www.nslu2-linux.org/wiki/Main/HowToGetInvolved + + +IPKG PACKAGES + +Packages require you to be running Unslung firmware (as you may have already +guessed!) In general, ipkg packages are commonly available software packages +that have been ported to the NSLU2 - giving enhanced or additional +functionality. If you run into problems or have specific question with a +certain package, you should look on the Internet for the general documentation +about the package first. If your problem is specific to the NSLU2 port, then +check for further documentation for the corresponding package on the +NSLU2-Linux wiki at: + + http://www.nslu2-linux.org/wiki/Unslung/Packages + +When you "unsling" an external disk (check the README for instructions), +downloaded packages will be installed onto that external disk. The number of +packages that you can install is only limited by the size of the "data" +partition on the external disk. Note that you *must* *not* install any +packages before you have booted with an external "Unslung" disk. To do so will +almost certainly cause your internal jffs2 flash memory become full, and cause +you to have to reflash your NSLU2. + +Package Installation Details + + 1) Check for network connectivity to the package repository from the NSLU2 + first: "ping ipkg.nslu2-linux.org" + + - If this does not work, then please check the NSLU2 DNS settings in + the web interface (under "Administration", "LAN"). + + 3) Update the list of available packages from new feeds: "ipkg update" + + 4) Check the list of available packages for ones that you want on your + NSLU2: "ipkg list" + + 5) Install the packages: "ipkg install <package-name>" + +Most packages put their startup scripts into /opt/etc/init.d - which the +Unslung firmware automatically runs at boot. Some other packages are run from +the cron or xinetd daemons. + +You can also check the ipkg command arguments simply by typing "ipkg" at the +prompt. + + +DIVERSION SCRIPTS + +Diversion scripts are used to start packages, set variables or function +definitions at the time of the NSLU2 boot. The diversion mechanism allows you +to add to, or even replace the Linksys script functionality. They "divert" the +normal boot scripts to perform the needed action(s) and then can either "return +1" to continue normal factory script progress or "return 0" to abort the +diverted factory script. The diversion of startup scripts is done at the +lowest granularity, so you can just divert the rc.xinetd script and leave all +others unchanged. You are advised to use diversion scripts rather than editing +system files directly (as this will allow you to upgrade the Unslung firmware +in the future without having to make all of your changes again). + + - Note: If you do need to edit the system files directly, you can use the + "resling" script to save and load your modified system files. See + the NSLU2-Linux wiki at: + + http://www.nslu2-linux.org/wiki/Unslung/ReSling + +Diversion scripts go in the /unslung directory (you may have to create that +directory first). Note that after you have unslung to an external disk, then +the diversion scripts will be stored on that external disk (along with the rest +of the root filesystem). This means that recovering from an incorrect +diversion script is as simple as powering off, unplugging the disk, powering +on, hot-plugging the disk (note that the diversion scripts will only run if the +disk is attached at boot), and fix or remove the diversion script. + +You may divert as many or as few scripts as you like. Simply add the name of +the standard rc script into the appropriate /unslung directory and it will be +run. + +For example, I have a script /unslung/rc.local: + +#! /bin/sh +/opt/bin/do_foo +return 1 + +That will run at the beginning of the normal /etc/rc.d/rc.local, and then +the rest of the factory rc.local will be executed. If I do NOT want to run +the factory rc.local, my script would be: + +#!/bin/sh +/opt/bin/do_foo +return 0 + +That is, if the diversion script returns with something other than 0, it will +run the rest of the factory script. + +Note that any variable definitions or function declarations are allowed to +happen before the diversion script is called. This allows you to use the +variables and functions defined by the factory script. + +Also not that telnet is not enabled by default - there is an openssh package +and a dropbear package that either can replace telnet access with secure shell +access. + + - Dropbear package details on NSLU2-Linux wiki at: + + http://www.nslu2-linux.org/wiki/HowTo/UseDropBearForRemoteAccess + +The rationale behind not enabling telnet by default is ensure that an Unslung +NSLU2 has the same network footprint as a stock NSLU2 with Linksys firmware. +That said, if you want to enable telnet on boot, then install the xinetd +package (which enables telnet by default). + + +CHANGELOG + +1.11: + +First public release + +1.12: + +Added a symlink to slingbox for gzip. Added flashfs (as simple utility for +preserving user files across hard disk formats during beta testing). + +1.13: + +Added LD_LIBRARY_PATH to /etc/profile (only works for telnet and ssh access, +not for serial or diversion scripts). + +1.14: + +Added Unslung Doc link to the User Guide page. + +2.3: + +Moved development to OpenEmbedded. + +2.4: + +Updated to the latest ipk binary instead of the simple script. + +2.5: + +Added the real wget (instead of using the busybox version). This is so we can +support .netrc files for commercial packages. + +2.6: + +Fixed the unsling script so it removes conflicting files on an upgrade. + +2.7: + +Began development of the -able variant. + +2.8: + +Added the patch for genesys enclosures. + +2.9: + +Reorganized the various variants into a more consistent scheme. + +2.10: + +Added the ext3flash-on-disk1 functionality. + +2.11: + +Added the README to /opt/doc. + +2.12: + +First public release of 2.x firmware. + +3.1: + +Added jffs2 functionality. + +3.2: + +Incorporated switchbox functionality. + +3.3: + +Added ramdisks for /dev and /var to reduce internal flash writes. + +3.4: + +Replaced flashfs script with new resling script. + +3.5: + +Added code to reinitialize /etc/mtab on boot. + +3.6: + +Mounted /dev and /var jffs2 directories as /dev.state and /var.state so that +they can be used for persistent changes which are used to populate the ramdisks +on the next boot. + +3.7: + +Added "Pluggable Personalities" - now runs diversion scripts from both the +internal jffs2 area and also from an external drive attached at boot time. + +3.8: + +Enabled mounting of external drives earlier in the boot process, so that the +rc, rc.sysinit, and rc.1 scripts can be diverted by external diversion scripts +on an attached drive. + +3.9: + +Moved a number of -able kernel features (such as USB devfs support) into +-standard. + +3.10: + +Added support for unslung-start and unslung-stop diversion scripts, and package +shutdown scripts (K??foo). + +3.11: + +Added NFS kernel support (both client and server, and both V2 and V3 +protocols). + +3.12: + +Added basic maintenance mode support. If /.ramdisk exists in the jffs2 +filesystem, then the jffs2 filesystem is copied into a ramdisk on boot, and run +from there. This allows for updating firmware using the web interface. + +3.13: + +Added recovery mode support. If a viable root filesystem cannot be found, then +switchbox drops into a basic recovery shell, with a telnet daemon running as +192.168.1.77 with no password. This behavior can also be forced with a +/.recovery file in the jffs2 filesystem. + +3.14: + +Added web control of maintenance mode. You have to enable maintenance mode and +reboot before the firmware upgrade page allows you to enter a filename for the +new firmware. + +3.15: + +Added confirmation dialog boxes to the maintenance mode web control. + +3.16: + +First public release of 3.x firmware. + +3.17: + +Fixed syslog issue. Added FP patches. + +3.18: + +Fixed a number of minor issues regarding file permissions. +Added support for unslinging to the data partition. + +4.1: + +Split from 3.x stream to allow parallel development. + +4.2: + +New switchbox implementation with NFS and external USB disk root filesystem support. + +4.3: + +Enabled devfs. + +4.4: + +Changed slingbox program locations to match those of OpenSlug so that +we can use the same switchbox for both. + +4.5: + +Enabled RAID support modules and USB camera support modules. + +4.6: + +Merged unslung-standard and unslung-able, and created the oe feed for +downloadable kernel modules. Updated the unsling script to support +external rootfs. + +4.7: + +Enabled lots of traffic shaping modules. Enabled support for external +disks on sda1, sda2, sdb1 and sdb2. + +4.8: + +Made Unslung *not* create ramdisk for /var and /dev when you've +unslung to an external disk. Fixed nsswitch.conf. Updated the feed +locations. Added /dev/st devices for tape drive support. + +4.9: + +Updated the unslung script to give feedback on the rootfs transfer, +and to preserve an existing upkg database on the target disk. Added +more device nodes to support the new downloadable kernel modules. + +4.10: + +Made Unslung wait until quota checking is complete before running +package startup scripts. Simplified unsling to support disk1 and +disk2 (data partitions) only. + +4.11: + +Removed /tmp ramdisk if unslung to an external disk. Now clears /tmp +and /mnt/backup on each boot. + +4.12: + +Updated to the latest ipkg version. + +4.13: + +Added /dev/sdd and /dev/sde device nodes. +Added support for alternate rootfs under expert user control. + +4.14: + +Added audio support to the kernel. Increased the USB disk startup +wait to 10 seconds, and added the ability to divert rc.bootbin to the +startup scripts. + +4.15: + +Added /dev/dsp and updated the README and NOTES files. + +4.16: + +Added the /sbin/slingover script for migrating packages from the 3.x locations. + +4.17: + +Developer-only release booting straight from jffs2 instead of using switchbox. + +4.18: + +A number of /linuxrc fixes. Removed support for alternate rootfs under expert +user control (expert users can now just edit the /linuxrc in jffs2 directly). + +4.19: + +Removed all trace of switchbox from the firmware. This saves 128Kb of flash, +and about 1MB of RAM. + +4.20: + +First public release of 4.x firmware. + +5.1: + +Upgraded to Linksys firmware V2.3R29, but kept telnetd. + +5.2: + +Removed the ipkg link, and made unsling put it back on an external disk. + +5.3: + +Replaced maintenance mode with code to allow entry into RedBoot Upgrade Mode. + +5.4: + +Removed all maintenance mode support, and also removed support for rootfs on +jffs2 but packages on external disk (it's either all or nothing). +Removed unused /mnt/sda1, /mnt/sda2, /mnt/sdb1, and /mnt/sdb2. +Disabled the download process (superceded by upgrade mode). +Disabled the generation of the "ourtelnetrescue" user (too insecure). +Added disk auto-wait countdown to /linuxrc (courtesy of glc). + +5.5: + +First public release of 5.x firmware. + +6.0: + +First alpha release of 6.x Unslung firmware, based on Linksys V2.3R63 firmware. diff --git a/packages/nslu2-binary-only/unslung-rootfs-2.3r63/README b/packages/nslu2-binary-only/unslung-rootfs-2.3r63/README new file mode 100644 index 0000000000..f4ffe4d29b --- /dev/null +++ b/packages/nslu2-binary-only/unslung-rootfs-2.3r63/README @@ -0,0 +1,284 @@ +Unslung-6.x Family Release README INSTALLATION + +You must follow the steps in this README *exactly*. Do not skip any steps, and +do not skip ahead thinking you know what you are doing and don't need to follow +instructions step by step. + +If at any time you have any questions concerning the installation or operation +of Unslung firmware, your first port of call should be the NSLU2-Linux wiki at: + + http://www.nslu2-linux.org + +If you are looking for further Unslung notes - including ipkg usage, diversion +script details, or ChangeLog information, please consult the associated NOTES +file. + +------------------------------------------------------------------------------- + +There are three parts to completing the installation of the Unslung firmware: + + 1 - PRE-INSTALLATION CONSIDERATIONS + 2 - FIRMWARE INSTALLATION DETAILS + 3 - UNSLINGING DETAILS + + +PRE-INSTALLATION CONSIDERATIONS |
