Bare Bones Kiosk Setup Script for one or more Websites that works most of the time. (But now with an actual somewhat documentation and even easier installation scripts for lazy people like me)
|
|
9 месяцев назад | |
|---|---|---|
| LICENSE | 9 месяцев назад | |
| README.md | 9 месяцев назад | |
| configure.sh | 9 месяцев назад | |
| installer.sh | 9 месяцев назад | |
| lazy-installer.sh | 9 месяцев назад |
Welcome to the Basic Kiosk Installer! This project consists of some basic scripts to help you display one or multiple websites Kiosk style on Debian-based distros. It's simple, it's basic, and it works (most of the time).
What you need
Option 1: Debian 12
Option 2: Raspberry Pi OS Lite
ssh kiosk@your.debian.hostsuClone the repository to the root's home directory
cd ~
git clone https://git.teleco.ch/crt/basic-kiosk.git/
(if there is no git installed install it with this apt update && apt install git -y)
Run the lazy installer
bash basic-kiosk/lazy-installer.sh
ssh kiosk@your.debian.hostsuapt update && apt upgrade -y && apt install sudo dialog git htop tmux screen screenfetch -yecho 'export PATH=$PATH:/sbin:/usr/sbin' | tee -a ~/.bashrc ~/.profile > /dev/null && bashAdd kiosk user to sudo group
bash
usermod -aG sudo kiosk
exit
exit
exit
Sign back in via SSH ssh kiosk@your.debian.host
Add sbin to bash paths for kiosk user echo 'export PATH=$PATH:/sbin:/usr/sbin' | tee -a ~/.bashrc ~/.profile > /dev/null && bash
Download the kiosk and go to its folder git clone https://git.teleco.ch/crt/basic-kiosk.git/ && cd basic-kiosk
Run the installer
bash installer.sh
When you run the installer script, you will be presented with a series of dialog boxes that guide you through the installation process. Here is what you should expect:
.xinitrc file for the kiosk user and make it executable..bashrc file to start the X session automatically.After all that's done, reboot the kiosk and all should work maybe or maybe not. You go figure that out
(I am so professional for adding this omg)
installer.sh: The main installer script that guides you through the installation process using a dialog TUI. It installs necessary packages, configures .xinitrc, start.sh, VNC password, automatic login, and edits .bashrc.
configure.sh: A script to configure individual settings without reinstalling the kiosk. It allows you to change the display scaling, kiosk type, websites, and VNC password.
lazy-installer.sh: A script for users who prefer an even simpler setup. It checks if the script is run as root, installs basic packages to run installer.sh, creates the kiosk user if it doesn't exist, moves files where they should be, and runs the installer as the kiosk user.
installer.shYou can run the installer.sh script in automatic mode with no user interaction (other than the sudo prompt lol). This requires specifying the distribution, scaling factor, VNC password, and at least one URL.
bash installer.sh --auto <distro> <scaling_factor> <vnc_password> <url1> [<url2> ... <urlN>]
bash installer.sh --auto debian 1 myvncpassword "https://www.example.com"
bash installer.sh --auto raspberry 2 myvncpassword "https://www.example1.com" "https://www.example2.com"
configure.shYou can run the configure.sh script in automatic mode to configure the kiosk settings without user interaction. This requires specifying the scaling factor and at least one URL.
bash configure.sh --auto <scaling_factor> <url1> [<url2> ... <urlN>]
bash configure.sh --auto 1 "https://www.example.com"
bash configure.sh --auto 2 "https://www.example1.com" "https://www.example2.com"
If you want to change the time that it takes to switch between tabs, edit the start.sh file in the kiosk user's home directory by changing the line that says
sleep 30
to however many seconds it should wait before switching tabs.
Tested on Debian 12 X86_64 and arm64, testing for RP PI OS Lite will happen at a later time
You can contribute if you want… …but I doubt anyone will lmao.
This project is licensed under the MIT License. See the LICENSE file for details.
Basically:
Made with love for Bash scripting and pure hatred for unnecessary complexity by T.B. ❤️