aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--classes/kernel.bbclass18
-rw-r--r--conf/distro/openslug.conf45
-rw-r--r--conf/distro/unslung.conf2
-rw-r--r--conf/machine/nslu2.conf12
-rw-r--r--files/device_table-unslung.txt10
-rw-r--r--packages/busybox/slingbox-1.00/defconfig8
-rw-r--r--packages/busybox/switchbox-1.00/linuxrc53
-rw-r--r--packages/busybox/switchbox_1.00.bb2
-rw-r--r--packages/db/db_4.3.27.bb (renamed from packages/nslu2-binary-only/unslung-rootfs-2.3r25/tmp-permissions.patch)0
-rw-r--r--packages/linux/openslug-kernel-2.6.11.2/defconfig156
-rw-r--r--packages/linux/openslug-kernel_2.6.11.2.bb2
-rw-r--r--packages/linux/unslung-kernel-2.3r25/defconfig30
-rw-r--r--packages/linux/unslung-kernel-2.3r25/nfs-blocksize.patch (renamed from packages/pwc/files/Makefile)0
-rw-r--r--packages/linux/unslung-kernel_2.3r25.bb3
-rw-r--r--packages/meta/openslug-image.bb7
-rw-r--r--packages/meta/openslug-packages.bb71
-rw-r--r--packages/module-init-tools/files/depmod-byteswap.patch0
-rw-r--r--packages/module-init-tools/module-init-tools-cross_3.1.bb24
-rw-r--r--packages/nis/files/libdl.patch0
-rw-r--r--packages/nis/files/no-selinux.patch0
-rw-r--r--packages/nis/nis-all.bb0
-rw-r--r--packages/nis/nis.inc0
-rw-r--r--packages/nis/pwdutils_2.6.bb0
-rw-r--r--packages/nis/yp-tools_2.9.bb0
-rw-r--r--packages/nis/ypbind-mt_1.18.bb0
-rw-r--r--packages/nis/ypserv_2.15.bb0
-rw-r--r--packages/nslu2-binary-only/nslu2-switchbox-firmware.bb4
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs-2.3r25/NOTES409
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs-2.3r25/README124
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs-2.3r25/rc-diversion.patch2
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs-2.3r25/rc.bootbin0
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs-2.3r25/slingover0
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs-2.3r25/tmp-handling.patch0
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs-2.3r25/unsling46
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs-2.3r25/wait-for-quotacheck.patch0
-rw-r--r--packages/nslu2-binary-only/unslung-rootfs_2.3r25.bb20
-rw-r--r--packages/openldap/files/install-strip.patch0
-rw-r--r--packages/openldap/files/openldap-autoconf.patch0
-rw-r--r--packages/openldap/files/ucgendat.patch0
-rw-r--r--packages/openldap/openldap_2.2.24.bb0
-rw-r--r--packages/openslug-init/openslug-init-0.10/sysconfsetup3
-rw-r--r--packages/openslug-init/openslug-init-0.10/turnup0
-rw-r--r--packages/openslug-init/openslug-init_0.10.bb17
-rw-r--r--packages/pam/files/libpam-config.patch0
-rw-r--r--packages/pam/files/libpam-make.patch0
-rw-r--r--packages/pam/libpam_0.79.bb0
-rw-r--r--packages/portmap/portmap-unslung_5-9.bb0
-rw-r--r--packages/pwc/pwc-10.0.6a/Makefile0
-rw-r--r--packages/pwc/pwc-10.0.6a/endian-fix.patch0
-rw-r--r--packages/pwc/pwc_10.0.6a.bb3
-rw-r--r--packages/uclibc/files/armeb-kernel-stat.h.patch0
-rw-r--r--packages/uclibc/uclibc_0.9.27.bb3
-rw-r--r--packages/udev/files/init178
53 files changed, 1027 insertions, 225 deletions
diff --git a/classes/kernel.bbclass b/classes/kernel.bbclass
index e582bb9898..c80aa5f6a7 100644
--- a/classes/kernel.bbclass
+++ b/classes/kernel.bbclass
@@ -220,11 +220,11 @@ python populate_packages_prepend () {
f = os.popen(cmd, 'r')
deps = {}
- pattern0 = "^(.*\.o):..*$"
- pattern1 = "^(.*\.o):\t(.*\.o)$"
- pattern2 = "^(.*\.o):\t(.*\.o) \\\$"
- pattern3 = "^\t(.*\.o) \\\$"
- pattern4 = "^\t(.*\.o)$"
+ pattern0 = "^(.*\.k?o):..*$"
+ pattern1 = "^(.*\.k?o):\s*(.*\.k?o)\s*$"
+ pattern2 = "^(.*\.k?o):\s*(.*\.k?o)\s*\\\$"
+ pattern3 = "^\t(.*\.k?o)\s*\\\$"
+ pattern4 = "^\t(.*\.k?o)\s*$"
line = f.readline()
while line:
@@ -233,19 +233,19 @@ python populate_packages_prepend () {
continue
m1 = re.match(pattern1, line)
if m1:
- deps[m1.group(1)] = [m1.group(2)]
+ deps[m1.group(1)] = m1.group(2).split()
else:
m2 = re.match(pattern2, line)
if m2:
- deps[m2.group(1)] = [m2.group(2)]
+ deps[m2.group(1)] = m2.group(2).split()
line = f.readline()
m3 = re.match(pattern3, line)
while m3:
- deps[m2.group(1)].append(m3.group(1))
+ deps[m2.group(1)].extend(m3.group(1).split())
line = f.readline()
m3 = re.match(pattern3, line)
m4 = re.match(pattern4, line)
- deps[m2.group(1)].append(m4.group(1))
+ deps[m2.group(1)].extend(m4.group(1).split())
line = f.readline()
f.close()
return deps
diff --git a/conf/distro/openslug.conf b/conf/distro/openslug.conf
index 54a464204d..274fdec3c9 100644
--- a/conf/distro/openslug.conf
+++ b/conf/distro/openslug.conf
@@ -3,11 +3,13 @@
#@DESCRIPTION: OpenSlug Linux Distribution for the NSLU2
DISTRO_NAME = "OpenSlug"
-DISTRO_VERSION = "1.7-beta"
+DISTRO_VERSION = "1.8-beta"
DISTRO_TYPE ?= "beta"
-TARGET_FPU = "soft"
-TARGET_OS = "linux"
+TARGET_FPU_local ?= "soft"
+TARGET_FPU := "${TARGET_FPU_local}"
+TARGET_OS_local ?= "linux"
+TARGET_OS := "${TARGET_OS_local}"
USE_NLS ?= "no"
USE_NLS_glib-2.0 = "yes"
@@ -26,11 +28,43 @@ kernel-module-pegasus kernel-module-p8022 kernel-module-kaweth \
kernel-module-usbserial \
kernel-module-pl2303 kernel-module-ftdi-sio"
-OPENSLUG_EXTRA_INSTALL ?= "${OPENSLUG_EXTRA_RDEPENDS}"
+# Filesystem selection: set in local.conf to override. Adding entries
+# here adds the module to the image. The module must be built as part
+# of openslug-kernel (i.e. it must be specified as a module in the
+# defconfig file). The NLS support charset modules must be given
+# explicitly and must match the codepage/iocharset and NLS handling
+# for the file systems which require them. The installed lanugage
+# set is minimal but sufficient for any file system (since it uses
+# utf8). See http://www.nslu2-linux.orgwiki/HowTo/MountFATFileSystems
+# for more information on the language behaviour of the DOS file
+# systems.
+#
+# NOTE: removing kernel-module-nfs from this list will prevent NFS
+# boot (however you can do a simple flash file system boot - no
+# attached disk - and install the nfs modules from ssh.)
+OPENSLUG_EXTRA_FILESYSTEMS ?= "\
+kernel-module-nfs \
+kernel-module-vfat \
+kernel-module-ntfs \
+kernel-module-isofs \
+kernel-module-udf \
+kernel-module-nls-cp437 \
+kernel-module-nls-utf8 \
+"
+
+# This documents other file systems which are built but not installed
+# by default in the flash image.
+#
+# kernel-module-msdos - mounts a FAT file system without long file names
+# (use kernel-module-vfat, it shows the long names
+# if present.)
+# kernel-module-reiserfs - support for the reiser file system
+
+OPENSLUG_EXTRA_INSTALL ?= "${OPENSLUG_EXTRA_RDEPENDS} ${OPENSLUG_EXTRA_FILESYSTEMS}"
# These lines are for backwards compatibility and will be removed soon.
BOOTSTRAP_EXTRA_DEPENDS += "${OPENSLUG_EXTRA_DEPENDS}"
-BOOTSTRAP_EXTRA_RDEPENDS += "${OPENSLUG_EXTRA_RDEPENDS}"
+BOOTSTRAP_EXTRA_RDEPENDS += "${OPENSLUG_EXTRA_RDEPENDS} ${OPENSLUG_EXTRA_FILESYSTEMS}"
PREFERRED_PROVIDER_virtual/kernel ?= "openslug-kernel"
PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}depmod:module-init-tools-cross"
@@ -38,4 +72,3 @@ PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}depmod:module-init-tools-cross"
PREFERRED_VERSION_openslug-kernel ?= "2.6.11.2"
PREFERRED_VERSION_ixp4xx-csr ?= "1.4"
PREFERRED_VERSION_ixp425-eth ?= "1.1"
-
diff --git a/conf/distro/unslung.conf b/conf/distro/unslung.conf
index f7a765a82a..31e781bb0f 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 = "4.7-alpha"
+DISTRO_VERSION = "4.13-alpha"
DISTRO_TYPE = "beta"
TARGET_FPU = "soft"
diff --git a/conf/machine/nslu2.conf b/conf/machine/nslu2.conf
index 9fe31196f5..f768e7a109 100644
--- a/conf/machine/nslu2.conf
+++ b/conf/machine/nslu2.conf
@@ -15,9 +15,9 @@ SERIAL_CONSOLE = "115200 ttyS0"
KERNEL_CONSOLE = "ttyS0,115200n8"
USE_VT = "0"
-CVSDATE_gnu-config-native ?= "20050221"
-CVSDATE_ipkg-utils-native ?= "20050221"
-CVSDATE_ipkg-link ?= "20050221"
-CVSDATE_uclibc ?= "20050221"
-CVSDATE_genext2fs ?= "20050221"
-CVSDATE_genext2fs-native ?= "20050221" \ No newline at end of file
+CVSDATE_gnu-config-native ?= "20050405"
+CVSDATE_ipkg-utils-native ?= "20050405"
+CVSDATE_ipkg-link ?= "20050405"
+CVSDATE_uclibc ?= "20050405"
+CVSDATE_genext2fs ?= "20050405"
+CVSDATE_genext2fs-native ?= "20050405" \ No newline at end of file
diff --git a/files/device_table-unslung.txt b/files/device_table-unslung.txt
index 256d86d1eb..1639acadaf 100644
--- a/files/device_table-unslung.txt
+++ b/files/device_table-unslung.txt
@@ -8,11 +8,14 @@
/dev d 755 0 0 - - - - -
/dev/console c 622 0 0 5 1 - - -
/dev/cua c 622 0 0 5 64 0 1 2
+/dev/dsp c 644 0 0 14 3 - - -
/dev/flash d 755 0 0 - - - - -
/dev/flash/config c 644 0 0 90 6 - - -
/dev/ipsec c 644 0 0 36 10 - - -
/dev/kmem c 640 0 0 1 2 - - -
/dev/ledman c 644 0 0 126 0 - - -
+/dev/md b 644 0 0 9 0 0 1 4
+/dev/lp c 664 0 0 180 0 0 1 4
/dev/mem c 640 0 0 1 1 - - -
/dev/mtd c 664 0 0 90 0 0 2 8
/dev/mtdblock b 644 0 0 31 0 0 1 8
@@ -25,12 +28,17 @@
/dev/random c 644 0 0 1 8 - - -
/dev/rbuttons c 644 0 0 61 0 - - -
/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/sdb b 664 0 0 8 16 - - -
/dev/sdb b 664 0 0 8 17 1 1 5
/dev/sdc b 664 0 0 8 32 - - -
/dev/sdc b 664 0 0 8 33 1 1 5
+/dev/sdd b 664 0 0 8 48 - - -
+/dev/sdd b 664 0 0 8 49 1 1 5
+/dev/sde b 664 0 0 8 64 - - -
+/dev/sde b 664 0 0 8 65 1 1 5
/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
@@ -38,6 +46,6 @@
/dev/ttyp c 644 0 0 3 0 0 1 10
/dev/ttyUSB c 644 0 0 188 0 0 1 4
/dev/urandom c 644 0 0 1 9 - - -
-/dev/video0 c 644 0 0 81 0 - - -
+/dev/video c 664 0 0 81 0 0 1 4
/dev/zero c 666 0 0 1 5 - - -
/bin/tinylogin f 6755 0 0 - - - - -
diff --git a/packages/busybox/slingbox-1.00/defconfig b/packages/busybox/slingbox-1.00/defconfig
index 192d218d57..463b3a8d19 100644
--- a/packages/busybox/slingbox-1.00/defconfig
+++ b/packages/busybox/slingbox-1.00/defconfig
@@ -75,7 +75,7 @@ CONFIG_UNZIP=y
CONFIG_CHROOT=y
# CONFIG_CMP is not set
# CONFIG_CP is not set
-# CONFIG_CUT is not set
+CONFIG_CUT=y
# CONFIG_DATE is not set
# CONFIG_DD is not set
# CONFIG_DF is not set
@@ -98,7 +98,7 @@ CONFIG_FEATURE_FANCY_HEAD=y
# CONFIG_LS is not set
CONFIG_MD5SUM=y
# CONFIG_MKDIR is not set
-# CONFIG_MKFIFO is not set
+CONFIG_MKFIFO=y
# CONFIG_MKNOD is not set
# CONFIG_MV is not set
# CONFIG_OD is not set
@@ -115,7 +115,7 @@ CONFIG_SORT=y
# CONFIG_SYNC is not set
CONFIG_TAIL=y
CONFIG_FEATURE_FANCY_TAIL=y
-# CONFIG_TEE is not set
+CONFIG_TEE=y
# CONFIG_TEST is not set
# CONFIG_TOUCH is not set
# CONFIG_TR is not set
@@ -153,7 +153,7 @@ CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y
#
# Debian Utilities
#
-# CONFIG_MKTEMP is not set
+CONFIG_MKTEMP=y
# CONFIG_PIPE_PROGRESS is not set
# CONFIG_READLINK is not set
# CONFIG_RUN_PARTS is not set
diff --git a/packages/busybox/switchbox-1.00/linuxrc b/packages/busybox/switchbox-1.00/linuxrc
index 18a4440351..355a05b568 100644
--- a/packages/busybox/switchbox-1.00/linuxrc
+++ b/packages/busybox/switchbox-1.00/linuxrc
@@ -1,18 +1,15 @@
#!/bin/sh
mounted=
-runboot=
prefroot=
+runboot=
/bin/mount -t proc proc /proc
-/bin/echo "0x0100" > /proc/sys/kernel/real-root-dev
sysconflen=`/bin/dd if=/dev/mtd1 bs=4 count=1 2>/dev/null | /usr/bin/hexdump -n 6 -e '"%02d"'`
ipaddr=`/bin/dd if=/dev/mtd1 bs=1 count=$sysconflen skip=4 2>/dev/null | grep ip_addr | sed -e s/ip_addr=//`
netmask=`/bin/dd if=/dev/mtd1 bs=1 count=$sysconflen skip=4 2>/dev/null | grep netmask | sed -e s/netmask=//`
gateway=`/bin/dd if=/dev/mtd1 bs=1 count=$sysconflen skip=4 2>/dev/null | grep gateway | sed -e s/gateway=//`
-nfsrootloc=`/bin/dd if=/dev/mtd1 bs=1 count=$sysconflen skip=4 2>/dev/null | grep nfsroot | sed -e s/nfsroot=// | cut -d, -f 1`
-nfsrootopts=`/bin/dd if=/dev/mtd1 bs=1 count=$sysconflen skip=4 2>/dev/null | grep nfsroot | sed -e s/nfsroot=// | cut -d, -f 2- | sed -e s/\"//g`
device=/dev/`/bin/sed -n -e 's/^\(mtd[0-9]*\): .* "FIS directory"/\1/p' /proc/mtd`
length=`/bin/dd if=$device bs=2 skip=2048 2>/dev/null | /usr/bin/hexdump -n 4 -e '4/1 "%02X"' $device`
@@ -22,6 +19,10 @@ if [ -z "$mounted" ] && /bin/mount -rt jffs2 /dev/mtdblock4 /mnt/jffs2 ; then
/bin/echo "Preferred root device is /dev/ram0 (recovery)"
mounted=
prefroot=
+ elif [ -f /mnt/jffs2/.ramdisk ] ; then
+ /bin/echo "Preferred root device is /dev/ram1 (maintenence)"
+ mounted=/mnt/newroot
+ prefroot=maintenence
elif [ -f /mnt/jffs2/.sda1root ] ; then
/bin/echo "Preferred root device is /dev/sda1 (disk 1)"
mounted=/mnt/newroot
@@ -38,10 +39,10 @@ if [ -z "$mounted" ] && /bin/mount -rt jffs2 /dev/mtdblock4 /mnt/jffs2 ; then
/bin/echo "Preferred root device is /dev/sdb2 (disk 2)"
mounted=/mnt/newroot
prefroot=sdb2
- elif [ -f /mnt/jffs2/.ramdisk ] ; then
- /bin/echo "Preferred root device is /dev/ram1 (maintenence)"
+ elif [ -f /mnt/jffs2/.altroot ] ; then
+ /bin/echo "Preferred root device is a user defined blockdevice"
mounted=/mnt/newroot
- prefroot=maintenence
+ prefroot=altroot
elif [ -f /mnt/jffs2/.nfsroot ] ; then
/bin/echo "Preferred root device is through NFS"
mounted=/mnt/newroot
@@ -76,7 +77,7 @@ if [ -n "$prefroot" ] ; then
/bin/dd if=/dev/zero of=/dev/ram1 bs=1k count=12k 2>/dev/null
/bin/mkdir /lib
/bin/ln -s /mnt/jffs2/lib/* /lib
- /bin/mkdir /usr/bin
+ /bin/mkdir -p /usr/bin
/bin/ln -s /mnt/jffs2/usr/bin/mke2fs /usr/bin
/bin/ln -s /mnt/jffs2/usr/bin/find /usr/bin
/bin/ln -s /mnt/jffs2/usr/bin/cpio /usr/bin
@@ -107,12 +108,26 @@ if [ -n "$prefroot" ] ; then
fi
- if [ $prefroot = "nfsroot" ] ; then
+ if [ $prefroot = "altroot" ] ; then
+ # The altrootloc and altrootopts vars MUST be chosen here.
+ # ie: $altrootopts="-rt ext3" and $altrootloc=/dev/md0
+ # Also modules can be loaded here.
+ # also if you have a really slow starting disk, you can put a large sleep value here.
+ . /mnt/jffs2/.altroot
+
+ /bin/mount $altrootopts $altrootloc /mnt/newroot
+ if [ -L /mnt/newroot/sbin/init -o -x /mnt/newroot/sbin/init -o \
+ -L /mnt/newroot/bin/init -o -x /mnt/newroot/bin/init ] ; then
+ /bin/echo "Root filesystem will be mounted from a user defined rootfs (altroot) ..."
+ else
+ /bin/umount /mnt/newroot
+ /bin/echo "Cant find valid rootfs on user defined rootfs (altroot), using jffs2 ..."
+ mounted=/mnt/jffs2
+ prefroot=jffs2
+ fi
+ fi
- /bin/mkdir -p /lib
- /bin/ln -s /mnt/jffs2/lib/* /lib
- /bin/mkdir -p /sbin
- /bin/ln -s /mnt/jffs2/sbin/portmap /sbin
+ if [ $prefroot = "nfsroot" ] ; then
/sbin/insmod ixp400
/sbin/insmod ixp425_eth
@@ -120,16 +135,15 @@ if [ -n "$prefroot" ] ; then
/sbin/route add default gw $gateway
/sbin/ifconfig lo up 127.0.0.1
- /sbin/portmap
# The nfsrootloc and nfsrootopts vars can be overridden here.
. /mnt/jffs2/.nfsroot
- mount -o $nfsrootopts $nfsrootloc /mnt/newroot
+ /bin/mount $nfsrootopts $nfsrootloc /mnt/newroot
if [ -L /mnt/newroot/sbin/init -o -x /mnt/newroot/sbin/init -o \
-L /mnt/newroot/bin/init -o -x /mnt/newroot/bin/init ] ; then
- /bin/echo "Root filesystem will be mounted from a NFS root ..."
+ /bin/echo "Root filesystem will be mounted from an NFS root ..."
mounted=/mnt/newroot
else
/bin/umount /mnt/newroot
@@ -154,14 +168,11 @@ fi
# Pivot
if [ -n "$mounted" ] ; then
- if [ $prefroot = "nfsroot" ] ; then
- /usr/bin/killall portmap
- fi
if [ $mounted != "/mnt/jffs2" ] ; then
sleep 1
/bin/umount /mnt/jffs2
fi
- umount /proc
+ /bin/umount /proc
cd $mounted
if [ -x ./linuxrc -o -L ./linuxrc ] ; then
runboot=/linuxrc
@@ -173,7 +184,7 @@ if [ -n "$mounted" ] ; then
runboot=/bin/sh
fi
/sbin/pivot_root . initrd
- exec /usr/sbin/chroot . $runboot < dev/console > dev/console 2>&1
+ exec /usr/sbin/chroot . $runboot < /dev/console 1> /dev/console 2> /dev/console
fi
if [ -z "$mounted" ] ; then
diff --git a/packages/busybox/switchbox_1.00.bb b/packages/busybox/switchbox_1.00.bb
index 7ddecf8738..d1ad177ffa 100644
--- a/packages/busybox/switchbox_1.00.bb
+++ b/packages/busybox/switchbox_1.00.bb
@@ -4,7 +4,7 @@ HOMEPAGE = "http://www.busybox.net"
LICENSE = "GPL"
SECTION = "base"
PRIORITY = "required"
-PR = "r10"
+PR = "r11"
SRC_URI = "http://www.busybox.net/downloads/busybox-${PV}.tar.gz \
file://defconfig \
diff --git a/packages/nslu2-binary-only/unslung-rootfs-2.3r25/tmp-permissions.patch b/packages/db/db_4.3.27.bb
index e69de29bb2..e69de29bb2 100644
--- a/packages/nslu2-binary-only/unslung-rootfs-2.3r25/tmp-permissions.patch
+++ b/packages/db/db_4.3.27.bb
diff --git a/packages/linux/openslug-kernel-2.6.11.2/defconfig b/packages/linux/openslug-kernel-2.6.11.2/defconfig
index 07ec66bb9a..85d5f732e9 100644
--- a/packages/linux/openslug-kernel-2.6.11.2/defconfig
+++ b/packages/linux/openslug-kernel-2.6.11.2/defconfig
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
-# Linux kernel version: 2.6.11
-# Tue Mar 8 02:00:48 2005
+# Linux kernel version: 2.6.11.2
+# Fri Apr 8 14:02:10 2005
#
CONFIG_ARM=y
CONFIG_MMU=y
@@ -33,7 +33,7 @@ CONFIG_HOTPLUG=y
CONFIG_KOBJECT_UEVENT=y
# CONFIG_IKCONFIG is not set
CONFIG_EMBEDDED=y
-CONFIG_KALLSYMS=n
+# CONFIG_KALLSYMS is not set
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
@@ -144,7 +144,6 @@ CONFIG_PCI_LEGACY_PROC=y
# At least one math emulation must be selected
#
CONFIG_FPE_NWFPE=y
-# CONFIG_FPE_NWFPE_XP is not set
# CONFIG_FPE_FASTFPE is not set
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_AOUT is not set
@@ -161,7 +160,7 @@ CONFIG_PM=y
# CONFIG_PREEMPT is not set
CONFIG_APM=y
# CONFIG_ARTHUR is not set
-CONFIG_CMDLINE="root=/dev/ram0 initrd=0x01000000,10M mem=32M@0x00000000 console=ttyS0,115200n8"
+CONFIG_CMDLINE="root=/dev/ram0 rw rootfstype=ext2,jffs2 initrd=0x01000000,10M init=/linuxrc mem=32M@0x00000000 console=ttyS0,115200n8"
CONFIG_ALIGNMENT_TRAP=y
#
@@ -685,11 +684,6 @@ CONFIG_SCSI_QLA2XXX=y
#
# Userland interfaces
#
-# CONFIG_INPUT_MOUSEDEV is not set
-# CONFIG_INPUT_JOYDEV is not set
-# CONFIG_INPUT_TSDEV is not set
-# CONFIG_INPUT_EVDEV is not set
-# CONFIG_INPUT_EVBUG is not set
#
# Input I/O drivers
@@ -701,11 +695,6 @@ CONFIG_SOUND_GAMEPORT=y
#
# Input Device Drivers
#
-# CONFIG_INPUT_KEYBOARD is not set
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_INPUT_JOYSTICK is not set
-# CONFIG_INPUT_TOUCHSCREEN is not set
-# CONFIG_INPUT_MISC is not set
#
# Character devices
@@ -902,7 +891,10 @@ CONFIG_EXT3_FS=y
# CONFIG_EXT3_FS_XATTR is not set
CONFIG_JBD=y
# CONFIG_JBD_DEBUG is not set
-# CONFIG_REISERFS_FS is not set
+CONFIG_REISERFS_FS=m
+# CONFIG_REISERFS_CHECK is not set
+# CONFIG_REISERFS_PROC_INFO is not set
+# CONFIG_REISERFS_FS_XATTR is not set
# CONFIG_JFS_FS is not set
#
@@ -919,15 +911,23 @@ CONFIG_DNOTIFY=y
#
# CD-ROM/DVD Filesystems
#
-# CONFIG_ISO9660_FS is not set
-# CONFIG_UDF_FS is not set
+CONFIG_ISO9660_FS=m
+# CONFIG_JOLIET is not set
+# CONFIG_ZISOFS is not set
+CONFIG_UDF_FS=m
+CONFIG_UDF_NLS=y
#
# DOS/FAT/NT Filesystems
#
-# CONFIG_MSDOS_FS is not set
-# CONFIG_VFAT_FS is not set
-# CONFIG_NTFS_FS is not set
+CONFIG_FAT_FS=m
+CONFIG_MSDOS_FS=m
+CONFIG_VFAT_FS=m
+CONFIG_FAT_DEFAULT_CODEPAGE=437
+CONFIG_FAT_DEFAULT_IOCHARSET="utf8"
+CONFIG_NTFS_FS=m
+# CONFIG_NTFS_DEBUG is not set
+# CONFIG_NTFS_RW is not set
#
# Pseudo filesystems
@@ -1014,45 +1014,45 @@ CONFIG_MSDOS_PARTITION=y
# Native Language Support
#
CONFIG_NLS=m
-CONFIG_NLS_DEFAULT="iso8859-1"
-# CONFIG_NLS_CODEPAGE_437 is not set
-# CONFIG_NLS_CODEPAGE_737 is not set
-# CONFIG_NLS_CODEPAGE_775 is not set
-# CONFIG_NLS_CODEPAGE_850 is not set
-# CONFIG_NLS_CODEPAGE_852 is not set
-# CONFIG_NLS_CODEPAGE_855 is not set
-# CONFIG_NLS_CODEPAGE_857 is not set
-# CONFIG_NLS_CODEPAGE_860 is not set
-# CONFIG_NLS_CODEPAGE_861 is not set
-# CONFIG_NLS_CODEPAGE_862 is not set
-# CONFIG_NLS_CODEPAGE_863 is not set
-# CONFIG_NLS_CODEPAGE_864 is not set
-# CONFIG_NLS_CODEPAGE_865 is not set
-# CONFIG_NLS_CODEPAGE_866 is not set
-# CONFIG_NLS_CODEPAGE_869 is not set
-# CONFIG_NLS_CODEPAGE_936 is not set
-# CONFIG_NLS_CODEPAGE_950 is not set
-# CONFIG_NLS_CODEPAGE_932 is not set
-# CONFIG_NLS_CODEPAGE_949 is not set
-# CONFIG_NLS_CODEPAGE_874 is not set
-# CONFIG_NLS_ISO8859_8 is not set
-# CONFIG_NLS_CODEPAGE_1250 is not set
-# CONFIG_NLS_CODEPAGE_1251 is not set
-# CONFIG_NLS_ASCII is not set
-# CONFIG_NLS_ISO8859_1 is not set
-# CONFIG_NLS_ISO8859_2 is not set
-# CONFIG_NLS_ISO8859_3 is not set
-# CONFIG_NLS_ISO8859_4 is not set
-# CONFIG_NLS_ISO8859_5 is not set
-# CONFIG_NLS_ISO8859_6 is not set
-# CONFIG_NLS_ISO8859_7 is not set
-# CONFIG_NLS_ISO8859_9 is not set
-# CONFIG_NLS_ISO8859_13 is not set
-# CONFIG_NLS_ISO8859_14 is not set
-# CONFIG_NLS_ISO8859_15 is not set
-# CONFIG_NLS_KOI8_R is not set
-# CONFIG_NLS_KOI8_U is not set
-# CONFIG_NLS_UTF8 is not set
+CONFIG_NLS_DEFAULT="utf8"
+CONFIG_NLS_CODEPAGE_437=m
+CONFIG_NLS_CODEPAGE_737=m
+CONFIG_NLS_CODEPAGE_775=m
+CONFIG_NLS_CODEPAGE_850=m
+CONFIG_NLS_CODEPAGE_852=m
+CONFIG_NLS_CODEPAGE_855=m
+CONFIG_NLS_CODEPAGE_857=m
+CONFIG_NLS_CODEPAGE_860=m
+CONFIG_NLS_CODEPAGE_861=m
+CONFIG_NLS_CODEPAGE_862=m
+CONFIG_NLS_CODEPAGE_863=m
+CONFIG_NLS_CODEPAGE_864=m
+CONFIG_NLS_CODEPAGE_865=m
+CONFIG_NLS_CODEPAGE_866=m
+CONFIG_NLS_CODEPAGE_869=m
+CONFIG_NLS_CODEPAGE_936=m
+CONFIG_NLS_CODEPAGE_950=m
+CONFIG_NLS_CODEPAGE_932=m
+CONFIG_NLS_CODEPAGE_949=m
+CONFIG_NLS_CODEPAGE_874=m
+CONFIG_NLS_ISO8859_8=m
+CONFIG_NLS_CODEPAGE_1250=m
+CONFIG_NLS_CODEPAGE_1251=m
+CONFIG_NLS_ASCII=m
+CONFIG_NLS_ISO8859_1=m
+CONFIG_NLS_ISO8859_2=m
+CONFIG_NLS_ISO8859_3=m
+CONFIG_NLS_ISO8859_4=m
+CONFIG_NLS_ISO8859_5=m
+CONFIG_NLS_ISO8859_6=m
+CONFIG_NLS_ISO8859_7=m
+CONFIG_NLS_ISO8859_9=m
+CONFIG_NLS_ISO8859_13=m
+CONFIG_NLS_ISO8859_14=m
+CONFIG_NLS_ISO8859_15=m
+CONFIG_NLS_KOI8_R=m
+CONFIG_NLS_KOI8_U=m
+CONFIG_NLS_UTF8=m
#
# Profiling support
@@ -1067,7 +1067,17 @@ CONFIG_NLS_DEFAULT="iso8859-1"
#
# Sound
#
-# CONFIG_SOUND is not set
+CONFIG_SOUND=m
+
+#
+# Advanced Linux Sound Architecture
+#
+# CONFIG_SND is not set
+
+#
+# Open Sound System
+#
+# CONFIG_SOUND_PRIME is not set
#
# Misc devices
@@ -1103,10 +1113,12 @@ CONFIG_USB_UHCI_HCD=m
#
# USB Device Class drivers
#
+CONFIG_USB_AUDIO=m
#
# USB Bluetooth TTY can only be used with disabled Bluetooth subsystem
#
+# CONFIG_USB_MIDI is not set
# CONFIG_USB_ACM is not set
CONFIG_USB_PRINTER=m
@@ -1132,16 +1144,6 @@ CONFIG_USB_STORAGE=y
#
# USB HID Boot Protocol drivers
#
-# CONFIG_USB_KBD is not set
-# CONFIG_USB_MOUSE is not set
-# CONFIG_USB_AIPTEK is not set
-# CONFIG_USB_WACOM is not set
-# CONFIG_USB_KBTAB is not set
-# CONFIG_USB_POWERMATE is not set
-# CONFIG_USB_MTOUCH is not set
-# CONFIG_USB_EGALAX is not set
-# CONFIG_USB_XPAD is not set
-# CONFIG_USB_ATI_REMOTE is not set
#
# USB Imaging devices
@@ -1153,10 +1155,14 @@ CONFIG_USB_STORAGE=y
# USB Multimedia devices
#
# CONFIG_USB_DABUSB is not set
-
-#
-# Video4Linux support is needed for USB Multimedia device support
-#
+# CONFIG_USB_VICAM is not set
+# CONFIG_USB_DSBR is not set
+# CONFIG_USB_IBMCAM is not set
+# CONFIG_USB_KONICAWC is not set
+# CONFIG_USB_OV511 is not set
+# CONFIG_USB_SE401 is not set
+# CONFIG_USB_SN9C102 is not set
+# CONFIG_USB_STV680 is not set
#
# USB Network Adapters
diff --git a/packages/linux/openslug-kernel_2.6.11.2.bb b/packages/linux/openslug-kernel_2.6.11.2.bb
index f61ab24748..ca03d0f8bd 100644
--- a/packages/linux/openslug-kernel_2.6.11.2.bb
+++ b/packages/linux/openslug-kernel_2.6.11.2.bb
@@ -2,7 +2,7 @@ SECTION = "kernel"
DESCRIPTION = "Linux kernel for the Linksys NSLU2 device"
LICENSE = "GPL"
MAINTAINER = "Chris Larson <kergoth@handhelds.org>"
-PR = "r1"
+PR = "r4"
KERNEL_SUFFIX = "openslug"
diff --git a/packages/linux/unslung-kernel-2.3r25/defconfig b/packages/linux/unslung-kernel-2.3r25/defconfig
index b55fe0ab6c..0ad6b8dc4d 100644
--- a/packages/linux/unslung-kernel-2.3r25/defconfig
+++ b/packages/linux/unslung-kernel-2.3r25/defconfig
@@ -1001,7 +1001,31 @@ CONFIG_NLS_DEFAULT="iso8859-1"
#
# Sound
#
-# CONFIG_SOUND is not set
+CONFIG_SOUND=m
+# CONFIG_SOUND_ALI5455 is not set
+# CONFIG_SOUND_BT878 is not set
+# CONFIG_SOUND_CMPCI is not set
+# CONFIG_SOUND_EMU10K1 is not set
+# CONFIG_MIDI_EMU10K1 is not set
+# CONFIG_SOUND_FUSION is not set
+# CONFIG_SOUND_CS4281 is not set
+# CONFIG_SOUND_ES1370 is not set
+# CONFIG_SOUND_ES1371 is not set
+# CONFIG_SOUND_ESSSOLO1 is not set
+# CONFIG_SOUND_MAESTRO is not set
+# CONFIG_SOUND_MAESTRO3 is not set
+# CONFIG_SOUND_FORTE is not set
+# CONFIG_SOUND_ICH is not set
+# CONFIG_SOUND_RME96XX is not set
+# CONFIG_SOUND_SONICVIBES is not set
+# CONFIG_SOUND_TRIDENT is not set
+# CONFIG_SOUND_MSNDCLAS is not set
+# CONFIG_SOUND_MSNDPIN is not set
+# CONFIG_SOUND_VIA82CXXX is not set
+# CONFIG_MIDI_VIA82CXXX is not set
+# CONFIG_SOUND_OSS is not set
+# CONFIG_SOUND_TVMIXER is not set
+
#
# Misc devices
@@ -1032,13 +1056,13 @@ CONFIG_USB_OHCI=y
#
# USB Device Class drivers
#
-# CONFIG_USB_AUDIO is not set
+CONFIG_USB_AUDIO=m
# CONFIG_USB_EMI26 is not set
#
# USB Bluetooth can only be used with disabled Bluetooth subsystem
#
-# CONFIG_USB_MIDI is not set
+CONFIG_USB_MIDI=m
CONFIG_USB_STORAGE=y
# CONFIG_USB_STORAGE_DEBUG is not set
# CONFIG_HOTPLUG_SCSIDEV_NUMBER is not set
diff --git a/packages/pwc/files/Makefile b/packages/linux/unslung-kernel-2.3r25/nfs-blocksize.patch
index e69de29bb2..e69de29bb2 100644
--- a/packages/pwc/files/Makefile
+++ b/packages/linux/unslung-kernel-2.3r25/nfs-blocksize.patch
diff --git a/packages/linux/unslung-kernel_2.3r25.bb b/packages/linux/unslung-kernel_2.3r25.bb
index 95093d1960..618b1495fe 100644
--- a/packages/linux/unslung-kernel_2.3r25.bb
+++ b/packages/linux/unslung-kernel_2.3r25.bb
@@ -4,7 +4,7 @@ include nslu2-linksys-kernel_2.4.22.bb
DESCRIPTION = "Unslung kernel for the Linksys NSLU2 device"
MAINTAINER = "NSLU2 Linux <www.nlsu2-linux.org>"
-PR = "r14"
+PR = "r15"
KERNEL_SUFFIX = "unslung"
@@ -19,6 +19,7 @@ SRC_URI += "file://limit1gb.patch;patch=1 \
file://missing-usb-ioctls.patch;patch=1 \
file://anonymiser.patch;patch=1 \
file://ppp_mppe.patch;patch=1 \
+ file://nfs-blocksize.patch;patch=1 \
${UNSLUNG_KERNEL_EXTRA_SRC_URI}"
FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/unslung-kernel-${PV}', '${FILE_DIRNAME}/nslu2-linksys-kernel-2.4.22', '${FILE_DIRNAME}/files', '${FILE_DIRNAME}' ], d)}"
diff --git a/packages/meta/openslug-image.bb b/packages/meta/openslug-image.bb
index c9da288034..e3dd483341 100644
--- a/packages/meta/openslug-image.bb
+++ b/packages/meta/openslug-image.bb
@@ -1,4 +1,4 @@
-PR = "r7"
+PR = "r9"
IMAGE_BASENAME = "openslug"
@@ -8,7 +8,7 @@ USE_DEVFS = "1"
OPENSLUG_HIDDEN_PACKAGES = "ipkg-native ipkg-utils-native fakeroot-native ${PATCH_DEPENDS} virtual/armeb-linux-uclibc-gcc \
virtual/libc makedevs-native mtd-utils-native slugimage-native nslu2-linksys-firmware nslu2-switchbox-firmware "
-DEPENDS = "virtual/kernel base-files base-passwd-3.5.9 \
+DEPENDS = "virtual/kernel base-files base-passwd \
busybox dropbear hotplug-ng initscripts netbase \
sysvinit tinylogin lrzsz portmap \
ixp4xx-csr ixp425-eth openslug-init \
@@ -17,6 +17,8 @@ DEPENDS = "virtual/kernel base-files base-passwd-3.5.9 \
cpio findutils e2fsprogs mtd-utils \
${OPENSLUG_EXTRA_DEPENDS}"
+# NOTE: file system kernel modules are defined in openslug.conf
+# (OPENSLUG_EXTRA_FILESYSTEMS, included in OPENSLUG_EXTRA_INSTALL)
IPKG_INSTALL = "base-files base-passwd \
busybox dropbear hotplug-ng initscripts netbase \
update-modules sysvinit tinylogin lrzsz portmap \
@@ -25,7 +27,6 @@ IPKG_INSTALL = "base-files base-passwd \
ipkg-collateral ipkg ipkg-link diffutils \
cpio findutils e2fsprogs-mke2fs \
e2fsprogs-fsck e2fsprogs-e2fsck \
- kernel-module-nfs kernel-module-sunrpc kernel-module-lockd \
${OPENSLUG_EXTRA_INSTALL}"
inherit image_ipk
diff --git a/packages/meta/openslug-packages.bb b/packages/meta/openslug-packages.bb
index 470a811ddd..e3447b5b4a 100644
--- a/packages/meta/openslug-packages.bb
+++ b/packages/meta/openslug-packages.bb
@@ -6,52 +6,65 @@ ALLOW_EMPTY = 1
PACKAGES = "${PN}"
OPENSLUG_DEVELOPMENT = "\
- autoconf \
- automake \
- bash \
- bison \
- bzip2 \
- coreutils \
+ autoconf \
+ automake \
+ bash \
+ bison \
+ bzip2 \
+ coreutils \
cvs \
- diffutils \
- findutils \
- flex \
+ diffutils \
+ findutils \
+ flex \
gawk \
- gcc \
- gdb \
- grep \
- lsof \
- m4 \
- make \
- ncurses \
- openssh \
- pciutils \
- perl \
- quilt \
- sed \
- strace \
- tar thttpd \
+ gcc \
+ gdb \
+ grep \
+ lsof \
+ m4 \
+ make \
+ ncurses \
+ openssh \
+ pciutils \
+ quilt \
+ sed \
+ "
+
+# These packages only build on TARGET_OS=linux, not
+# TARGET_OS=linux-uclibc
+OPENSLUG_DEVELOPMENT_append_linux = "\
+ perl \
+ tar \
"
OPENSLUG_PACKAGES = "\
atftp \
bash \
- bluez-utils-nodbus \
+ bluez-utils-nodbus bridge-utils \
coreutils cvs\
- miau \
- microcom \
- mt-daapd \
+ expat \
+ miau microcom mt-daapd mysql \
nail \
openssh \
- ppp puppy \
+ ppp puppy pwc \
rsync \
- strace sudo \
+ sudo sysfsutils \
thttpd \
+ db4 \
+ openldap \
+ "
+
+# These packages only build on TARGET_OS=linux, not
+# TARGET_OS=linux-uclibc
+OPENSLUG_PACKAGES_append_linux = "\
+ php \
+ yp-tools ypbind ypserv \
"
BROKEN_PACKAGES = "\
mgetty \
+ strace \
"
DEPENDS = 'openslug-image \
diff --git a/packages/module-init-tools/files/depmod-byteswap.patch b/packages/module-init-tools/files/depmod-byteswap.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/module-init-tools/files/depmod-byteswap.patch
diff --git a/packages/module-init-tools/module-init-tools-cross_3.1.bb b/packages/module-init-tools/module-init-tools-cross_3.1.bb
index e69de29bb2..21a49171eb 100644
--- a/packages/module-init-tools/module-init-tools-cross_3.1.bb
+++ b/packages/module-init-tools/module-init-tools-cross_3.1.bb
@@ -0,0 +1,24 @@
+LICENSE = GPL
+include module-init-tools_${PV}.bb
+inherit cross
+DEFAULT_PREFERENCE = "0"
+PROVIDES += "virtual/${TARGET_PREFIX}depmod"
+
+PR=r3
+
+# When cross compiling depmod as shipped cannot handle endian
+# differences between host and target, this fixes the problem.
+# It also solves any possible issues with alignment (only likely
+# if cross compiling for a low alignment target - e.g. x86, on
+# a high alignment host - e.g. SPARC).
+SRC_URI += " file://depmod-byteswap.patch;patch=1 "
+
+EXTRA_OECONF_append = " --program-prefix=${TARGET_PREFIX}"
+
+do_stage () {
+ oe_runmake install
+}
+
+do_install () {
+ :
+}
diff --git a/packages/nis/files/libdl.patch b/packages/nis/files/libdl.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/nis/files/libdl.patch
diff --git a/packages/nis/files/no-selinux.patch b/packages/nis/files/no-selinux.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/nis/files/no-selinux.patch
diff --git a/packages/nis/nis-all.bb b/packages/nis/nis-all.bb
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/nis/nis-all.bb
diff --git a/packages/nis/nis.inc b/packages/nis/nis.inc
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/nis/nis.inc
diff --git a/packages/nis/pwdutils_2.6.bb b/packages/nis/pwdutils_2.6.bb
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/nis/pwdutils_2.6.bb
diff --git a/packages/nis/yp-tools_2.9.bb b/packages/nis/yp-tools_2.9.bb
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/nis/yp-tools_2.9.bb
diff --git a/packages/nis/ypbind-mt_1.18.bb b/packages/nis/ypbind-mt_1.18.bb
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/nis/ypbind-mt_1.18.bb
diff --git a/packages/nis/ypserv_2.15.bb b/packages/nis/ypserv_2.15.bb
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/nis/ypserv_2.15.bb
diff --git a/packages/nslu2-binary-only/nslu2-switchbox-firmware.bb b/packages/nslu2-binary-only/nslu2-switchbox-firmware.bb
index e8c7a0765c..6c3739a718 100644
--- a/packages/nslu2-binary-only/nslu2-switchbox-firmware.bb
+++ b/packages/nslu2-binary-only/nslu2-switchbox-firmware.bb
@@ -3,9 +3,9 @@ DEPENDS = ""
PACKAGES = ""
LICENSE = "BSD"
INHIBIT_DEFAULT_DEPS = "1"
-PR = "r18"
+PR = "r19"
-SRC_URI = "http://nslu.sf.net/downloads/switchbox-4.10.tar.gz"
+SRC_URI = "http://nslu.sf.net/downloads/switchbox-4.11.tar.gz"
S = "${WORKDIR}"
python () {
diff --git a/packages/nslu2-binary-only/unslung-rootfs-2.3r25/NOTES b/packages/nslu2-binary-only/unslung-rootfs-2.3r25/NOTES
index e69de29bb2..1f1201a697 100644
--- a/packages/nslu2-binary-only/unslung-rootfs-2.3r25/NOTES
+++ b/packages/nslu2-binary-only/unslung-rootfs-2.3r25/NOTES
@@ -0,0 +1,409 @@
+UNSLUNG-4.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-4.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 4.x
+firmware from the standard Linksys 2.3R25 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.
+
+
+
diff --git a/packages/nslu2-binary-only/unslung-rootfs-2.3r25/README b/packages/nslu2-binary-only/unslung-rootfs-2.3r25/README
index 15b4acb970..608acc0fde 100644
--- a/packages/nslu2-binary-only/unslung-rootfs-2.3r25/README
+++ b/packages/nslu2-binary-only/unslung-rootfs-2.3r25/README
@@ -1,4 +1,4 @@
-UNLUNG-3.x Family Release README INSTALLATION
+UNLUNG-4.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
@@ -24,33 +24,38 @@ There are three parts to completing the installation of the Unslung firmware:
PRE-INSTALLATION CONSIDERATIONS
-1) It is strongly recommended that you test telnet Redboot access first. See
+1) You *must* test telnet Redboot access first before you flash the Unslung
+ firmware. Failure to do so will mean you get no sympathy at all if you
+ can't access Redboot when you need to recover from a bad flash. See
+
http://www.nslu2-linux.org/wiki/HowTo/TelnetIntoRedBoot
- Redboot is the bootloader that runs when the device is first started,
loading things into memory and starting Linux. By testing your
ability to telnet into Redboot, you are ensuring that if you injure
- your NSLU2 with a bad flash (or with a bad diversion script) you
- should be able to follow the "How To Recover From A Bad Flash"
- instructions at
+ your NSLU2 with a bad flash you should be able to follow the "How
+ To Recover From A Bad Flash" instructions at
http://www.nslu2-linux.org/wiki/HowTo/RecoverFromABadFlash
-2) Because you can now make changes to the root filesystem in the internal
- flash storage, you no longer need to have an external disk to use the
- Unslung firmware (except if you want to install more than what can fit in
- the meagre spare space in the internal flash storage).
-
-3) If you do want to use an external disk as the target for package
- installation, then it is absolutely required that the disk is (or has
- previously been) formatted by the NSLU2. It is possible to upgrade from
- UNSLUNG 1.x or UNSLUNG 2.x to UNSLUNG 3.x without reformatting your disk.
+2) If you want to install any packages, then you must have an external disk.
+ It is possible to make changes to the root filesystem in the internal
+ flash storage, but the space is very limited. In fact, just running
+ "ipkg update" on an NSLU2 which does not have an external disk attached
+ is likely to render the NSLU2 unusable due to filling up the flash (if
+ this happens then you will need to follow the recovery instructions in
+ the previous step). So unless you are an expert, then use an external
+ disk.
+
+3) The external disk that you use as the target for package installation must
+ be (or have previously been) formatted by the NSLU2. It is possible to
+ upgrade from UNSLUNG 1.x, 2.x and 3.x without reformatting your disk.
The unsling script will not touch anything in /unslung or /opt on your
- disk, make sure all your file modifications are in those directories, as
- you were warned in the README file in UNSLUNG 1.x and UNSLUNG 2.x :-)
+ disk, so make sure all your file modifications are in those directories,
+ as you were warned in the README file in UNSLUNG 1.x, 2.x and 3.x :-)
4) If you want to use a flash disk as the target for package installation,
- ensure that it is larger than 256mb, plugged into port 1, and formatted
+ ensure that it is at least 256MB, plugged into port 1, and formatted
via the Linksys web interface.
5) Please verify that any disks you are going to connect to the NSLU2 are
@@ -81,24 +86,32 @@ FIRMWARE INSTALLATION DETAILS
disks attached. This CANNOT be emphasized enough. Are you sure you
unplugged the disks before powering up? If so, you may continue.
-2) If you are installing UNSLUNG 3.x onto an NSLU2 unit with Linksys standard
- firmware *or* UNSLUNG 1.x or 2.x, go to step 2-a. If you are installing
- Unslung 3.x onto an NSLU2 unit with version 3.x already installed, go to
- step 2-b.
+2) Access the Web interface '''using admin as username, and admin as password.'''
+ ''None of the users you have previously defined will run as I guess they are
+ all stored in the passwd file that is on the disk you just disconnected.''
- 2-a) Flash unslung-standard-3.x.bin as you normally would flash new
- firmware (using the web interface "Upgrade Firmware" page).
+ 2-a) If you are installing Unslung 4.x onto an NSLU2 unit with Linksys
+ standard firmware *or* UNSLUNG 1.x or 2.x, flash unslung-4.x.bin as
+ you normally would flash new firmware (using the web interface
+ "Upgrade Firmware" page).
- 2-b) You must put the NSLU2 into maintenance mode before you can use the
- web interface to flash a new version. Just click the "Enter
- Maintenance Mode" link on the web interface "Upgrade Firmware" page,
- wait for the NSLU2 to reboot, and then flash the new firmware in the
- normal manner.
+ 2-b) If you are installing Unslung 4.x onto an NSLU2 unit with version 3.x
+ or verions 4.x already installed, you must put the NSLU2 into
+ maintenance mode before you can use the web interface to flash a new
+ version. Just click the "Enter Maintenance Mode" link on the web
+ interface "Upgrade Firmware" page, wait for the NSLU2 to reboot, and
+ then flash the new firmware in the normal manner (using the web
+ interface "Upgrade Firmware" page).
- During firmware flashing, the top LED - Ready/Status - flashes red and
green (approximately 5 minutes), and you should receive a Javascript
message that indicates that the flash of the firmware was successful.
+ During flashing, some browsers may hog 100% CPU, and the flashing may
+ take a long time, longer than 5 mins as reported by the web
+ interface. You are advised not to have other activities going on at
+ the client while flashing.
+
- The NSLU2 will reboot after the flashing is complete.
3) Shutdown the NSLU2 (again), attach disk(s), and power it back up.
@@ -119,8 +132,8 @@ FIRMWARE INSTALLATION DETAILS
***** If you do not choose to do the unslinging procedure described below,
DO NOT install packages unless you are SURE you know what you are
- doing! "Bricking" your NSLU2 by not unslinging is not just a
- possibility, it is a probability.
+ doing! "Bricking" your NSLU2 by not unslinging and then running ipkg
+ is not just a possibility, it is a certainty.
5) Shutdown the NSLU2 and unplug *ALL* attached disks.
@@ -130,6 +143,25 @@ FIRMWARE INSTALLATION DETAILS
'UNSLINGING' DETAILS
+"Unslinging" is the process of copying the root filesystem of your NSLU2 onto
+an external disk, and configuring that external disk for installation of
+packages. Basically it's a script (stored in /sbin/unsling) which copies all
+the files from the internal jffs2 filesystem onto the external disk and tells
+the internal firmware to load the root filesystem from the external disk when
+booting in the future.
+
+To run the unsling-script you have to be logged in as root (with a telnet
+session).
+
+NOTE: There are two root-passwords. One is saved in a internal file called
+/usr/local/passwd (we know this one - it's "uNSLUng" and used when you boot
+without a attached harddisk) the other is stored in a external file called
+/share/hdd/conf/passwd (we don't know this one - it's used when you boot with a
+external harddisk attached). Later in the process you can change both of
+them. That means: Everytime you boot WITHOUT a attached harddisk you gain
+root-access with the "uNSLUng" password. If you boot WITH an attached harddisk,
+you won't have access until you change the file /share/hdd/conf/passwd.
+
1) Power up the NSLU2 without any disks connected.
- This only has to be done when you update the firmware, and because
@@ -166,17 +198,16 @@ FIRMWARE INSTALLATION DETAILS
into the NSLU2 using the username root and password uNSLUng.
4) Identify which drive you wish you "unsling", and plug it in. Wait a minute
- or two while the disk is mounted.
+ or two while the disk is mounted. Check the web interface to make sure
+ that the disk has been recognised by the Linksys software.
- If the disk has not been previously formatted on the NSLU2, then now is
the time to do that. Make sure that the drive is recognized in the
web interface.
-5) In the telnet session, run "/sbin/unsling".
-
- - Starting with UNSLUNG 3.x, the external disk is no longer used for the
- root filesystem, so only a few documentation files will be copied to
- the "conf" partition (not the "data" partition).
+5) In the telnet session, run "/sbin/unsling disk1" or "/sbin/unsling disk2"
+ (depending upon whether you want to unsling to a disk connected to the
+ Disk1 port or the Disk2 port).
- Once you "unsling" to an external disk on a particular port (Disk 1 or
Disk 2), it is important that you keep that disk continually plugged
@@ -189,17 +220,30 @@ FIRMWARE INSTALLATION DETAILS
http://www.nslu2-linux.org/wiki/HowTo/ChangePasswordsFromTheCommandLine
-6) Reboot.
+6) If you wish to migrate your packages from the old Unslung 3.x location in
+ the /share/hdd/conf (disk1) or /share/flash/conf (disk2) partitions to the
+ new Unslung 4.x location on the data partition, then run:
+ "/sbin/slingover disk1" (if your packages were previously on disk1 and you
+ ran "/sbin/unsling disk1" in step 5) or "/sbin/slingover disk2" (if your
+ packages were previously on disk2 and you ran "/sbin/unsling disk2" in
+ step 5).
+
+ - If your packages were not stored in /share/hdd/conf or /share/flash/conf
+ (e.g. you had previously moved your packages from the conf partition
+ to the data partition), then all bets are off and you will need to
+ read the /sbin/slingover script and perform the appropriate steps
+ manually.
+
+7) Reboot.
***** Congratulations, you're now Unslung! *****
-Make sure you add an entry to the "The UNSLUNG 3.x" table in the Yahoo group.
+Make sure you add an entry to the "The UNSLUNG 4.x" table in the Yahoo group.
Just use the next free integer for your Unslung number.
If you make no further changes, your NSLU2 will continue to operate normally.
But to customize things, you'll be downloading packages and adding stuff to the
-/unslung directory on the external disk (or even in the internal flash memory)
-using diversion scripts.
+/unslung directory using diversion scripts.
Read the NOTES file to expand the capabilities of your uNSLUng NSLU2!
diff --git a/packages/nslu2-binary-only/unslung-rootfs-2.3r25/rc-diversion.patch b/packages/nslu2-binary-only/unslung-rootfs-2.3r25/rc-diversion.patch
index 2ee70b19e7..02b67aaf64 100644
--- a/packages/nslu2-binary-only/unslung-rootfs-2.3r25/rc-diversion.patch
+++ b/packages/nslu2-binary-only/unslung-rootfs-2.3r25/rc-diversion.patch
@@ -20,7 +20,7 @@
+fi
+
+# Wait for the USB disks to be recognised.
-+sleep 5
++sleep 10
+
+if ( [ -f /proc/hd_conn ] ) ; then
+ if ( [ -f /.sda1root ] ) ; then
diff --git a/packages/nslu2-binary-only/unslung-rootfs-2.3r25/rc.bootbin b/packages/nslu2-binary-only/unslung-rootfs-2.3r25/rc.bootbin
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/nslu2-binary-only/unslung-rootfs-2.3r25/rc.bootbin
diff --git a/packages/nslu2-binary-only/unslung-rootfs-2.3r25/slingover b/packages/nslu2-binary-only/unslung-rootfs-2.3r25/slingover
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/nslu2-binary-only/unslung-rootfs-2.3r25/slingover
diff --git a/packages/nslu2-binary-only/unslung-rootfs-2.3r25/tmp-handling.patch b/packages/nslu2-binary-only/unslung-rootfs-2.3r25/tmp-handling.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/nslu2-binary-only/unslung-rootfs-2.3r25/tmp-handling.patch
diff --git a/packages/nslu2-binary-only/unslung-rootfs-2.3r25/unsling b/packages/nslu2-binary-only/unslung-rootfs-2.3r25/unsling
index 120143d352..5a5d74d858 100644
--- a/packages/nslu2-binary-only/unslung-rootfs-2.3r25/unsling
+++ b/packages/nslu2-binary-only/unslung-rootfs-2.3r25/unsling
@@ -1,6 +1,6 @@
#!/bin/sh
-usage="Usage: $0 [hdd-data|flash-data|hdd-conf|flash-conf|jffs2-hdd-data|jffs2-flash-data|jffs2-hdd-conf|jffs2-flash-conf]"
+usage="Usage: $0 disk1|disk2"
# Set target disk
@@ -10,7 +10,11 @@ if [ $# -gt 1 ] ; then
fi
if [ $# -eq 1 ] ; then
- if [ "$1" = "flash-data" ] ; then
+ if [ "$1" = "disk1" ] ; then
+ targ=/share/hdd/data
+ copy=true
+ flag=.sda1root
+ elif [ "$1" = "disk2" ] ; then
targ=/share/flash/data
copy=true
flag=.sdb1root
@@ -18,26 +22,30 @@ if [ $# -eq 1 ] ; then
targ=/share/hdd/data
copy=true
flag=.sda1root
- elif [ "$1" = "flash-conf" ] ; then
- targ=/share/flash/conf
- copy=true
- flag=.sdb2root
elif [ "$1" = "hdd-conf" ] ; then
targ=/share/hdd/conf
copy=true
flag=.sda2root
- elif [ "$1" = "jffs2-flash-data" ] ; then
+ elif [ "$1" = "flash-data" ] ; then
targ=/share/flash/data
- copy=
+ copy=true
+ flag=.sdb1root
+ elif [ "$1" = "flash-conf" ] ; then
+ targ=/share/flash/conf
+ copy=true
+ flag=.sdb2root
elif [ "$1" = "jffs2-hdd-data" ] ; then
targ=/share/hdd/data
copy=
- elif [ "$1" = "jffs2-flash-conf" ] ; then
- targ=/share/flash/conf
- copy=
elif [ "$1" = "jffs2-hdd-conf" ] ; then
targ=/share/hdd/conf
copy=
+ elif [ "$1" = "jffs2-flash-data" ] ; then
+ targ=/share/flash/data
+ copy=
+ elif [ "$1" = "jffs2-flash-conf" ] ; then
+ targ=/share/flash/conf
+ copy=
else
echo $usage
exit 1
@@ -105,6 +113,13 @@ if [ -z "$copy" ] ; then
else
+ # Save the existing ipkg database.
+
+ rm -rf $targ/usr/lib/ipkg.old
+ if [ -f $targ/usr/lib/ipkg/status ] ; then
+ mv $targ/usr/lib/ipkg $targ/usr/lib/ipkg.old
+ fi
+
# Copy the complete rootfs to the target.
echo "Copying the complete rootfs from / to $targ."
@@ -112,6 +127,15 @@ else
rm -rf $targ/dev ; mv $targ/dev.state $targ/dev
rm -rf $targ/var ; mv $targ/var.state $targ/var
+ # Copy over the existing ipkg database.
+
+ if [ -f $targ/usr/lib/ipkg.old/status ] ; then
+ echo "Preserving existing ipkg database on target disk."
+ ( cd $targ/usr/lib/ipkg.old ; tar cf - . ) | ( cd $targ/usr/lib/ipkg ; tar xf - )
+ fi
+
+ # Create the boot flag file.
+
rm -f /.sd??root $targ/.sd??root
echo "Creating /$flag to direct switchbox to boot from $targ."
diff --git a/packages/nslu2-binary-only/unslung-rootfs-2.3r25/wait-for-quotacheck.patch b/packages/nslu2-binary-only/unslung-rootfs-2.3r25/wait-for-quotacheck.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/nslu2-binary-only/unslung-rootfs-2.3r25/wait-for-quotacheck.patch
diff --git a/packages/nslu2-binary-only/unslung-rootfs_2.3r25.bb b/packages/nslu2-binary-only/unslung-rootfs_2.3r25.bb
index a7528c52d1..a943472949 100644
--- a/packages/nslu2-binary-only/unslung-rootfs_2.3r25.bb
+++ b/packages/nslu2-binary-only/unslung-rootfs_2.3r25.bb
@@ -1,16 +1,17 @@
SECTION = "base"
-PR = "r49"
+PR = "r60"
-UNSLUNG_VERSION = "4.8-alpha"
+UNSLUNG_VERSION = "4.16-alpha"
DEPENDS = "nslu2-linksys-libs"
SRC_URI = "http://nslu.sf.net/downloads/nslu2-linksys-ramdisk-2.3r25.tar.bz2 \
file://README \
- file://linuxrc \
+ file://NOTES \
file://unsling \
file://resling \
+ file://slingover \
file://nsswitch.conf \
file://rc.unslung-start \
file://rc.unslung-stop \
@@ -31,11 +32,14 @@ SRC_URI = "http://nslu.sf.net/downloads/nslu2-linksys-ramdisk-2.3r25.tar.bz2 \
file://rc.thttpd-diversion.patch;patch=1 \
file://rc.xinetd-diversion.patch;patch=1 \
file://root-passwd.patch;patch=1 \
+ file://tmp-handling.patch;patch=1 \
file://create-ramdisks.patch;patch=1 \
file://remount-noatime.patch;patch=1 \
file://initialise-mtab.patch;patch=1 \
+ file://wait-for-quotacheck.patch;patch=1 \
file://mount_usbdevfs.patch;patch=1 \
file://maintmode.cgi file://upgrade-maint.htm file://upgrade-nomaint.htm \
+ file://rc.bootbin \
"
S = "${WORKDIR}/nslu2-linksys-ramdisk-2.3r25"
@@ -59,11 +63,15 @@ do_compile () {
rm -f ${S}/etc/rc.orig
rm -f ${S}/etc/rc.d/rc.1.orig
+ # Allow rc.bootbin to be diverted.
+ mv ${S}/etc/rc.d/rc.bootbin ${S}/sbin/rc.bootbin
+ install -m 755 ${WORKDIR}/rc.bootbin ${S}/etc/rc.d/rc.bootbin
+
install -d ${S}/initrd
- install -m 755 ${WORKDIR}/linuxrc ${S}/linuxrc
install -m 755 ${WORKDIR}/unsling ${S}/sbin/unsling
install -m 755 ${WORKDIR}/resling ${S}/sbin/resling
+ install -m 755 ${WORKDIR}/slingover ${S}/sbin/slingover
install -m 755 ${WORKDIR}/rc.unslung-start ${S}/etc/rc.d/rc.unslung-start
install -m 755 ${WORKDIR}/rc.unslung-stop ${S}/etc/rc.d/rc.unslung-stop
@@ -71,8 +79,12 @@ do_compile () {
install -d ${S}/opt/doc
install -m 755 ${WORKDIR}/README ${S}/opt/doc/README
+ install -m 755 ${WORKDIR}/NOTES ${S}/opt/doc/NOTES
ln -s /opt/doc ${S}/home/httpd/html/Unslung
+ # Add the diversion script directory
+ install -d ${S}/unslung
+
# Remove the libraries, because they are in nslu2-linksys-libs now
rm -rf ${S}/lib
diff --git a/packages/openldap/files/install-strip.patch b/packages/openldap/files/install-strip.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/openldap/files/install-strip.patch
diff --git a/packages/openldap/files/openldap-autoconf.patch b/packages/openldap/files/openldap-autoconf.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/openldap/files/openldap-autoconf.patch
diff --git a/packages/openldap/files/ucgendat.patch b/packages/openldap/files/ucgendat.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/openldap/files/ucgendat.patch
diff --git a/packages/openldap/openldap_2.2.24.bb b/packages/openldap/openldap_2.2.24.bb
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/openldap/openldap_2.2.24.bb
diff --git a/packages/openslug-init/openslug-init-0.10/sysconfsetup b/packages/openslug-init/openslug-init-0.10/sysconfsetup
index f048dfc9bc..83b8d34648 100644
--- a/packages/openslug-init/openslug-init-0.10/sysconfsetup
+++ b/packages/openslug-init/openslug-init-0.10/sysconfsetup
@@ -7,6 +7,9 @@ then
# So the driver can actually load the first time
/usr/sbin/update-modules
+# Set the default root password so ppl can ssh in
+ sed -i -e 's/root::/root:uf8TRGX9WDuH2:/' /etc/passwd
+
dd if=/dev/mtdblock1 of=/etc/linksysconf
cat <<EOF > /etc/original-network-settings
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
diff --git a/packages/openslug-init/openslug-init-0.10/turnup b/packages/openslug-init/openslug-init-0.10/turnup
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/openslug-init/openslug-init-0.10/turnup
diff --git a/packages/openslug-init/openslug-init_0.10.bb b/packages/openslug-init/openslug-init_0.10.bb
index 9960988561..3b749f0a9b 100644
--- a/packages/openslug-init/openslug-init_0.10.bb
+++ b/packages/openslug-init/openslug-init_0.10.bb
@@ -2,9 +2,10 @@ DESCRIPTION = "Openslug initial network config via sysconf"
SECTION = "console/network"
LICENSE = "GPL"
DEPENDS = "base-files"
-PR = "r15"
+PR = "r18"
SRC_URI = "file://sysconfsetup \
+ file://turnup \
file://modutils.txt \
file://modprobe.conf \
file://leds_rs_green \
@@ -27,19 +28,27 @@ do_install() {
${D}/${sysconfdir}/init.d \
${D}/${sysconfdir}/modutils \
${D}/${sysconfdir}/rcS.d \
- ${D}/${sysconfdir}/rc2.d \
${D}/${sbindir}
install -d ${D}/initrd
install -m 0755 ${D}/../kern_header ${D}${sbindir}/kern_header
+ install -m 0755 ${D}/../turnup ${D}${sbindir}/turnup
install -m 0755 ${D}/../leds ${D}${sbindir}/leds
install -m 0755 ${D}/../sysconfsetup ${D}${sysconfdir}/init.d/
install -m 0755 ${D}/../leds_rs_green ${D}${sysconfdir}/init.d/
install -m 0644 ${D}/../modutils.txt ${D}${sysconfdir}/modutils/
install -m 0644 ${D}/../modprobe.conf ${D}${sysconfdir}/
- ln -s /etc/init.d/sysconfsetup ${D}${sysconfdir}/rcS.d/S39sysconfsetup
- ln -s /etc/init.d/leds_rs_green ${D}${sysconfdir}/rc2.d/S98leds_rs_green
+ rm -f ${D}${sysconfdir}/rcS.d/S39sysconfsetup
+ ln -s ../init.d/sysconfsetup ${D}${sysconfdir}/rcS.d/S39sysconfsetup
+ # Put this into the user run levels, after the rmnologin (which is
+ # the thing that allows a user log in!)
+ for l in 2 3 4 5
+ do
+ install -d ${D}/${sysconfdir}/rc$l.d
+ rm -f ${D}${sysconfdir}/rc$l.d/S99zleds_rs_green
+ ln -s ../init.d/leds_rs_green ${D}${sysconfdir}/rc$l.d/S99zleds_rs_green
+ done
}
FILES_${PN} = "/"
diff --git a/packages/pam/files/libpam-config.patch b/packages/pam/files/libpam-config.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/pam/files/libpam-config.patch
diff --git a/packages/pam/files/libpam-make.patch b/packages/pam/files/libpam-make.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/pam/files/libpam-make.patch
diff --git a/packages/pam/libpam_0.79.bb b/packages/pam/libpam_0.79.bb
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/pam/libpam_0.79.bb
diff --git a/packages/portmap/portmap-unslung_5-9.bb b/packages/portmap/portmap-unslung_5-9.bb
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/portmap/portmap-unslung_5-9.bb
diff --git a/packages/pwc/pwc-10.0.6a/Makefile b/packages/pwc/pwc-10.0.6a/Makefile
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/pwc/pwc-10.0.6a/Makefile
diff --git a/packages/pwc/pwc-10.0.6a/endian-fix.patch b/packages/pwc/pwc-10.0.6a/endian-fix.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/pwc/pwc-10.0.6a/endian-fix.patch
diff --git a/packages/pwc/pwc_10.0.6a.bb b/packages/pwc/pwc_10.0.6a.bb
index f6af027f56..96092c5a93 100644
--- a/packages/pwc/pwc_10.0.6a.bb
+++ b/packages/pwc/pwc_10.0.6a.bb
@@ -3,9 +3,10 @@ PRIORITY = "optional"
SECTION = "kernel/modules"
MAINTAINER = "dyoung <dyoung8888@yahoo.com>"
LICENSE = "GPL"
-PR = "r0"
+PR = "r1"
SRC_URI = "http://www.saillard.org/linux/pwc/files/pwc-${PV}.tar.bz2 \
+ file://endian-fix.patch;patch=1 \
file://Makefile"
S = "${WORKDIR}/pwc-${PV}"
diff --git a/packages/uclibc/files/armeb-kernel-stat.h.patch b/packages/uclibc/files/armeb-kernel-stat.h.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/uclibc/files/armeb-kernel-stat.h.patch
diff --git a/packages/uclibc/uclibc_0.9.27.bb b/packages/uclibc/uclibc_0.9.27.bb
index 9b4f735511..65552b61bb 100644
--- a/packages/uclibc/uclibc_0.9.27.bb
+++ b/packages/uclibc/uclibc_0.9.27.bb
@@ -1,9 +1,10 @@
DEFAULT_PREFERENCE = "1"
-PR = "r3"
+PR = "r4"
include uclibc.inc
SRC_URI += "http://www.uclibc.org/downloads/uClibc-${PV}.tar.bz2 \
file://dyn-ldconfig.patch;patch=1 \
file://nokernelheadercheck.patch;patch=1"
+SRC_URI += " file://armeb-kernel-stat.h.patch;patch=1"
S = "${WORKDIR}/uClibc-${PV}"
diff --git a/packages/udev/files/init b/packages/udev/files/init
index e69de29bb2..16efb31542 100644
--- a/packages/udev/files/init
+++ b/packages/udev/files/init
@@ -0,0 +1,178 @@
+#!/bin/sh -e
+
+PATH="/usr/sbin:/usr/bin:/sbin:/bin"
+
+UDEVSTART=/sbin/udevstart
+
+# default maximum size of the /dev ramfs
+ramfs_size="1M"
+
+[ -x $UDEVSTART ] || exit 0
+
+. /etc/udev/udev.conf
+
+case "$(uname -r)" in
+ 2.[012345].*)
+ echo "udev requires a kernel >= 2.6, not started."
+ exit 0
+ ;;
+esac
+
+if ! grep -q '[[:space:]]ramfs$' /proc/filesystems; then
+ echo "udev requires ramfs support, not started."
+ exit 0
+fi
+
+if [ ! -e /proc/sys/kernel/hotplug ]; then
+ echo "udev requires hotplug support, not started."
+ exit 0
+fi
+
+##############################################################################
+
+# we need to unmount /dev/pts/ and remount it later over the ramfs
+unmount_devpts() {
+ if mountpoint -q /dev/pts/; then
+ umount -l /dev/pts/
+ fi
+
+ if mountpoint -q /dev/shm/; then
+ umount -l /dev/shm/
+ fi
+}
+
+# mount a ramfs over /dev, if somebody did not already do it
+mount_ramfs() {
+ if grep -E -q "^[^[:space:]]+ /dev ramfs" /proc/mounts; then
+ return 0
+ fi
+
+ # /.dev is used by /sbin/MAKEDEV to access the real /dev directory.
+ # if you don't like this, remove /.dev/.
+ [ -d /.dev ] && mount --bind /dev /.dev
+
+ echo -n "Mounting a ramfs over /dev..."
+ mount -n -o size=$ramfs_size,mode=0755 -t ramfs none /dev
+ echo "done."
+}
+
+# I hate this hack. -- Md
+make_extra_nodes() {
+ if [ -f /etc/udev/links.conf ]; then
+ grep '^[^#]' /etc/udev/links.conf | \
+ while read type name arg1; do
+ [ "$type" -a "$name" -a ! -e "/dev/$name" -a ! -L "/dev/$name" ] ||continue
+ case "$type" in
+ L)
+ ln -s $arg1 /dev/$name
+ ;;
+ D)
+ mkdir -p /dev/$name
+ ;;
+ M)
+ mknod -m 600 /dev/$name $arg1
+ ;;
+ *)
+ echo "unparseable line ($type $name $arg1)"
+ ;;
+ esac
+ done
+ fi
+}
+
+##############################################################################
+
+if [ "$udev_root" != "/dev" ]; then
+ echo "WARNING: udev_root != /dev"
+
+case "$1" in
+ start)
+ if [ -e "$udev_root/.udev.tdb" ]; then
+ if mountpoint -q /dev/; then
+ echo "FATAL: udev is already active on $udev_root."
+ exit 1
+ else
+ echo "WARNING: .udev.tdb already exists on the old $udev_root!"
+ fi
+ fi
+ mount -n -o size=$ramfs_size,mode=0755 -t ramfs none $udev_root
+ echo -n "Creating initial device nodes..."
+ $UDEVSTART
+ echo "done."
+ ;;
+ stop)
+ start-stop-daemon -K -x /sbin/udevd
+ echo -n "Unmounting $udev_root..."
+ # unmounting with -l should never fail
+ if umount -l $udev_root; then
+ echo "done."
+ else
+ echo "failed."
+ fi
+ ;;
+ restart|force-reload)
+ $0 stop
+ $0 start
+ ;;
+ *)
+ echo "Usage: /etc/init.d/udev {start|stop|restart|force-reload}"
+ exit 1
+ ;;
+esac
+
+ exit 0
+fi # udev_root != /dev/
+
+##############################################################################
+# When modifying this script, do not forget that between the time that
+# the new /dev has been mounted and udevstart has been run there will be
+# no /dev/null. This also means that you cannot use the "&" shell command.
+
+case "$1" in
+ start)
+ if [ -e "$udev_root/.udev.tdb" ]; then
+ if mountpoint -q /dev/; then
+ echo "FATAL: udev is already active on $udev_root."
+ exit 1
+ else
+ echo "WARNING: .udev.tdb already exists on the old $udev_root!"
+ fi
+ fi
+ unmount_devpts
+ mount_ramfs
+ ACTION=add
+ echo -n "Creating initial device nodes..."
+ $UDEVSTART
+ make_extra_nodes
+ echo "done."
+# /etc/init.d/mountvirtfs start
+ ;;
+ stop)
+ start-stop-daemon -K -x /sbin/udevd
+ unmount_devpts
+ echo -n "Unmounting /dev..."
+ # unmounting with -l should never fail
+ if umount -l /dev; then
+ echo "done."
+ umount -l /.dev || true
+# /etc/init.d/mountvirtfs start
+ else
+ echo "failed."
+ fi
+ ;;
+ restart|force-reload)
+ start-stop-daemon -K -x /sbin/udevd
+ echo -n "Recreating device nodes..."
+ ACTION=add
+ $UDEVSTART
+ make_extra_nodes
+ echo "done."
+ ;;
+ *)
+ echo "Usage: /etc/init.d/udev {start|stop|restart|force-reload}"
+ exit 1
+ ;;
+esac
+
+exit 0
+