How to run Firefox full screen in minimalist X environment

Nikki Locke picture Nikki Locke · Mar 6, 2012 · Viewed 26.2k times · Source

I wish to set up what is usually called a Kiosk, running Firefox locked down to our own specific home page (and links from there). The base operating system is CentOs 5 (i.e. just like RedHat Enterprise 5).

Ideally I want Firefox to start full screen (and I have installed the full-fullscreen addon to help with this), and to be locked as such (i.e. F11 does not work).

I need to be able to install this system using one or more rpm files.

I have tested my fullscreen Firefox setup rpm under Gnome, and it works fine - my Gnome desktop is 1024x768, and the selected home page comes up exactly filling the screen - looks great.

However, I do not want to bother with a desktop environment (like Gnome or KDE), just run Firefox as the sole X client program, with a fixed screen size of 1024x768.

I have built rpms to install X, configure it to run at 1024x768, and fire up X automatically from an autologin using shell scripts.

My main autologon script contains this:

startx ~/client/xClient.sh  -- :1 &

xClient.sh contains this:

while [ true ]
do
    firefox
done

My problem is that Firefox does not come up full screen under this setup. The firefox window is smaller than the screen, and the top left corner is off the screen - this means the web page gets scrollbars, the top and left of the page does not show, and there is a black area along the bottom and right.

Does anyone know the reason for this behaviour?

What solutions can you suggest?

I suppose, if necessary, I could install Gnome on the machine, and then try to lock it down - but it seems silly to add something as complex as Gnome just to get the window to appear the right size, and in the right place! Plus there is the extra task of trying to lock Gnome down so the users can't do anything else with the machine.

If you think this question should not be on Stack Overflow, please tell me where it should go. (I think writing rpm and shell scripts are programming, but maybe they don't count? If not, sorry!)

Answer

user1403360 picture user1403360 · May 21, 2012

You have 2 options. You install a kiosk plug-in, that allows you to start firefox automatically in full screen mode (amongst other things). One example would be R-kiosk

Or you skip firefox and create a xul application that does what you want. You can find a sample application here. And you can find full screen code (not tested) here.