The official tutorial is excellent to do all the process smoothly, you will need
to read it first. I wanted to share with you some problems I found building Firefox OS for the Geeksphone Peak. I am using ArchLinux, but some of the problems aren't OS related.
After getting the B2G code you will need to use the
./config.sh to build it for the Peak, It's not in the documentation but you actually can build the peak (the options are there for this device).
To do it you will need its manifest, you can find it in.
git clone git://github.com/mozilla-b2g/b2g-manifest.git
So when you want to build it for Peak without the manifest it will crash, but you can just get the
peak.xml from the previous repository.
./config.sh peak route_for_b2g-manifest/peak.xml
Following the official instructions and doing this for the Peak you will be able to config B2G for your device.
When this is finished you will need to have your device connected to run
Keep in mind you need to create the udev rule as It's documented in the Mozilla instructions.
When the build is done you can flash it, so having the Android SDK correctly installed and in the
PATH, you can just.
If it doesn't work(it just freezes in waiting for device) I realised I would need root permissions for one of the commands in the script, the one unlocking the Bootloader,
fastboot oem unlock, so If It doesn't work for you try with...
This didnt't work for me because the bootloader was still locked, so this was what I did to fix that.
adb reboot bootloader sudo fastboot oem unlock
In the chinese page you can push
Vol+ to change the checkbox, once is changed you just push the
Power button. That's it! You have your phone unlocked! :-)
Now we could flash the phone, the OS image has changed, so you need to activate the developer remote debugging again to use the flash script.
Once you do that, you just...
./flash.sh # or sudo ./flash.sh
And that will be it! Have fun!
Note: I couldn't record the errors I had in the process, sorry, but If you have any doubts don't hesitate to ask,
I will try to answer when I have time.