ogclient/misc
Alejandro Sirgo Rica 7ace7f9403 ogclient: add kiosk
Add Kiosk project as a subtree of ogClient. Kiosk is
an interactive GUI featuring basic functionality to
monitor and operate ogClient withing the client through a
graphical interface written in PyQt6.

Right after ogClient launches in live mode it performs a
fork() call to launch Kiosk as an external process to
prevent Kiosk backtraces to affect ogClient.

A pair of sockets are created through socket.socketpair()
and each process is assigned one of them to leverage the
inter process communication.

API Kiosk -> ogClient:
- Poweroff: request client poweroff
{"command": "poweroff"}
- Reboot: request client reboot
{"command": "reboot"}
- Restore: restore image into a partition
{"command": "restore", "image": "windows.img", "disk": 1, "partition": 2}
- Boot: request an OS boot
{"command": "boot", "disk": 1, "partition": 2}

API ogClient -> Kiosk:
- Busy: inform about ogClient thread status
{"command": "busy", "status": True}
- Refresh: reload the theme.
{"command": "refresh"}
- close: request Kiosk termination.
{"command": "close"}

Add internationalization documentation in README

Add "CACHE" mode in image restore to only restore images
available in the cache partition.

Use set_state() function in OgRest to define the idle or busy
status and notify Kiosk about the status change.
2025-02-14 13:57:44 +01:00
..
img ogclient: add kiosk 2025-02-14 13:57:44 +01:00
compile_translations.sh ogclient: add kiosk 2025-02-14 13:57:44 +01:00
kiosk_tester.py ogclient: add kiosk 2025-02-14 13:57:44 +01:00
update_translations.sh ogclient: add kiosk 2025-02-14 13:57:44 +01:00