[6349] in Release_7.7_team

home help back first fref pref prev next nref lref last post

kiosk mode browser test package

daemon@ATHENA.MIT.EDU (Robert Basch)
Sat May 30 18:38:09 2009

Message-Id: <200905302237.n4UMbvsT014477@outgoing.mit.edu>
To: release-team@mit.edu
Date: Sat, 30 May 2009 18:37:57 -0400
From: Robert Basch <rbasch@MIT.EDU>
X-Spam-Flag: NO
X-Spam-Score: 0.00

A test package for kiosk mode web browsing is available for evaluation
in:

  /mit/rbasch/Public/debathena-kiosk_0.1_all.deb

This will install files into /usr/lib/debathena-kiosk.  It will also
add a special system user account, kiosk@mit, under which the kiosk
session will run.  I have tested it on intrepid and jaunty.  To try
it out, you can run:

  sudo /usr/lib/debathena-kiosk/launch-kiosk

This script will set up the kiosk user home directory, and start a
new X session on a new VT as the user.  The xinitrc script creates
the Firefox profile, installs the r-kiosk extension, applies some
other preferences, and runs metacity (needed for fullscreen mode)
and finally firefox.  I made a quick-and-dirty home page, with the
style stolen from debathena, with links to the registration URL and
MIT and debathena home pages.  The navigation toolbar is enabled.
When you quit the browser, via Ctrl-Q, Alt-F4, or the 'X' decorator
button at the top-right, you should be returned to the original VT.

This package does not yet update gdm.conf[-custom]; we are already
diverting that file twice (in gdm-config and cluster-login-config),
and I would like to solicit opinions on the best way to add more
config changes to the file in another package (assuming we want to
separate this from cluster-login-config).  If you want to try the
kiosk mode from the login screen, append the contents of:

  /mit/rbasch/Public/gdm.conf-custom.append

to your /etc/gdm/gdm.conf-custom file.  For a cluster system, you
will also need to enable CUSTOM_CMD in the SystemCommandsInMenu
setting, e.g.:

  SystemCommandsInMenu=HALT;REBOOT;CUSTOM_CMD

This will add a "Register via the Web" item to the Actions menu.

Some other issues to ponder:

1) The browser will be able to view any readable file on the system,
by entering a "file:" URI in the location bar.  I am not sure if it
is feasible to write an extension to disable this scheme.

2) about:config is not disabled by the r-kiosk extension; we can write
another extension to disable it, if we care.

3) There is no icon for the gdm Actions menu item, which looks a bit
lame, since the built-in items have icons; I don't see a way to add
this in gdm.

4) If we want to restrict the browser to certain URLs, we can
disable the navigation toolbar (which should also solve 1 and 2
above), but then we would lose the 'X' button, which makes closing
the browser more problematic for users.

5) I had to disable the extension compatibility check preference,
because r-kiosk has a max version of 3.0 instead of 3.0.*.  Not a
big deal, but it highlights the possible risk that the extension
will break with a future update of Firefox.

If we decide not to proceed with the web browser idea, the fallback
for a pre-login registration option would probably be to use the same
gdm CustomCommand facility to run the regapplet.

Feedback is welcome.

Bob

home help back first fref pref prev next nref lref last post