Unslung/WL500g packages available for Oleg's firmware
Oleg's latest custom firmware now has support for downloadable packages. The package format is the same "ipkg" format used in OpenZaurus, OpenWRT, OpenSlug, and other embedded linux projects.
The NSLU2-Linux project (www.nslu2-linux.org) has a repository of about 280 packages which have been ported to the Linksys NSLU2 device. That repository of package build source files is called the "Unslung" build system, and it lives in the Unslung CVS repository at http://sf.net/projects/nslu.
We have now modified the Unslung build system to support both the NSLU2 with the "Unslung" firmware, and the WL500g with Oleg's custom firmware. Note that the NSLU2 is an XScale (armeb) device running glibc, whilst the WL500g is a Broadcom (mipsel) device running uclibc, so a number of packages will need further modifications to compile for the WL500g. Also be aware that the startup scripts and configuration files have been designed for the NSLU2, and will probably need modification for the WL500g in many cases.
The current status is that the following packages compile for the wl500g:
adns_1.1-1_armeb.ipk appweb_1.2.3-3_armeb.ipk
automake_1.9.4-2_armeb.ipk bash_2.05b-3_armeb.ipk bc_1.06-1_mipsel.ipk
bind_9.3.0-1_mipsel.ipk bitchx_1.1-final-1_mipsel.ipk
busybox_1.00-8_armeb.ipk bzip2_1.0.2-2_armeb.ipk
ccxstream_1.0.15-1_armeb.ipk classpath_0.13-1_armeb.ipk
coreutils_5.2.1-4_armeb.ipk ctags_5.5.4-1_mipsel.ipk
cyrus-sasl_2.1.20-4_armeb.ipk dhcp_3.0.1-1_armeb.ipk
distcc_2.18.3-1_armeb.ipk dnsmasq_2.15-5_armeb.ipk
dropbear_0.44test4-1_armeb.ipk ed_0.2-1_armeb.ipk
expat_1.95.8-1_armeb.ipk ffmpeg_0.4.9-pre1-1_armeb.ipk
fixesext_2.0.1+cvs20050130-1_mipsel.ipk flac_1.1.2-2_armeb.ipk
fontconfig_2.2.99-2_mipsel.ipk freetype_2.1.9-1_mipsel.ipk
ghostscript_8.50-1_armeb.ipk gift-fasttrack_0.8.9-1_armeb.ipk
gift-gnutella_0.0.10-1_armeb.ipk gift-openft_0.2.1.5-1_armeb.ipk
gift-opennap_20050212-1_armeb.ipk gift_0.11.8.1-1_mipsel.ipk
groff_1.19.1-2_armeb.ipk inetutils_1.4.2-4_mipsel.ipk
iptables_1.2.11-1_armeb.ipk ircd-hybrid_7.0.3-2_armeb.ipk
joe_3.1-1_armeb.ipk jove_4.16.0.65-1_armeb.ipk lame_3.96.1-1_armeb.ipk
libcurl_7.12.2-1_armeb.ipk libdvdread_0.9.4-1_armeb.ipk
libevent_0.9-1_armeb.ipk libgd_2.0.33-2_mipsel.ipk
libid3tag_0.15.1b-1_mipsel.ipk libjpeg_6b-2_armeb.ipk
libogg_1.0-1_mipsel.ipk libpng_1.2.8-2_armeb.ipk
libtool_1.5.10-2_mipsel.ipk libvorbis_1.0-1_mipsel.ipk
lua_5.0.2-1_mipsel.ipk lynx_2.8.5-2_armeb.ipk lzo_1.08-2_mipsel.ipk
m4_1.4.1-1_armeb.ipk make_3.80-1_armeb.ipk man-pages_2.01-1_armeb.ipk
man_1.5p-1_armeb.ipk mc_4.1.35-1_armeb.ipk
mt-daapd_0.2.1.1-1_armeb.ipk nano_1.2.4-1_armeb.ipk
ncftp_3.1.8-2_armeb.ipk openvpn_2.0_rc17-1_mipsel.ipk
patch_2.5.4-2_armeb.ipk pkgconfig_0.15.0-1_mipsel.ipk
portmap_4-2_armeb.ipk postgresql_8.0.1-2_mipsel.ipk
proftpd_1.2.10-4_mipsel.ipk python_2.4-1_mipsel.ipk
recordext_1.13+cvs20050130-1_mipsel.ipk
renderext_0.8+cvs20050130-1_mipsel.ipk tcpwrappers_7.6-2_armeb.ipk
torrent_1.0-1_armeb.ipk ttf-bitstream-vera_1.10-1_mipsel.ipk
vdr-mediamvp_0.1.4-2_armeb.ipk w3cam_0.7.2-1_mipsel.ipk
xau_0.1.1+cvs20050130-1_mipsel.ipk
xdmcp_0.1.3+cvs20050130-1_mipsel.ipk xextensions_1.0.2-1_mipsel.ipk
xproto_6.6.2+cvs20050130-1_mipsel.ipk
xtrans_0.1+cvs20050130-1_mipsel.ipk
[Note that I have tested very few of those packages, so even though they compile, they still may not run correctly. Over time we will sort out which is which.]
If a package listed above has "_mipsel" in the name, then it has been modified to emit an installable ipk correctly targetted for the WL500g. If the package has "_armeb" in the name, it means that it compiles, but still requires a simple (but tedious when there are a lot of them) modification to emit the correct ipk for the WL500g.
You can find out how to build these packages here: http://www.nslu2-linux.org/wiki/Unsl...ckageToUnslung
I presume that someone (perhaps Oleg, or one of the other Chupa administrators) will make the "_mipsel" binary packages available somewhere for direct download. Until that time, you can build them yourself following the instructions referenced above. It's a one line ("TARGET=wl500g") change to the top-level Unslung Makefile to retarget it from the NSLU2 to the WL500g and build the packages.
If someone wants to send me a patch for any or all of the "_armeb" packages above to make them generate the correct ipkg control file, I'll be happy to include that patch in the Unslung CVS repository. All that is involved is updating each package's <foo>.mk file to match the control file generation code in the template.mk file. Simple but tedious.
Note that I do not intend to (nor do I have the time to) update packages that I don't personally need on my wl500g, but I am happy to accept patches from others and apply them to the Unslung CVS repository. For frequent contributors, we should be able to grant write access directly to the repository (remembering that the repository was originally set up for the NSLU2-Linux project, and that remains the primary target for the packages, so any contributed packages need to take that into account). Oleg already has write access, and I expect that at least a couple of other experienced developers here will end up being contributors with write access to the Unslung package repository too ...
-- Rod