From mboxrd@z Thu Jan 1 00:00:00 1970 MIME-Version: 1.0 In-Reply-To: <4e7404bb.270b650a.3d87.ffffc50c@mx.google.com> References: <4e7404bb.270b650a.3d87.ffffc50c@mx.google.com> Date: Fri, 16 Sep 2011 22:35:51 -0400 Message-ID: From: "Devon H. O'Dell" To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Content-Type: multipart/alternative; boundary=00151773e422e7f96204ad19f7c5 Subject: Re: [9fans] Announcing Inferno for Android phones Topicbox-Message-UUID: 2512b90c-ead7-11e9-9d60-3106f5b1d025 --00151773e422e7f96204ad19f7c5 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable How difficult is it to get specs and port this to other android devices? I'= d love to run this on my motorola droid if I could get all the radios working= . --dho (via said droid) On Sep 16, 2011 10:25 PM, "paul.a.lalonde@gmail.com" < paul.a.lalonde@gmail.com> wrote: > For all these plan9ish things on OSX I run a case-sensitive file-system i= n a file; just use the Disk Utility to make one and then mount it. I link min= e into my home directory and use it for all case-sensitive apps. > Paul > > Sent from my HTC Inspire=99 4G on AT&T > > ----- Reply message ----- > From: "John Floren" > To: "Fans of the OS Plan 9 from Bell Labs" <9fans@9fans.net>, < inferno-list@vitanuova.com> > Subject: [9fans] Announcing Inferno for Android phones > Date: Fri, Sep 16, 2011 7:01 pm > > > One caveat that I just came across: If you're trying to set up your > phone from Mac OS X, it's quite possible that the case-insensitive > filesystem will bite you. We have two directories at the same level, > named "android" and "Android". If you do an adb push from OS X, > they'll both end up in a directory called "android". Here's how you > can fix it: > > (run adb shell) > # mkdir /data/inferno/Android > # mv /data/inferno/android/arm /data/inferno/Android/ > > There may be other problems lurking, but I'm pretty sure all of the > stuff Inferno needs is all lowercase. > > > John > > On Fri, Sep 16, 2011 at 3:23 PM, John Floren wrote: >> We would like to announce the availability of Inferno for Android >> phones. Because our slogan is "If it ain't broke, break it", we >> decided to replace the Java stack on Android phones with >> Inferno. We've dubbed it the Hellaphone--it was originally Hellphone, >> to keep with the Inferno theme, but then we realized we're in Northern >> California and the change was obvious. >> >> The Hellaphone runs Inferno directly on top of the basic Linux layer >> provided by Android. We do not even allow the Java system to >> start. Instead, emu draws directly to the Linux framebuffer (thanks, >> Andrey, for the initial code!) and treats the touchscreen like a >> one-button mouse. Because the Java environment doesn't start, it only >> takes about 10 seconds to go from power off to a fully-booted Inferno >> environment. >> >> As of today, we have Inferno running on the Nexus S and the Nook >> Color. It should also run on the Android emulator, but we haven't >> tested that in a long time. The cell radio is supported, at least on >> the Nexus S (the only actual phone we've had), so you can make phone >> calls, send texts, and use the data network. >> >> The Inferno window manager has been re-worked with cell phone use in >> mind. Windows are automatically sized to fill the whole screen. The >> menu has been moved to the top and the menu items have been made >> significantly larger. Physical buttons on the phone are now used to do >> many common tasks: >> >> (these keys are for the Nexus S, different bindings are used for >> the Nook, which has different keys available) >> * Back: Close the current window >> * Menu: Toggle the onscreen keyboard >> * Home: Minimize the current window >> * Power: Turn off the screen >> * Power+Volume Up: Open the screen brightness widget >> * Power+Volume Down: Turn off the phone >> * Power+Home: Restart Inferno >> >> Installation is reasonably simple. You'll need the Android SDK >> (http://developer.android.com/sdk/index.html), with the platform-tools >> package installed for the adb and fastboot utilities. We also strongly >> recommend installing CyanogenMod on your phone before >> proceeding--that's what we use to test. >> >> First, make absolutely sure you have the "adb" and "fastboot" >> commands in your path--see the previous paragraph regarding the >> SDK and try running "adb" to be sure. Download the tarball from >> http://bitbucket.org/floren/inferno/downloads/hellaphone.tgz and >> unpack it in your root. You should end up with a /data/inferno >> directory (we put it there because of the Inferno build >> process). Then, go to the /data/inferno/android directory and run >> the Reflash-Nexus-S.sh script (assuming you have a Nexus S. Run >> Reflash-Nook-Color.sh if you have a Nook). This will >> automatically set up the phone to boot into either Inferno or the >> regular Java environment--during bootup, the screen will go solid >> white; if you touch the screen at this point, it will boot into >> the regular Android environment, otherwise it will timeout and go >> to Inferno. However, at this point you're not yet ready to boot >> into Inferno, so reboot the phone and touch the screen to go into >> the regular Android UI. The final task is to run the command "cd >> /data/inferno; ./parallel-push.sh". Reboot, let it boot into >> Inferno, and you're ready to go. >> >> You can also clone the repository >> (http://bitbucket.org/floren/inferno/) and build it yourself, but this >> is a significant effort. I do not recommend it if you wish to simply >> try the system, but if you want to do development you should get the >> repository. >> >> Disclaimer: If you break your phone, it's not our fault. Don't email >> us, don't come knocking on our door, and don't call us--oh wait, you >> won't be able to do that anyway, your phone is broken! >> >> Credit where credit is due: Ron Minnich came up with the initial >> idea--we've been kicking the idea of a Plan 9/Inferno phone around for >> years. Our summer interns, Joel Armstrong and Joshua Landgraf, did the >> lion's share of the work of making Inferno into a usable cell phone >> OS--no small feat, considering that neither had any Limbo or Inferno >> experience before the start of the summer! They re-wrote the UI, >> puzzled out the undocumented cell radio interface, figured out audio, >> worked to make Inferno more portable across phones, and generally >> figured out how to make Inferno and the Android kernel coexist >> peacefully. Andy Jones, another intern, also did some very early work >> with Android that helped us figure out the Android init process and >> how to build for Android. I took care of getting Inferno running on >> the phone in the first place and have been adding things occasionally >> since then. We would also like to thank Andrey Mirtchovski for >> providing the OLPC framebuffer code (which ported to the Android >> phones relatively easily), and of course Charles Forsyth for keeping >> the Inferno torch lit all these years (and helping me figure out some >> puzzling problems throughout the summer)! >> > --00151773e422e7f96204ad19f7c5 Content-Type: text/html; charset=windows-1252 Content-Transfer-Encoding: quoted-printable

How difficult is it to get specs and port this to other android devices?= I'd love to run this on my motorola droid if I could get all the radio= s working.

--dho (via said droid)

On Sep 16, 2011 10:25 PM, "paul.a.lalonde@gmail.com" <paul.a.lalonde@gmail.com> wrote= :
> For all these plan9ish things on OSX I run a case-sensitive file-syste= m in a file; just use the Disk Utility to make one and then mount it. I l= ink mine into my home directory and use it for all case-sensitive apps.
> Paul
>
> Sent from my HTC Inspire=99 4G on AT&T
&g= t;
> ----- Reply message -----
> From: "John Floren"= <john@jfloren.net>
> T= o: "Fans of the OS Plan 9 from Bell Labs" <9fans@9fans.net>, <inferno-list@vitanuova.com>
> Subject: [9fans] Announcing Inferno for Android phones
> Date: F= ri, Sep 16, 2011 7:01 pm
>
>
> One caveat that I just c= ame across: If you're trying to set up your
> phone from Mac OS X= , it's quite possible that the case-insensitive
> filesystem will bite you. We have two directories at the same level,> named "android" and "Android". If you do an adb = push from OS X,
> they'll both end up in a directory called "= ;android". Here's how you
> can fix it:
>
> (run adb shell)
> # mkdir /data/inf= erno/Android
> # mv /data/inferno/android/arm /data/inferno/Android/<= br>>
> There may be other problems lurking, but I'm pretty su= re all of the
> stuff Inferno needs is all lowercase.
>
>
> John>
> On Fri, Sep 16, 2011 at 3:23 PM, John Floren <john@jfloren.net> wrote:
>> We wo= uld like to announce the availability of Inferno for Android
>> phones. Because our slogan is "If it ain't broke, break i= t", we
>> decided to replace the Java stack on Android phones= with
>> Inferno. We've dubbed it the Hellaphone--it was origi= nally Hellphone,
>> to keep with the Inferno theme, but then we realized we're in = Northern
>> California and the change was obvious.
>>
= >> The Hellaphone runs Inferno directly on top of the basic Linux lay= er
>> provided by Android. We do not even allow the Java system to
&g= t;> start. Instead, emu draws directly to the Linux framebuffer (thanks,=
>> Andrey, for the initial code!) and treats the touchscreen like= a
>> one-button mouse. Because the Java environment doesn't start, = it only
>> takes about 10 seconds to go from power off to a fully-= booted Inferno
>> environment.
>>
>> As of today= , we have Inferno running on the Nexus S and the Nook
>> Color. It should also run on the Android emulator, but we haven= 9;t
>> tested that in a long time. The cell radio is supported, at= least on
>> the Nexus S (the only actual phone we've had), so= you can make phone
>> calls, send texts, and use the data network.
>>
>&g= t; The Inferno window manager has been re-worked with cell phone use in
= >> mind. Windows are automatically sized to fill the whole screen. Th= e
>> menu has been moved to the top and the menu items have been made>> significantly larger. Physical buttons on the phone are now used= to do
>> many common tasks:
>>
>> =A0 =A0(these= keys are for the Nexus S, different bindings are used for
>> the Nook, which has different keys available)
>> =A0 =A0*= Back: Close the current window
>> =A0 =A0* Menu: Toggle the onscr= een keyboard
>> =A0 =A0* Home: Minimize the current window
>= > =A0 =A0* Power: Turn off the screen
>> =A0 =A0* Power+Volume Up: Open the screen brightness widget
>= ;> =A0 =A0* Power+Volume Down: Turn off the phone
>> =A0 =A0* P= ower+Home: Restart Inferno
>>
>> Installation is reasonab= ly simple. You'll need the Android SDK
>> (http://de= veloper.android.com/sdk/index.html), with the platform-tools
>>= ; package installed for the adb and fastboot utilities. We also strongly >> recommend installing CyanogenMod on your phone before
>> = proceeding--that's what we use to test.
>>
>> First, = make absolutely sure you have the "adb" and "fastboot"<= br> >> commands in your path--see the previous paragraph regarding the>> SDK and try running "adb" to be sure. Download the tarb= all from
>> http://bitbucket.org/floren/inferno/downloads/hellaphone= .tgz and
>> unpack it in your root. You should end up with a /data/inferno
= >> directory (we put it there because of the Inferno build
>>= ; process). Then, go to the /data/inferno/android directory and run
>> the Reflash-Nexus-S.sh script (assuming you have a Nexus S. Run>> Reflash-Nook-Color.sh if you have a Nook). This will
>> = automatically set up the phone to boot into either Inferno or the
>&g= t; regular Java environment--during bootup, the screen will go solid
>> white; if you touch the screen at this point, it will boot into>> the regular Android environment, otherwise it will timeout and go=
>> to Inferno. However, at this point you're not yet ready to= boot
>> into Inferno, so reboot the phone and touch the screen to go into<= br>>> the regular Android UI. The final task is to run the command &q= uot;cd
>> /data/inferno; ./parallel-push.sh". Reboot, let it = boot into
>> Inferno, and you're ready to go.
>>
>> You c= an also clone the repository
>> (http://bitbucket.org/floren/inferno/) and build it your= self, but this
>> is a significant effort. I do not recommend it if you wish to simp= ly
>> try the system, but if you want to do development you should= get the
>> repository.
>>
>> Disclaimer: If you= break your phone, it's not our fault. Don't email
>> us, don't come knocking on our door, and don't call us--oh= wait, you
>> won't be able to do that anyway, your phone is b= roken!
>>
>> Credit where credit is due: Ron Minnich came= up with the initial
>> idea--we've been kicking the idea of a Plan 9/Inferno phone ar= ound for
>> years. Our summer interns, Joel Armstrong and Joshua L= andgraf, did the
>> lion's share of the work of making Inferno= into a usable cell phone
>> OS--no small feat, considering that neither had any Limbo or Infer= no
>> experience before the start of the summer! They re-wrote the= UI,
>> puzzled out the undocumented cell radio interface, figured= out audio,
>> worked to make Inferno more portable across phones, and generally<= br>>> figured out how to make Inferno and the Android kernel coexist<= br>>> peacefully. Andy Jones, another intern, also did some very earl= y work
>> with Android that helped us figure out the Android init process an= d
>> how to build for Android. I took care of getting Inferno runn= ing on
>> the phone in the first place and have been adding things= occasionally
>> since then. We would also like to thank Andrey Mirtchovski for
= >> providing the OLPC framebuffer code (which ported to the Android>> phones relatively easily), and of course Charles Forsyth for kee= ping
>> the Inferno torch lit all these years (and helping me figure out s= ome
>> puzzling problems throughout the summer)!
>>
&g= t;
--00151773e422e7f96204ad19f7c5--