-- Leo's gemini proxy

-- Connecting to perso.pw:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini;

A kiosk computer running OpenBSD


Author: Solène

Date: 11 October 2022

Tags: openbsd


Comment on Mastodon


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


Installation


It's rather simple


1. `git clone https://tildegit.org/solene/surf-display-openbsd`

2. `install -m 555 surf-display-openbsd/bin/surf-display /usr/local/bin/`

3. 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.


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.


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!

-- Response ended

-- Page fetched on Sun May 5 21:35:59 2024