SECTION = "base" PR = "r13" DEPENDS = "nslu2-linksys-libs nslu2-linksys-sambacodepages" SRC_URI = "http://nslu.sf.net/downloads/nslu2-linksys-ramdisk-2.3r63-2.tar.bz2 \ file://README \ file://NOTES \ file://ipkg-fl \ file://motd-fl \ file://motd-un \ file://unsling \ file://resling \ file://slingover \ file://linuxrc \ file://unslung.gif \ file://nsswitch.conf \ file://rc.optware-start \ file://rc.optware-stop \ file://rc-diversion.patch;patch=1 \ file://rc.1-diversion.patch;patch=1 \ file://rc.crond-diversion.patch;patch=1 \ file://rc.halt-diversion.patch;patch=1 \ file://rc.local-diversion.patch;patch=1 \ file://rc.modules-diversion.patch;patch=1 \ file://rc.network-diversion.patch;patch=1 \ file://rc.quickset-diversion.patch;patch=1 \ file://rc.quota-diversion.patch;patch=1 \ file://rc.reboot-diversion.patch;patch=1 \ file://rc.reset_usrgrpshare-diversion.patch;patch=1 \ file://rc.rstimezone-diversion.patch;patch=1 \ file://rc.samba-diversion.patch;patch=1 \ file://rc.samba-syntaxfix.patch;patch=1 \ file://rc.sysinit-diversion.patch;patch=1 \ 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://security-fixes.patch;patch=1 \ file://rc.sysinit-clean_var.patch;patch=1 \ file://rc.sysinit-cpbug.patch;patch=1 \ file://rc.modules-nls.patch;patch=1 \ file://telnet-passwd.patch;patch=1 \ file://upgrade.htm \ file://telnet.htm \ file://rc.bootbin \ " S = "${WORKDIR}/nslu2-linksys-ramdisk-2.3r63" python () { # Don't build unslung images unless we're targeting an nslu2 mach = bb.data.getVar("MACHINE", d, 1) if mach != 'nslu2': raise bb.parse.SkipPackage("Unslung only builds for the Linksys NSLU2") } do_compile () { echo "V2.3R63-uNSLUng-${DISTRO_VERSION}" > ${S}/.unslung install -m 644 ${WORKDIR}/unslung.gif ${S}/home/httpd/html/linksys.gif install -m 644 ${WORKDIR}/telnet.htm ${S}/home/httpd/html/Management/telnet.htm sed -i -e 's/@version#+@public_2# | \  Manage Telnet+' \ ${S}/home/httpd/html/home.htm sed -i -e 's+  +
uNSLUng status: \  Running from Internal Flash
+' \ ${S}/home/httpd/html/home.htm sed -i -e 's|> <|>Unslung Doco<|' \ ${S}/home/httpd/html/manhead.htm install -d ${S}/opt/doc install -m 755 ${WORKDIR}/README ${S}/opt/doc/README install -m 755 ${WORKDIR}/NOTES ${S}/opt/doc/NOTES rm -f ${S}/home/httpd/html/Unslung ln -s /opt/doc ${S}/home/httpd/html/Unslung install -m 755 ${WORKDIR}/linuxrc ${S}/linuxrc # 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}/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.optware-start ${S}/etc/rc.d/rc.optware-start install -m 755 ${WORKDIR}/rc.optware-stop ${S}/etc/rc.d/rc.optware-stop install -m 644 ${WORKDIR}/nsswitch.conf ${S}/etc/nsswitch.conf # Add the diversion script directory install -d ${S}/unslung # Remove the libraries, because they are in nslu2-linksys-libs now rm -rf ${S}/lib # Remove some unnecessary web stuff to free space rm -f ${S}/home/httpd/html/Management/upgrade.cgi rm -f ${S}/home/httpd/html/Management/upgrade_ui.htm rm -f ${S}/home/httpd/html/Management/upgrade_ui.cgi # Remove some of the Samba codepages to make space # These will have to be separately packaged, like the libraries... # 437 (USA) - keep # 737 (Greek) rm -f ${S}/etc/samba/codepages/codepage.737 rm -f ${S}/etc/samba/codepages/unicode_map.737 # 850 (Latin1) - keep # 852 (Latin2) rm -f ${S}/etc/samba/codepages/codepage.852 rm -f ${S}/etc/samba/codepages/unicode_map.852 # 861 (Iceland) rm -f ${S}/etc/samba/codepages/codepage.861 rm -f ${S}/etc/samba/codepages/unicode_map.861 # 866 (Russian) rm -f ${S}/etc/samba/codepages/codepage.866 rm -f ${S}/etc/samba/codepages/unicode_map.866 # 932 (Japanese Shift-JIS) rm -f ${S}/etc/samba/codepages/codepage.932 rm -f ${S}/etc/samba/codepages/unicode_map.932 # 936 (Simplified Chinese) rm -f ${S}/etc/samba/codepages/codepage.936 # 949 (Korean) rm -f ${S}/etc/samba/codepages/codepage.949 # 950 (Chinese BIG-5) rm -f ${S}/etc/samba/codepages/codepage.950 # ISO8859-1 (Latin 1) - keep # /bin/killall and /usr/bin/killall are both symlinks to busybox. This # is a problem if killall is ever replaced by slingbox or a native utility. # Fix by making /bin/killall (the wrong place) a symlink to /usr/bin/killall. rm -f ${S}/bin/killall ln -s ../usr/bin/killall ${S}/bin/killall # There are two identical binary copies of "date" on the image. Replace # the one in /usr/sbin with a symlink to the one in /bin. This saves a # bit of flash space, and makes it possible to replace the date binary with # a link to busybox or slingbox at some point. rm -r ${S}/usr/sbin/date ln -s ../../bin/date ${S}/usr/sbin/date } do_install () { ( cd ${S} ; tar -c -v -f - --exclude '.pc' . ) | ( cd ${D} ; tar xvf - ) } PACKAGES = "${PN}" FILES_${PN} = "/" RDEPENDS_${PN} = "nslu2-linksys-libs"