Scratchbox on Ubuntu Feisty

I’m using a dodgy fork of Scratchbox 0.9.8 so I can use apt-get through https instead of http, but the following tips should be relevant for the regular Scratchbox 1.0.x that I’d rather be using.

  • Make sh point to bash instead of dash (probably not necessary for Scratchbox 1.0.newenough):
    sudo rm /bin/sh
    sudo ln -s bash /bin/sh
  • Install linux-image-2.6.20-6-generic and boot from it. You’ll probably need to press Esc when booting to see the boot menu. This vdso bug might be fixed in Ubuntu’s linux-image-2-6.20-10 soon.
    If you don’t do this then you’ll see this error after logging in:
    Inconsistency detected by ld.so: rtld.c: 1192: dl_main: Assertion `(void *) ph->p_vaddr == _rtld_local._dl_sysinfo_dso’ failed!
  • If you see this error while installing some packages, such as docbook-utils,
    ERROR: ld.so: object ‘/usr/lib/libfakeroot/libfakeroot-tcp.so.0’ from LD_PRELOAD cannot be preloaded: ignored.
    then fix your fakeroot like so, while logged in:
    sbox-config –copy-libfakeroot
  • Update: You’ll need to correct the hosts line in your /scratchbox/etc/nsswitch.conf file, so that apt-get can resolve domain names (wget will work without this, which is confusing).
  • Update2: That nsswitch.conf corrections seems to still be necessary with Ubuntu Gutsy and the latest Scratchbox version (as of July 29th 2007).

Ross Burton helped me with most of this. Thanks, Ross

3 thoughts on “Scratchbox on Ubuntu Feisty

  1. You mean bash instead of dash (stress on the letter “b”):

    sudo ln -s bash /bin/sh

    Actually, the elegant way of change the /bin/sh link is running the following command:

    sudo dpkg-reconfigure dash

    And then select “No” when prompted.

    Best regards, Etrunko

Leave a Reply

Your email address will not be published. Required fields are marked *