Why?
- Why not? This is for few packages that are either not in debian armel repo, or not up-to-date enough. For example,
rtorrent (etch 0.6.4, optware 0.7.9), transmission, phoneme-advanced, asterisk14, erlang, squeak, inferno, haserl, nginx, git, py-mercurial, py-trac.
- Debian packages are excellent. This is not to meant to replace debian debs in anyway. By design optware is self-contained and optional, optware can be used in conjunction with existing package systems without interference. As mentioned above, mostly this is used to complement the main package system.
- nslu2-linux.org does not officially support this optware feed. So in order to use optware ipkg, you'll need to build yourself.
- ipkg does have some advantage of being lighter weight.
- optware packages are cross built, while usally debian packages are natively built. Native-built packages are guaranteed to be correct but slow to build; Cross-compilation is much faster to generate packages. Most importantly, you can build packages yourself.
How
See DebianOptware or,
$ cd optware; make cs04q3armel-target
$ cd cs04q3armel; make directories ipkg-utils toolchain
$ sudo tar -xz -C / -f downloads/scratchbox-libs-1.0.8-i386.tar.gz
$ touch toolchain/.unpacked
$ make ipkg-opt-ipk
- Build <foo> package (don't forget all the dependency packages); update feed index.
$ make <foo>-ipk
$ rm -f builds/Pa*; make index PACKAGE_DIR=builds
- Setup a local feed on your build machine, assume we're using apache.
$ cd ~/public_html
$ ln -s /path-to/slug/optware/cs04armel/builds optware-arm-etch
- On your debian arm etch machine, replace <build-and-web-server> and <user> accordingly
# wget http://<build-and-web-server>/~<user>/optware-arm-etch/ipkg-opt_0.99.163-9_arm.ipk
# tar -xOvzf ipkg-opt_*_arm.ipk ./data.tar.gz | tar -C / -xzvf -
- Edit /opt/etc/ipkg.conf to point to your <build-and-web-server> feed location, you can use any editor you like, or use the sed scripts below (replace <build-and-web-server> and <user> accordingly)
sed -i -e '/^dest root/i src local http://<build-and-web-server>/~<user>/optware-arm-etch' /opt/etc/ipkg.conf
- Use your local feed after building ipkg's and updating package index.
# /opt/bin/ipkg update
# /opt/bin/ipkg install <foo>