Re: [9fans] Announcing Inferno for Android phones

2011-09-17 Thread Joel Armstrong
On Sat, Sep 17, 2011 at 9:29 AM, ron minnich  wrote:
>
> OK, more data this morning.
>
> Since the cyanogen upgrade, no linux vm I have on OSX/VMWare can
> enumerate the phone over USB. This is a very common problem as
> revealed by any search.
>
> On the one linux box I have, the phone is enumerated as a USB storage.
> There may be some setting I need to reset ... but that box, having
> been turned off since april, seems to have decided it can't do wifi
> more ... so, that's not an option at present!
>
> I did try downloading the android sdk on a clean vmware-based linux
> platform. No fastboot in there. So far the only fastboot I have is the
> one I built from source during android bootcamp.
>
> You can NOT install inferno from anything but Linux. There are a few
> linux tool dependencies in th scripts that can not be satisfied (yet)
> on a mac. I am going to see what is possible.
>
> I continue to be amused that all these Java "write once run
> everywhere" environments always come with a huge stack of "this CPU,
> this OS, this version" programs without which they can not function.
> Hmm. All I need with inferno is emu. Maybe inferno can teach them some
> things :-)
>
> Finally, it's a linux phone: I keep thinking I ought to be able to do
> the install scripts on the phone, not on some other box and download
> them. If I can figure out where to plug in an SD card -- it claims to
> have one! -- I might just give that a go.

If I'm understanding right, you have adb but not fastboot on Mac,
right? As long as your phone is unlocked, you can still install
inferno on the Nexus with just adb by manually flashing the boot
partition. Once you've pushed everything over to /data/inferno, run
the Reflash-Nexus-S.sh script. It should fail at the fastboot step,
but that's fine. Reboot the phone into Cyanogen. Then, from the same
folder as the Reflash-Nexus-S.sh script:
$ adb shell mount -o remount,rw /
$ adb push boot-inferno.img
$ adb shell
Now you'll be in an Android shell.
android$ cat /proc/mtd
This will hopefully give you a list of "mtd" devices and their names.
We only care about the one called "boot."
android$ cat /dev/zero > /dev/mtd/<"boot" device from above>
The zeroing step may not be necessary, but I've never tried flashing
the boot manually without it.
android$ flash_image boot /boot-inferno.img
Then reboot and it should work.
If it's broken, the good news is it's nearly impossible to screw up
the recovery partition. Boot into the bootloader by holding the power
and volume up buttons, then enter the recovery mode and reinstall
Cyanogen.



Re: [9fans] Announcing Inferno for Android phones

2011-09-17 Thread Joel Armstrong
On Sat, Sep 17, 2011 at 11:02 AM, John Floren  wrote:
>
> Terrible video: http://www.youtube.com/watch?v=dF_-jQc53jw

Pretty good for being shot with a laptop webcam! I think incoming
calls should be working, though, unless I screwed something up between
last week and now (which is likely). The phone won't beep or anything
when a call comes in, but if you open up the dialer application the
status should say "incoming (155)" and the dial button should
change to an answer button, etc.

Side note: I'm attempting to port to my HTC Inspire and by far the
biggest difficulty seems to be just getting the Android source to
compile, especially since you have to rely on mirrors since the
kernel.org attacks. I'm running into the USB enumeration errors as well.



Re: [9fans] Announcing Inferno for Android phones

2011-09-17 Thread Joel Armstrong
On Sat, Sep 17, 2011 at 1:26 PM, ron minnich  wrote:
> joel, on osx, some scripts are not there. I was more concerned about
> this than the flash failures because I'm not sure what they do.
>
> sh: mkbootimg: command not found
>
> Where did your version of this one come from? It's nowhere on my machine.
It comes from the full Android source. I guess it doesn't make sense
for it to be in the SDK. The android git server is dead right now, but
you can fetch a mirror of this specific sub-project at
https://github.com/CyanogenMod/android_system_core/android_system_core.
It's in system/core if you already have an Android source tree.
The Android build system is a pain in general, but especially if you
just want to build a specific executable, so from the cloned
system_core tree:
cd libmincrypt
gcc -I../include/ -o sha.o -c sha.c
mv sha.o ../mkbootimg/
gcc -I../include/ -o mkbootimg -c mkbootimg.c
gcc -o mkbootimg mkbootimg.o sha.o
should do it.

Fastboot is in that tree too if you need a mac version.



Re: [9fans] Announcing Inferno for Android phones

2011-09-17 Thread Joel Armstrong
> It comes from the full Android source. I guess it doesn't make sense
> for it to be in the SDK. The android git server is dead right now, but
> you can fetch a mirror of this specific sub-project at
> https://github.com/CyanogenMod/android_system_core/android_system_core.
URL correction: it's https://github.com/CyanogenMod/android_system_core.