1. Introduction §
Let's have fun doing OpenBSD kiosks! As explained in a recent article, a kiosk is a computer dedicated to display things or to be used interactively without being able to escape the current program.
I modified the script surf-display
which run the web browser surf
in full screen and run various commands to sanitize the environment to prevent users to escape surf to make it compatible with OpenBSD.
surf-display-openbsd project page
surf-display project page
2. Installation §
It's rather simple
git clone https://tildegit.org/solene/surf-display-openbsd
install -m 555 surf-display-openbsd/bin/surf-display /usr/local/bin/
- edit
~/.xsession
to use /usr/local/bin/surf-display
as a window manager
You will also need dependencies:
pkg_add surf wmctrl blackbox xdotool unclutter
Now, when you log in your user, surf
will be started automatically, and you can't escape it, so you will need to switch to a TTY if you want to disable it, or through ssh.
3. Configuration §
The configuration is relatively simple for a single screen setup. Edit the file /etc/surf-display
and put the URL you want to display as the value of DEFAULT_WWW_URI=
, this file will be loaded by surf-display
when it runs, otherwise OpenBSD website will be displayed.
4. Conclusion §
It's still a bit rough for OpenBSD, I'd like to add xprintidle to automatically restart the session if the user has been inactive, but it's working really well already!