summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRod Whitby <rod@whitby.id.au>2005-08-11 10:21:07 +0000
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>2005-08-11 10:21:07 +0000
commitfae33cac57d8a8cea05736cc47a9c2e19d679503 (patch)
tree56b3e9ce1104dafd167b1e013c423341b404d146
parent37f7ad3401acb5edf6633dd99bc56db96d404d8d (diff)
parent0654a007425b7b7b4d7646bd5cc2edeb1375d622 (diff)
merge of 878c33f63dddf26432371b39e5ac632427adb9a9
and f27802cb19bc2b8066af4e34ef08a08acd4f6203
-rw-r--r--classes/nslu2-jffs2-image.bbclass (renamed from classes/nslu2_flashimg.bbclass)0
-rw-r--r--classes/nslu2-ramdisk-image.bbclass18
-rw-r--r--conf/distro/openslug.conf2
-rw-r--r--conf/distro/ucslugc.conf2
-rw-r--r--conf/distro/unslung-binary-kernel.conf52
-rw-r--r--conf/distro/unslung-packages.conf1
-rw-r--r--conf/distro/unslung.conf10
-rw-r--r--conf/machine/nslu2.conf5
-rw-r--r--files/device_table-unslung.txt10
-rw-r--r--packages/linux/unslung-kernel_2.4.22.l2.3r63.bb46
-rw-r--r--packages/nslu2-binary-only/nslu2-linksys-firmware_2.3r63.bb27
-rw-r--r--packages/nslu2-binary-only/nslu2-linksys-libs_2.3r63.bb25
-rw-r--r--packages/nslu2-binary-only/nslu2-linksys-ramdisk_2.3r63.bb22
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs-2.3r63/.mtn2git_empty0
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs-2.3r63/NOTES453
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs-2.3r63/README284
-rwxr-xr-xpackages/nslu2-binary-only/unslung-rootfs-2.3r63/linuxrc70
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs-2.3r63/rc.modules-diversion.patch8
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs-2.3r63/security-fixes.patch11
-rwxr-xr-xpackages/nslu2-binary-only/unslung-rootfs-2.3r63/unsling73
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs-2.3r63/upgrade.htm129
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs-2.3r63/wait-for-quotacheck.patch10
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs_2.3r63.bb106
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