KioskForge generates Raspberry Pi 4B and 5 kiosks running Ubuntu Server 24.04.x.
KioskForge saves you hundreds of hours of research and configuration of a new Raspberry Pi kiosk, and possibly also a load of money needed to pay for commercial kiosk solutions. Furthermore, making your own kiosk is a tough ride with respect to security and system optimizations.
KioskForge supports the following features:
The level of IT expertise needed to use KioskForge, as an end-user,
is about intermediate. You don't have to know Linux or how to
run programs on Linux, all you need to know is how to edit a well
documented text file, make an installation medium, and invoke KioskForge
to make its modifications of the installation medium. After the forge
process is over, something which takes 5 to 30 minutes depending on the
speed of the medium and the target Raspberry Pi (5 is much faster than
4B), you simply turn off the kiosk (using either SSH and the Linux
poweroff command, or by simply unplugging the Pi) and
deploy it where you need it deployed.
The basic idea behind KioskForge is that it should be easy, safe, and automatic to deploy a new kiosk.
This procedure, which has only been tested on Windows 11, gets you going quickly with KioskForge:
.kiosk file using the Desktop/Explorer
right-click context menu New and
Kiosk file..kiosk file and select
Edit to edit it and fill out the information you need to
supply..kiosk file..kiosk file to make
KioskForge prepare the installation medium for its first boot. You
should verify the information shown on the screen and then hit
Enter to proceed. If you want to exit, hit
Ctrl-C.KioskForge should be usable from Linux if the mount point of the
microSD card is given in the
KioskForge.py prepare /mnt/sd-card command. Just check out
KioskForge, activate the virtual environment using
venv/Scripts/activate, and you should be set.
Currently, the primary source of documentation for KioskForge is the
documentation installed with the Windows installer as .html
files with links in the Start menu's
KioskForge folder. The documentation can also be found as
Markdown in the docs folder.
KioskForge was made for a Danish museum that has a constant need for deploying kiosks.
KioskForge started out as a manual procedure for configuring a new Raspberry Pi 4B machine to become a web browser kiosk. As there was a huge need to automate the process, the manual procedure was made into a Bash script. As the project grew quickly and as Bash doesn't offer strong scripting features (OOP, exceptions, etc.), the project was rewritten in Python v3.10+.
Today, KioskForge is a nearly automatic tool for creating new Raspberry Pi 4B and Raspberry Pi 5 kiosks from scratch. The only part of the process that is still manual, is the actual creation of the installation medium used to set up the kiosk. However, once the installation medium has been made using Raspberry Pi Imager, KioskForge takes over and the rest of the installation process is as automatic as it can possibly be.