<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-text-html" lang="x-western"> Hi guys,<br>
      <br>
      Many thanks for the terrific work on toybox.  I just saw the video
      by Mr. Landley on the toybox home page, and I was blown away by
      the vision of the future of the phone, and the trenchant analysis
      of the state of the GPL ecosystem.<br>
      <br>
      Usually when I have a software problem I will write a pointed
      email to a list like this detailing exactly what went wrong and
      asking for help.  This is a bit more broad and you might decide it
      doesn't belong in your forum. <br>
      <br>
      I decided the other day to install Debian on my Motorola Milestone
      2 phone.  The typical way to do this is with a loopback mounted
      file that contains  a prepackaged distribution that is almost
      always Ubuntu.  Here is one here:<br>
      <a class="moz-txt-link-freetext"
href="http://androlinux.com/android-ubuntu-development/how-to-install-ubuntu-on-android/">http://androlinux.com/android-ubuntu-development/how-to-install-ubuntu-on-android/</a><br>
      If you surf the web you will find a dozen web sites like this.<br>
      <br>
      I rapidly determined that my phone has a locked bootloader and I
      could not replace the kernel with one that supported loop file
      systems. ( I have since learned that I can ,theoretically at
      least, compile loop support as a loadable module.  Incidentally,
      what is the point of locking the bootloader if you let people load
      modules?).  I partitioned 3GB of an SDcard as ext3 and found
      debootstrap in a .deb and tried to run it.  I wish I had kept a
      log of all the problems I had because there where dozens of them. 
      I eventually gave up and dded the partition to a redhat machine
      and debootstraped it with the aid of qemu. Now I have a Debian
      install, so I put it back on the phone and fired it up.  Or tried
      to.  Chroot didn't work. It says:<br>
      <br>
      bash-4.1# chroot .<br>
      chroot .<br>
      Segmentation fault<br>
      <br>
      Not terribly informative.  It struck me that it was looking for
      /bin/sh.  I ran strings on busybox and it looks like it is
      hardcoded in there.  So I setup a symlink in /bin ( this will be
      erased on reboot by the way). No dice.  Normally my next move
      would be to run strace on chroot to find the issue, but it looks
      like I don't have strace.  Not having any diagnostic tools to work
      with, I tried replacing busybox with toybox. Still no dice.  <br>
      <br>
      So, long story short, Debian is not working on my phone.  <br>
      <br>
      In the course of doing all this I got to thinking about what
      problem I was setting out to solve in the first place.  Putting
      Debian on your phone has some cool factor, but isn't the phone
      running Linux already?  What do I hope to get out of it?  More to
      the point, the inconvenience  of running in a chroot takes away
      from some of the enjoyment of running desktop apps on my phone.
      What applications exactly did I hope to run on the phone?  Well,
      there's octave, wireshark, gimp, ssh server and maybe eclipse. 
      Just checking the google store, it looks like octave and wireshark
      are already there, gimp is in progress and ssh was one of the
      first apps ported.   Eclipse is not likely to be ported to android
      any time soon, but doing development on eclipse an a 3.5 inch
      screen is going to get old in a hurry. This brings up another
      point. The entire thing with the phone is that it benefits from a
      symbiotic relationship with servers.  The client server paradigm
      was practically invented for the phone.  I have had the phone for
      several years and I have been happy with just using the ssh client
      and using a web browser, because every single thing that I want to
      see or use is available from one or the other.  I don't even get
      my mail on the phone.  The web-mail works fine.  Denninger wrote a
      piece the other day about cell phones as desktop replacements :<br>
      <a class="moz-txt-link-freetext"
        href="http://market-ticker.org/akcs-www?post=222877">http://market-ticker.org/akcs-www?post=222877</a><br>
      It looks OK as far as it goes, but I think it ignores the reality
      of ubiquitous computing. Cell phones, or tablets ( or even
      laptops) don't need to be self hosting if they are always
      connected to the network and there are servers available. 
      Moreover, look at the relative sizes of these partitions:<br>
      <br>
      <br>
      <br>
      <table x:str="" style="border-collapse: collapse;" border="0"
        cellpadding="0" cellspacing="0" height="280" width="619">
        <colgroup><col
            style="mso-width-source:userset;mso-width-alt:4352;width:89pt"
            width="119"> <col
            style="mso-width-source:userset;mso-width-alt:1426;
            width:29pt" span="3" width="39"> <col
            style="mso-width-source:userset;mso-width-alt:1828;width:38pt"
            width="50"> </colgroup><tbody>
          <tr style="height:12.75pt" height="17">
            <td style="height:12.75pt;width:89pt" height="17"
              width="119"><a name="RANGE!A1:E13">Filesystem</a></td>
            <td style="width:29pt" width="39">Size</td>
            <td style="width:29pt" width="39">Used</td>
            <td style="width:29pt" width="39">Free</td>
            <td style="width:38pt" width="50">Blksize</td>
          </tr>
          <tr style="height:12.75pt" height="17">
            <td style="height:12.75pt" height="17">/dev</td>
            <td>237M</td>
            <td>44K</td>
            <td>237M</td>
            <td x:num="" align="right">4096</td>
          </tr>
          <tr style="height:12.75pt" height="17">
            <td style="height:12.75pt" height="17">/mnt/asec</td>
            <td>237M</td>
            <td>0K</td>
            <td>237M</td>
            <td x:num="" align="right">4096</td>
          </tr>
          <tr style="height:12.75pt" height="17">
            <td style="height:12.75pt" height="17">/mnt/obb</td>
            <td>237M</td>
            <td>0K</td>
            <td>237M</td>
            <td x:num="" align="right">4096</td>
          </tr>
          <tr style="height:12.75pt" height="17">
            <td style="height:12.75pt" height="17">/system</td>
            <td>325M</td>
            <td>296M</td>
            <td>28M</td>
            <td x:num="" align="right">1024</td>
          </tr>
          <tr style="height:12.75pt" height="17">
            <td style="height:12.75pt" height="17">/data</td>
            <td>6G</td>
            <td>594M</td>
            <td>5G</td>
            <td x:num="" align="right">4096</td>
          </tr>
          <tr style="height:12.75pt" height="17">
            <td style="height:12.75pt" height="17">/cache</td>
            <td>193M</td>
            <td>5M</td>
            <td>188M</td>
            <td x:num="" align="right">1024</td>
          </tr>
          <tr style="height:12.75pt" height="17">
            <td style="height:12.75pt" height="17">/data/tmp</td>
            <td>2M</td>
            <td>28K</td>
            <td>1M</td>
            <td x:num="" align="right">4096</td>
          </tr>
          <tr style="height:12.75pt" height="17">
            <td style="height:12.75pt" height="17">/pds</td>
            <td>3M</td>
            <td>1M</td>
            <td>2M</td>
            <td x:num="" align="right">1024</td>
          </tr>
          <tr style="height:12.75pt" height="17">
            <td style="height:12.75pt" height="17">/preinstall</td>
            <td>254M</td>
            <td>12M</td>
            <td>242M</td>
            <td x:num="" align="right">1024</td>
          </tr>
          <tr style="height:12.75pt" height="17">
            <td style="height:12.75pt" height="17">/mnt/sdcard</td>
            <td>26G</td>
            <td>2G</td>
            <td>23G</td>
            <td x:num="" align="right">16384</td>
          </tr>
          <tr style="height:12.75pt" height="17">
            <td style="height:12.75pt" height="17">/mnt/secure/asec</td>
            <td>26G</td>
            <td>2G</td>
            <td>23G</td>
            <td x:num="" align="right">16384</td>
          </tr>
          <tr style="height:12.75pt" height="17">
            <td style="height:12.75pt" height="17">/mnt/sdcard/debian</td>
            <td>2G</td>
            <td>283M</td>
            <td>2G</td>
            <td x:num="" align="right">4096<br>
            </td>
          </tr>
        </tbody>
      </table>
      <br>
      /system                     296M<br>
      /mnt/sdcard/debian 283M<br>
      <br>
      A full featured Debian is the same size as Android! What is the
      point of reinventing the wheel?  Isn't this the problem space that
      netbsd was invented to solve?  Is the entire exercise just about
      making something palatable to Google?  Denninger is pushing the
      blackberry hard. I'm inclined to agree in principle.  The only
      reason I don't change is that I don't like the blackberry
      keyboard. Think about it, you are throwing over the C library, the
      guts of the /etc directory, the entire user-land, why cling to the
      kernel?  What is it you like about it? Is it the license? You just
      made a powerful case that the license was dead.  Why are you
      helping the same people that would be perfectly happy to
      waterboard Snowden for the rest of his natural?<br>
      <br>
      <br>
      Yours, -dave<br>
    </div>
  </body>
</html>