Because this HowTo spans 24 printed pages, I host it at my own site. While you're there, download my update of the installer for Debian Wheezy and check out my screenshots. Finally, for your printing convenience, I have also posted an earlier version of this HowTo in PDF format.
My own personal goals for this project are listed below. If they help you achieve your own goals, then please help others by posting your configurations and by contributing your own documentation. To that end, please add suggestions in the discussion thread.
AnX11 Phone Project
In a room full of economists, I'm the only one who runs regressions on a 5-ounce phone. My colleagues still carry 5-pound laptops.
Major vendors of mathematical and statistical software have only produced apps that connect to another computer or a proprietary server. By contrast, I can solve differential equations, plot likelihood functions and run regressions directly on my phone. It's a nice "on the go" solution and it's a relaxing way to work.
In a forum full of people with Debian on their Android phones, I'm one of the few who can make phone calls and send SMS messages from within the Debian environment.
I just "#!/bin/su -l eryk" from the Android environment into the Debian environment where I can "sudo -u shell /system/bin/service call phone 2 s16 $FON".
But it's more fun to "/system/bin/am start" an Xserver and "env DISPLAY=:0 /usr/bin/startlxde". That gives me a Debian desktop with a one-mile long $PATH, an even longer $BOOTCLASSPATH and a mysterious $LD_LIBRARY_PATH, all of which I can use to "am startservice" a messenger that sends $MSG to $FON.
My friends and I can then send each other text messages while I estimate a multinomial logit model on my phone, type up the results in LaTeX on my phone and send the finished product to a printer from my phone.
It might be easier to type the results in LibreOffice Writer on my phone, but that would expose the fact that I have no idea what I am talking about.
I'm an economist, not a computer scientist. Why is one of the world's first Debian phones in my hands? I did not write enough code to deserve this blessing!
But it's important to me because X11 applications are the only fully-featured mathematical and statistical tools that run on an Android phone.
Proprietary software vendors have only produced apps with limited functionality. MathWorks (maker of MatLab) provides an app that connects to another computer. Wolfram (maker of Mathematica) provides an app that connects to a proprietary server. MapleSoft provides an app that reads Maple files written for a computer, but does not allow users create or modify Maple files. The SAS Institute rovides a version of its "Business Intelligence" for mobile devices, but other major vendors of statistical software (e.g. Stata and EViews) have not produced any mobile apps at all.
The lack of professional tools for mobile devices prevents a small, but significant number of people from using new technology to its full potential.
AnX11 Phone project -- a project that aims to put the power of X11 applications to work on Android devices -- could meet their needs.
In my field (economics), X11 applications like wxMaxima, qtOctave and Gretl can be used on a phone in place of Mathematica, MatLab and EViews. An economist might also find that R runs well in Rgedit (an X11 application) and can be used in place of SAS or Stata.
Just as importantly, X11 provides toys and games for small children. If she wants, my three-year old niece can use an X11 application like KTuberling to draw a funny-faced potato or create a moonscape with spaceships and aliens. And as she gets older, she might make use of the X11 that applications that the SkoleLinux project has identified as suitable for use in schools.
I welcome the switch from desktops and laptops to phones and tablets and I welcome the new software that comes with the new devices, but the switch should not require us to discard all software that came before it, particularly not in cases where we do not have any new software to replace it.
AnX11 Phone project could meet the professional needs of people like me and the educational needs of my niece. Thanks to the open-source community, we already have all of the pieces that we need. All we have to do now is snap them together.
Sven-Ola Tuecke provided a major piece of that integration when he bind-mounted Debian to the root of the Android file system (as opposed to running Debian in a chroot environment). His method of fusing the two operating systems into one is what allows me to make phone calls and send SMS messages from my phone's Debian desktop.
Running X11 applications in an XServer app (such as Sergii Pylypenko's XServer-XSDL) further integrates the Debian and Android systems because it enables X11 applications to run in their native environment (as opposed to running inside a VNC or RDP client).
In a fully integrated system, one would expect the Debian environment to start when the phone boots. Here again, we're on solid ground. It is not just possible for the Android system to start Debian. Mikael Kuisma has shown that it is possible to have Debian start the Android system.
Since a bind-mounted Debian can start an XServer app directly, these three forms of integration imply that the average user could (in theory) run an entire Debian desktop on their phone without ever seeing the command line.
AnX11 Phone is at hand. All of the software toys necessary to help small children learn and to make big children more productive has already been written. We just have to assemble the pieces.
I would like to assemble the pieces into something beautiful for myself, for my niece and for my students. To that end, I plan to document the steps that I took to make Debian run natively on my phone and explore the steps that could be taken to create make this system run smoothly for others.
AnX11 Phone is at hand. Let's make it beautiful.