Firefox OS for Raspberry Pi

Oleg Romashin has got a long way already with a port of the open-platform OS to the Raspberry Pi. Firefox OS is scheduled to release some time in 2013; we’re excited to see it’ll be an option for the Raspberry Pi, and it’s fascinating watching work like this progress. In the video below you’ll see Gecko runtime doing its thing, along with some WebGL animations at 60fps.

Oleg’s a Principal Engineer at Nokia. He’s made a download of the work-in-progress port to Raspberry Pi available (this is a direct download link to the tarball; there isn’t currently any other content on his site) if you want to join in the fun.

49 comments

Avatar

Sweet!

Avatar

I might be missing something, but it just looks like Linux running the Firefox browser full screen? Or is there something more to the Firefox OS?

Avatar

it is still “the work-in-progress port”, but more info for Firefox OS (Boot 2 Gecko) u can find there:
https://en.wikipedia.org/wiki/Firefox_OS
http://www.mozilla.org/en-US/b2g/

Avatar

Wow, something I want to try too! Any instructions on how to install the tar.gz?

Avatar

Disclaimer: I’ve downloaded the tar.gz file but haven’t got my raspberrypi handy so haven’t tried any of this yet :-)

Install raspbian (or any other distro that you like).
Download the tar.gz file
extract it (tar -xzf )
cd b2g
./b2g

Just guessing here :-)

Avatar

I dont really believe that but I will try

Avatar

This could be a real monstrosity if it’s as buggy as the browser.

Avatar

The browser only got that way after years of parallel development by a bajillion different people; back in the old days, when you only ran a couple of extensions and when the software was still quite young, it was very different. I miss the old days.

Avatar

there is no bug free software, some mobile companies/telecoms want to sell phones with Firefox OS in 2013 so if they decided to do it i assumed that they got more info about this OS and it is quite good (more or less buggy like other mobile OSes) to sell phones with it

RPi is new product, it is nice that more people wants to port their software on it, all software will have bugs, and first RPi users are somekind bug hunters, i hope that in the future more of us could fix those bugs ourselves – Philip from earlier post could be one of them

Avatar

I’ve been using Firefox on Linux (ubuntu/fedora) and on android a lot lately and in my experience it crashes less then either chrome or (on android) the default android browser.

The only thing that will let it crash on my machines is the firebug addon in combination with some specific javascript frameworks like fermata.

I actualy prefer it nowadays on both my main PC’s (linux) and phone.

Avatar

How can i install the tar.gz?

Avatar

Attempting load of libEGL.so
Failed to create EGL config!
Segmentation fault

Avatar

Same on the old debian image

Avatar

Sharing it as torrent.
Please keep seeding to keep it alive.

http://thepiratebay.se/torrent/7537535

Greets.

Avatar

Liz, it’s fascinating indeed!

Avatar

I get error below, although the file does exist. Running on Raspbian armhf.

Tips?

pi@raspberrypi ~/kul/b2g $ ./b2g
XPCOMGlueLoad error for file /home/pi/kul/b2g/libxpcom.so:
/home/pi/kul/b2g/libxpcom.so: cannot open shared object file: No such file or directory
Couldn’t load XPCOM.
pi@raspberrypi ~/kul/b2g $

pi@raspberrypi ~/kul/b2g $ file /home/pi/kul/b2g/libxpcom.so
/home/pi/kul/b2g/libxpcom.so: ELF 32-bit LSB shared object, ARM, version 1 (SYSV), dynamically linked, BuildID[sha1]=0xb91ddee75d90d37d6b3c8d7dd762b3bdd2dab3b5, not stripped
pi@raspberrypi ~/kul/b2g $

Avatar

for testers, from info on liliputing:
“If you want to take Firefox OS for a spin on a Raspberry Pi, you can download the latest build with “rasp_pi” in the name from Romashin’s website. Just note that this build is based on Debian Squeezy Linux without an X11 Window system.”
http://liliputing.com/2012/08/early-build-of-firefox-os-ported-to-the-raspberry-pi.html

try to use Debian Squeezy or Puppy (based on Squeezy)
i myself waiting for my RPi, currently using quemu (maybe will try to install this port on my virtual machine) so can’t help now, but i’ve sent email to Oleg, maybe he (i hope) post some info here

or at least we will find some info via google when more people will try to check this port on RPi

Avatar

I’m getting the same error :(

Avatar

How can i install the tar.gz?

Avatar

It doesnt work with this guide and the old debian squeeze image from april, I tried it on another SD card.
I get this:
pi@raspberrypi:~$ ls
b2g b2g-17.0a1.en-US.linux-gnueabi-arm_rasp_pi_linuxgl.tar.gz Desktop
pi@raspberrypi:~$ cd b2g
pi@raspberrypi:~/b2g$ ldd b2g
libpthread.so.0 => /lib/libpthread.so.0 (0x4034e000)
libdl.so.2 => /lib/libdl.so.2 (0x400a2000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x400d2000)
libm.so.6 => /lib/libm.so.6 (0x401cb000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x40087000)
libc.so.6 => /lib/libc.so.6 (0x4036e000)
/lib/ld-linux.so.3 (0x40052000)
pi@raspberrypi:~/b2g$ ./b2g -profile profile
LinuxGL:/build/mozdev/xulrunner/mozilla-central/widget/linuxgl/Framebuffer.cpp:GetSize :155: Error opening framebuffer device
Use usedv mouse: fd:16
Honk:/build/mozdev/xulrunner/mozilla-central/widget/linuxgl/nsWindow.cpp:InitPlatform :168: eglW:0x465b5900, sz[0,0], win:0x465b5900

Opened socket on 9999
Attempting load of libEGL.so
Failed to create EGL config!
Segmentation fault
pi@raspberrypi:~/b2g$

Avatar

Hi guys does this mean that flash would work with this Firefox browser

Avatar

no Flash i’m afraid (it is Adobe stuff, iOS doesen’t have and Android will be abandoned soon), i’m not the developer but FirefoxOS is not the browser (it have some similarity with ChromeOS i think) it only uses Gecko layout engine (the heart of Firefox browser and forks) to show everything on the screen (GUI) using open Internet standards like: HTML5, Javascript and CSS – developers are doing nice apps and games with those three technologies, u can try some there:
http://www.netmagazine.com/features/top-20-html5-games
http://dougx.net/plunder/plunder.html

Avatar

Wow, the UTAH teapot! I haven’t seen that in a while. :)

Avatar

Yeah! Brings back memories :D

Avatar

OK, about the “Couldn’t load XPCOM.” error message:

I only get that error on the Raspbian image, not on the older asbradbury image. So … possibly the b2g is not suited for Raspbian?

Alas I only have very remotely ssh-only access to the asbradbury image, so I have not yet gotten a beautiful b2g graphical output.

TBC

Avatar

FWIW: / PS:

“ldd b2g” on the older asb image leads to useful output, whereas on the Raspbian I get

pi@raspberrypi ~/kul/b2g $ ldd b2g
not a dynamic executable
pi@raspberrypi ~/kul/b2g $

… so … is that a proof of my earlier hypothesis?

Avatar

PS2:

On asb’s Wheezy image, I can sort-of start b2g: it gives a light blue window, only partly visible (a large part is off screen, ignoring my overscan settings), and the visible part says “Try Again”. So probably some error message. Image is here: http://s7.postimage.org/6wjr3z8qj/IMG_20120817_093008.jpg

b2g does not react to my mouse.

Furthermore: you cannot use b2g via a “ssh -X” session; b2g’s output will always appear on the physical screen.

Avatar

“Furthermore: you cannot use b2g via a “ssh -X” session; b2g’s output will always appear on the physical screen.”

That’s intended. This build does not use an X Server, but renders into EGL framebuffers directly.

Regarding your mouse: try
export MOZ_MOUSE_DEV=/dev/input/xzy
before starting Firefox OS (you can “cat /dev/input/xzy” and move the mouse; if you get some output, it’s the right device)

Avatar

Thank you. First I need to fix the off screen of FirefoxOS. Damn CRT … ;-)

Avatar

it actually draws from (0,0) to whatever fbset returns as vxres and vyres. What returns fbset on your system?

Avatar

OK, I have a lift off! See http://s9.postimage.org/z2pdbyfkf/IMG_20120817_095009.jpg

Still off screen, but that must be caused by my old CRT.

The trick was the also download, unpack and use the ‘profile’ provided by Oleg.

Avatar

Oleg have posted some info how to run his port on his youtube channel:
http://www.youtube.com/watch?v=9f_Y7HoTFLQ&feature=plcp

maybe new versions of port will be distributed as SD card image, it is one man project so far so we have to be patient, i wish to have skills to help in porting but i can’t ;(

i hope that in 2013 we will be able to run FirefoxOS on RPi, i’ve bought some SD cards and waiting for all OSes which appears on RPi, plenty is not plague ;)

Avatar

I was using Firefox, but then I switched to Chrome, and then to Firefox again. I thought you should know. :)

Avatar

*.img ???

Avatar

can you make .iso image .?

Avatar

While a lot of work remains to be done, I’m confident that we can provide some SD card images rather soon. For now, I have posted some pictures at https://www.philipp-wagner.com/blog/2012/08/firefox-os-boot2gecko-for-raspberry-pi/ (stay tuned for updates on the images)

Avatar

Hi Philipp,

You have an old CRT too, just like me. Which parameters should I tune to get the screen “on screen”, instead of partly off-screen like I have it now? See http://2.bp.blogspot.com/-o3cf6Pg1XZo/UC37hf9dY4I/AAAAAAAAHYI/S22eAHSOEK8/s1600/IMG_20120817_095009-789393.jpg

Avatar

PS: here’s the fbset you requested:

pi@raspi-wheezy-armel ~ $ fbset

mode “566×422”
geometry 566 422 566 422 16
timings 0 0 0 0 0 0 0
rgba 5/11,6/5,5/0,0/16
endmode

pi@raspi-wheezy-armel ~ $

Avatar

The problem is that the screen resolution is currently hardcoded to be 800×600, and since your screen is smaller it’s cut off (and the framebuffer size is wrong, but that’s another story). I’ll look into that, there is not much else you can do right now.

Avatar

@ Philipp:

OK, that’s clear. But AFAIK you run b2g on a CRT too … how is that possible? Different version without hard-coding?

Avatar

@Sander: exactly, I adjusted the frame buffer size manually and fixed the screen size in b2g

Avatar

@philipp: exactly, I adjusted the frame buffer size manually and fixed the screen size in b2g

Where do you fix the screensize in the mozilla source code (ie,which file) ?

Avatar

Firefox on a machine with 256mb ram?

Blasphemy!

Avatar

does it work with any usb hardware like video capture or even an itu t v 44+IPR=921600 v92 modem?

Avatar

Please anybody !!!
A .iso for write from windows.I don’t have a linux installed

Avatar

I have hardcosed the display size in shell.xul and screen.js as 1680×1050. If I run ./b2g it will runn fullscreen, but when I put a website up with “B2G_HOMESCREEN” it only shows up 320×480, even if I pass –screen=1680×1050 arg. Can anyone point me in the right direction?

Avatar

Is there ANY news on this? It sounds really neat, and the article said 2014…

Searched by tag on the archives and only got this. Any news? I want to test the latest version.

Leave a Comment

Comments are closed