Skip to content

Commit 10fb869

Browse files
authored
Enhance kiosk mode documentation (#1461)
1 parent ef32799 commit 10fb869

File tree

1 file changed

+226
-14
lines changed

1 file changed

+226
-14
lines changed

docs/faq/kiosk-mode.md

Lines changed: 226 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,34 +2,246 @@
22

33
Use the Photobooth Setup Wizard first: **7 Misc → 1 Autostart and shortcut**. If you need manual steps, use the OS-specific guidance below.
44

5-
## Autostart on Pi OS Bookworm (Wayland/labwc by default)
6-
Create `~/.config/labwc/autostart` (or add to the existing `[autostart]` section):
5+
---
6+
7+
## Firefox
8+
9+
### Basic Kiosk Mode
710

811
```
9-
[autostart]
10-
chromium --kiosk --disable-features=Translate --noerrdialogs --disable-infobars --no-first-run --ozone-platform=wayland --touch-events=enabled --start-maximized http://localhost
12+
firefox --kiosk http://localhost
1113
```
1214

13-
For Wayland/Wayfire, edit `~/.config/wayfire.ini`:
15+
**Notes**
16+
17+
* Launches Firefox fullscreen
18+
* Hides UI elements and prevents normal window controls
19+
20+
---
21+
22+
## Chrome / Chromium
23+
24+
Use `chromium` or `google-chrome` depending on your distribution/installed package.
25+
26+
### Basic Kiosk Mode
1427

1528
```
16-
[autostart]
17-
chromium = chromium-browser --kiosk --disable-features=Translate --noerrdialogs --disable-infobars --no-first-run --ozone-platform=wayland --touch-events=enabled --start-maximized http://localhost
29+
chromium --kiosk http://localhost
30+
```
31+
32+
---
33+
34+
### Recommended Kiosk Flags
35+
36+
```
37+
chromium \
38+
--kiosk http://localhost \
39+
--noerrdialogs \
40+
--disable-infobars \
41+
--disable-features=Translate \
42+
--no-first-run \
43+
--check-for-update-interval=31536000 \
44+
--touch-events=enabled \
45+
--password-store=basic
46+
```
47+
48+
**Flag Descriptions**
49+
50+
| Flag | Purpose |
51+
| -------------------------------------- | ------------------------------------- |
52+
| `--kiosk` | Fullscreen kiosk mode |
53+
| `--noerrdialogs` | Suppresses crash and error dialogs |
54+
| `--disable-infobars` | Hides automation and warning banners |
55+
| `--disable-features=Translate` | Disables translation prompts |
56+
| `--no-first-run` | Skips first-run UI |
57+
| `--check-for-update-interval=31536000` | Effectively disables update checks |
58+
| `--touch-events=enabled` | Enables touchscreen input |
59+
| `--password-store=basic` | Avoids dependency on desktop keyrings |
60+
61+
---
62+
63+
## Raspberry Pi–Specific Options
64+
65+
### Wayland (Recommended on Newer Raspberry Pi OS)
66+
1867
```
68+
chromium \
69+
--kiosk http://localhost \
70+
--ozone-platform=wayland \
71+
--start-maximized
72+
```
73+
74+
**Notes**
75+
76+
* `--ozone-platform=wayland` enables native Wayland support
77+
* `--start-maximized` ensures correct initial sizing
78+
79+
---
80+
81+
### X11 (Legacy / Fallback)
82+
83+
```
84+
chromium \
85+
--kiosk http://localhost \
86+
--use-gl=egl
87+
```
88+
89+
**Notes**
90+
91+
* `--use-gl=egl` improves GPU acceleration on Raspberry Pi under X11
92+
93+
---
1994

20-
## Autostart on Pi OS Bullseye and earlier
21-
Create `/etc/xdg/autostart/photobooth.desktop`:
95+
## Full Example (Raspberry Pi + Wayland)
96+
97+
```
98+
chromium \
99+
--kiosk http://localhost \
100+
--noerrdialogs \
101+
--disable-infobars \
102+
--disable-features=Translate \
103+
--no-first-run \
104+
--check-for-update-interval=31536000 \
105+
--touch-events=enabled \
106+
--password-store=basic \
107+
--ozone-platform=wayland \
108+
--start-maximized
109+
```
110+
111+
---
112+
113+
## Example `.desktop` File
114+
115+
The following example assumes:
116+
117+
* Application name: **Photobooth**
118+
* The icon (`photobooth`) was installed by the SetupWizard
119+
* Chromium is used as the kiosk browser
120+
121+
### `photobooth.desktop`
22122

23123
```
24124
[Desktop Entry]
25125
Version=1.3
26-
Terminal=false
27126
Type=Application
28127
Name=Photobooth
29-
Exec=chromium-browser --noerrdialogs --disable-infobars --disable-features=Translate --no-first-run --check-for-update-interval=31536000 --kiosk http://localhost --touch-events=enabled --use-gl=egl
30-
Icon=/var/www/html/resources/img/favicon-96x96.png
31-
StartupNotify=false
128+
Comment=Photobooth Kiosk Application
32129
Terminal=false
130+
Exec=chromium --kiosk http://localhost \
131+
--noerrdialogs \
132+
--disable-infobars \
133+
--disable-features=Translate \
134+
--no-first-run \
135+
--check-for-update-interval=31536000 \
136+
--touch-events=enabled \
137+
--password-store=basic
138+
Icon=photobooth
139+
StartupNotify=false
140+
Categories=Utility;
141+
```
142+
143+
---
144+
145+
### Raspberry Pi Wayland Variant (`Exec` Line Only)
146+
147+
```
148+
Exec=chromium --kiosk http://localhost \
149+
--noerrdialogs \
150+
--disable-infobars \
151+
--disable-features=Translate \
152+
--no-first-run \
153+
--check-for-update-interval=31536000 \
154+
--touch-events=enabled \
155+
--password-store=basic \
156+
--ozone-platform=wayland \
157+
--start-maximized
158+
```
159+
160+
---
161+
162+
### Raspberry Pi X11 Variant (`Exec` Line Only)
163+
164+
```
165+
Exec=chromium --kiosk http://localhost \
166+
--noerrdialogs \
167+
--disable-infobars \
168+
--disable-features=Translate \
169+
--no-first-run \
170+
--check-for-update-interval=31536000 \
171+
--touch-events=enabled \
172+
--password-store=basic \
173+
--use-gl=egl
174+
```
175+
176+
---
177+
178+
## Installation Locations
179+
180+
**System-wide**
181+
182+
```
183+
/usr/share/applications/photobooth.desktop
184+
```
185+
186+
**Per-user**
187+
188+
```
189+
~/.local/share/applications/photobooth.desktop
33190
```
34191

35-
Adjust the kiosk URL and icon path if Photobooth is in a subdirectory (e.g. `http://localhost/photobooth` and `/var/www/html/photobooth/resources/img/favicon-96x96.png`). The `--use-gl=egl` flag is primarily for Raspberry Pi; remove it if it causes issues on other hardware.
192+
After installing or modifying the file:
193+
194+
```
195+
update-desktop-database
196+
```
197+
198+
## System-Wide Autostart with XDG
199+
200+
Using `/etc/xdg/autostart/photobooth.desktop` ensures the application launches automatically for all users when a graphical session starts (LXDE, XFCE, GNOME, etc.).
201+
202+
---
203+
204+
## Autostart on Raspberry Pi OS Bookworm (Wayland)
205+
206+
Raspberry Pi OS Bookworm uses **Wayland** by default. The two supported compositors documented here are **labwc** (default) and **Wayfire**.
207+
208+
---
209+
210+
### labwc (default)
211+
212+
Create `~/.config/labwc/autostart`
213+
(or add to the existing `[autostart]` section) as follows:
214+
215+
```ini
216+
[autostart]
217+
chromium --kiosk http://localhost \
218+
--noerrdialogs \
219+
--disable-infobars \
220+
--disable-features=Translate \
221+
--no-first-run \
222+
--check-for-update-interval=31536000 \
223+
--touch-events=enabled \
224+
--password-store=basic \
225+
--ozone-platform=wayland \
226+
--start-maximized
227+
```
228+
229+
---
230+
231+
### Wayfire
232+
233+
Edit `~/.config/wayfire.ini` and add or update the `[autostart]` section as follows:
234+
235+
```ini
236+
[autostart]
237+
chromium = chromium --kiosk http://localhost \
238+
--noerrdialogs \
239+
--disable-infobars \
240+
--disable-features=Translate \
241+
--no-first-run \
242+
--check-for-update-interval=31536000 \
243+
--touch-events=enabled \
244+
--password-store=basic \
245+
--ozone-platform=wayland \
246+
--start-maximized
247+
```

0 commit comments

Comments
 (0)