Soumya Deb's PiOSK Is a One-Shot Script to Turn Your Raspberry Pi Into a Web Kiosk Device
Just run this simple script and your Raspberry Pi becomes a web kiosk — with remote control over a handy browser interface.
Developer Soumya Deb has developed a tool that makes it easy to turn any Raspberry Pi into a kiosk device, offering a "webpage shuffler" and easy management over the network with a one-shot setup process.
"This started as a simple automation script — a wrapper of the official Raspberry Pi kiosk mode tutorial for personal use," Deb explains of the PiOSK project. "Then one thing lead to the other and I found myself installing Node.js & writing systemd
unit files… That's when I realized… maybe there are other people (or future me) who'd also find it useful."
The Raspberry Pi family of single-board computers are popular devices for setting up kiosk devices, thanks to their affordability and low power draw. Rather than offering a standard desktop environment, a kiosk-configured Raspberry Pi loads a full-screen web browser to the page of your choice — and aims to make it difficult for users to escape to the underlying system below.
Normally, setting up a Raspberry Pi as a kiosk device is a manual process — but PiOSK handles everything automatically. While this command is, admittedly, the never-a-great-idea curl-to-bash pipeline — downloading the installation script sight-unseen and immediately piping it into the bash shell with root privileges — it can't be faulted for speed, even if security takes a back seat.
Once installed, PiOSK runs a browser full-screen and automatically rotates between a selection of pre-defined websites. A web interface allows these to be customized, without having to go hands-on with the Raspberry Pi itself. The script does, however, have a few requirements — including that you're using the 32-bit version of the Raspberry Pi OS Linux distribution and that it's using Wayland with the Wayfire compositor.
PiOSK is available on GitHub under the permissive Mozilla Public License Version 2; "this is far from done," Deb admits, "it's just the first checkpoint that meets my initial goal of making the entire process a 'single script setup.'"