Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/damdo/gokrazy-kiosk
run containerized GUIs in kiosk mode on gokrazy
https://github.com/damdo/gokrazy-kiosk
Last synced: 9 days ago
JSON representation
run containerized GUIs in kiosk mode on gokrazy
- Host: GitHub
- URL: https://github.com/damdo/gokrazy-kiosk
- Owner: damdo
- License: bsd-3-clause
- Created: 2023-05-28T07:34:16.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-08-06T12:57:16.000Z (3 months ago)
- Last Synced: 2024-10-12T13:18:07.846Z (25 days ago)
- Language: Go
- Homepage:
- Size: 25.4 KB
- Stars: 3
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## gokrazy-kiosk
gokrazy kiosk allows launching a GUI within a container on gokrazy
and displaying it on a display connected to the host device by leveraging frame buffer passthrough.This is designed, but not limited to browser kiosks.
You can tailor it to other purposes by following the provided Dockerfile and replacing
the chromium installation with a different GUI application.### usage
The following is an example on how to launch a browser kiosk (chromium).
This example only works with `amd64` and `arm64` architectures.```
gok add github.com/gokrazy/iptables
gok add github.com/gokrazy/nsenter
gok add github.com/greenpau/cni-plugins/cmd/cni-nftables-portmap
gok add github.com/greenpau/cni-plugins/cmd/cni-nftables-firewall
gok add github.com/gokrazy/podman# and finally
gok add github.com/damdo/gokrazy-kiosk
```Then add under `config.json` within `"PackageConfig"`:
```
"github.com/damdo/gokrazy-kiosk": {
"CommandLineFlags": [
"--name", "gokrazy-kiosk",
"quay.io/damdo/gokrazy-kiosk-chromium:20240806144534",
"/usr/bin/chromium",
"--no-sandbox",
"--no-first-run",
"--password-store=basic",
"--simulate-outdated-no-au='Tue, 31 Dec 2199 23:59:59 GMT'",
"--noerrdialogs",
"--disable-infobars",
"--kiosk",
"--app='https://play.grafana.org'"
]
},
```### what is left to do
- [x] full screen + resolution config need improvements
- [ ] make keyboard work (hard to reliably detect due to gokrazy not having udev)
- [ ] the mouse works but only if it is passed down before the container image as `--device=/dev/input/eventXXXX:/dev/input/event4` it's the only usb device plugged and only if it's there at boot (hard to reliably detect due to gokrazy not having udev)