Differences between revisions 1 and 3 (spanning 2 versions)
Revision 1 as of 2006-04-14 18:47:03
Size: 1331
Editor: nchip
Comment:
Revision 3 as of 2009-03-16 03:29:38
Size: 1795
Editor: anonymous
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
Nokia 770 is a debian-based "internet tablet". The system is resource-constrained, so it has a seriously stripped Debian implementation. One easy way to use 770 for fully featured Debian development is via a nfs chroot on a host system. Nokia 770 is a debian-based "internet tablet". The system is resource-constrained, so it has a seriously stripped Debian implementation. One way to use 770 for fully featured Debian development is via a nfs chroot on a host system.

= Setting up the chroot =
Line 11: Line 13:
Prepare usb networking in /etc/network/interfaces
{{{
iface usb0 inet static
        address 192.168.2.14
        netmask 255.255.255.0
}}}

(optional) Ip forwarding for the 770

{{{
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
}}}

Export nfs in /etc/exports
Export nfs in /etc/exports on the host computer.
Line 41: Line 29:
# insmod /mnt/initfs/lib/modules/current/g_ether.ko
# ifup usb0
# mount -t nfs -o tcp,nolock 192.168.2.14:/var/arm-chroot /nfs
# mount -t nfs -o nolock,rsize=1024,wsize=1024 192.168.2.14:/var/arm-chroot /nfs
# chroot /nfs /debootstrap/debootstrap --second-stage
Line 46: Line 34:
Run the second stage: TODO: figure out optimal nfs setttings -these are REALLY slow
Line 48: Line 36:
Have a nice cup of coffee. The second-stage above will take a while, around an hour. So maybe have a lunch as well.

= Using the chroot =

Simply
Line 49: Line 42:
chroot /nfs /debootstrap/debootstrap --second-stage # chroot /nfs
}}}
And then just use it as normal Debian development enviroinment:
{{{
# apt-get install build-buildessential
# apt-get build-dep foo
# apt-get source foo
# cd foo-version && dpkg-buildpackage -b
Line 52: Line 52:
= Have a nice cup of coffee (the stage above will take a while) = = more todo =
Line 54: Line 54:
Rest of document to follow..  * Setup [[http://maemo.org/maemowiki/HowTo_CreateSwap|swap]] - many apps/compilers take lots of RAM
 * direct initfs -> nfs boot to reclaim more memory
 * Figure out why the kernel crashes sometimes with nfs
 * Guide for IT2006 edition (nfs support removed from kernel, need to build more modules)
   * ready-build IT2006 OS debian package to automate the whole setup possible
   * armel support as well
   * sbrsh as well

Using Nokia 770 as Debian/Arm porting machine

Nokia 770 is a debian-based "internet tablet". The system is resource-constrained, so it has a seriously stripped Debian implementation. One way to use 770 for fully featured Debian development is via a nfs chroot on a host system.

Setting up the chroot

On a host system:

debootstrap --foreign --arch arm sid /var/arm-chroot http://ftp.es.debian.org/debian

Export nfs in /etc/exports on the host computer.

/var/arm-chroot 192.168.2.15(rw,no_root_squash,sync)

Setup the 770 in r&d mode by running flasher on the host system.

flasher --enable-rd-mode

Boot the 770 and finish the debootstrap (xterm needed on the 770):

$ sudo gainroot
# mount -t nfs -o nolock,rsize=1024,wsize=1024  192.168.2.14:/var/arm-chroot /nfs
# chroot /nfs /debootstrap/debootstrap --second-stage

TODO: figure out optimal nfs setttings -these are REALLY slow

Have a nice cup of coffee. The second-stage above will take a while, around an hour. So maybe have a lunch as well.

Using the chroot

Simply

# chroot /nfs

And then just use it as normal Debian development enviroinment:

# apt-get install build-buildessential
# apt-get build-dep foo
# apt-get source foo
# cd foo-version && dpkg-buildpackage -b

more todo

  • Setup swap - many apps/compilers take lots of RAM

  • direct initfs -> nfs boot to reclaim more memory

  • Figure out why the kernel crashes sometimes with nfs
  • Guide for IT2006 edition (nfs support removed from kernel, need to build more modules)
    • ready-build IT2006 OS debian package to automate the whole setup possible
    • armel support as well
    • sbrsh as well