Diferencia entre revisiones de «Kiosko en Raspberry»
Sin resumen de edición |
Sin resumen de edición |
||
| Línea 53: | Línea 53: | ||
De esta forma el sistema ya no encontrará el fichero "left_ptr" y no mostrará ningún puntero. En vez de "remove" puedes poner cualquier cosa. Lo único que estamos haciendo es renombrarlo. | De esta forma el sistema ya no encontrará el fichero "left_ptr" y no mostrará ningún puntero. En vez de "remove" puedes poner cualquier cosa. Lo único que estamos haciendo es renombrarlo. | ||
[[Categoría:Kiosko]] | |||
[[Categoría:Raspberry]] | === Medidas de seguridad === | ||
[[Categoría:Quiosco]] | |||
[[Categoría:Kiosco]] | ==== Deshabilitar puertos USB ==== | ||
Con el siguiente comando deshabilitamos todos los puertos USB | |||
<code>echo '1-1' | sudo tee /sys/bus/usb/drivers/usb/unbind</code> | |||
Podemos rehabilitarlos de esta manera: | |||
<code>echo '1-1' | sudo tee /sys/bus/usb/drivers/usb/bind</code> | |||
Estos cambios '''no''' son persistentes, por lo que tenemos que modificar el ''rc.local,'' este documento se ejecuta al final del proceso de inicio con los comandos que le indiquemos. Ejecutamos el comando: | |||
<code>sudo nano /etc/rc.local</code> | |||
Y añadimos el comando para deshabilitar los puertos por encima de la línea que dice "<code>exit 0</code>" | |||
==== Deshabilitar Bluetooth ==== | |||
Para hacer esto, editaremos el archivo /boot/firmware/config.txt | |||
<code>sudo nano /boot/firmware/config.txt</code> | |||
Agregando la siguiente línea al final del archivo: | |||
<code>dtoverlay=disable-bt</code> | |||
==== Deshabilitar la escritora en la partición de sistema ==== | |||
Esto protegerá el sistema ante corrupción del sistema de archivos debido a modificaciones inesperadas durante cortes repentinos de energía, para esto: | |||
* Usamos el comando: <code>sudo raspi-config</code> | |||
*# Performance Options | |||
*# Overlay File system | |||
*## Sí/Yes | |||
*# Cuando pregunte si queremos proteger de escritura: | |||
*## Sí/Yes | |||
*# Confirmamos que queremos reiniciar cuando pregunte al salir de la pantalla de configuración | |||
Nota: Cuando queramos modificar/escribir en la tarjeta SD algo, tendremos que re-habilitar la escritura. | |||
[[index.php?title=Categoría:Kiosko]] | |||
[[index.php?title=Categoría:Raspberry]] | |||
[[index.php?title=Categoría:Quiosco]] | |||
[[index.php?title=Categoría:Kiosco]] | |||
Revisión del 10:42 4 mar 2024

Un "Kiosko", "Kiosco" o "Quiosco" es un ordenador o terminal informática situada en un espacio público que permite a los usuarios una cantidad controlada de interacción con dicha terminal. Un ejemplo común de Quiosco serían las pantallas que muestran información sobre los vuelos en los aeropuertos o las pantallas táctiles en los cines que te permiten comprar tickets a las películas, o las pantallas donde haces tus pedidos en los restaurantes de comida rápida.
Proceso de Instalación en RaspBerry
Entorno de trabajo utilizado
- Raspberry Pi 4.
- Raspberry Pi OS (Debian 12, bookworm) 64-bits.
- Wayland.
- Chromium.
Prerrequisitos
- Sistema operativo base instalado y funcionando correctamente.
- SSH configurado.
- Una pantalla para visualizar el quiosco.
Proceso
- Accedemos a la Raspberry mediante SSH.
- Instalamos wtype, un software que nos permite simular actividad con el teclado.
- sudo apt install wtype
- Cambiamos la configuración de inicio de sesión para que el dispositivo haga "Autologin", es decir, inicie el usuario automáticamente.
- sudo raspi-config
- Para navegar el menú usamos las flechas del teclado y la tecla "Enter" para seleccionar la opción.
- System Options > Boot > Auto Login > Desktop Autologin: Desktop GUI, automatically logged in as '<usuario>' user.
- Pulsamos enter > "Finish" y reiniciamos cuando nos pregunte. Ahora iniciará automáticamente.
- sudo raspi-config
- Ahora, configuraremos la Raspberry para enseñar en modo quiosco lo que queremos y cómo lo queremos. Para esto editaremos el archivo .config/wayfire.ini. Este documento sirve para modificar la apariencia y comportamiento de Wayfire, el sistema que se usa para procesar el escritorio en Raspberry Pi OS.
- sudo nano .config/wayfire.ini
- Buscamos la sección [autostart], que debería verse como esto:
- En caso de que no estuviera, lo creamos.
[autostart]
panel = wfrespawn wf-panel-pi
background = wfrespawn pcmanfm --desktop --profile LXDE-pi
xdg-autostart = lxsession-xdg-autostart
- En caso de que no estuviera, lo creamos.
- Agregamos las siguientes líneas:
chromium = chromium-browser <url que queremos mostrar> --kiosk --noerrdialogs --disable-infobars --no-first-run --ozone-platform=wayland --enable-features=OverlayScrollbar --start-maximized
switchtab = bash ~/switchtab.sh
screensaver = false
dpms = false- Podemos poner tantas urls como queramos mostrar, separadas por espacios y entre comillas en caso de que tuviesen espacios en blanco dentro de su definición.
- Definición de parámetros
- --kiosk: le indica a Chromium que funcionará en modo quisco.
- --noerrdialogs: evita que se muestren mensajes de error.
- --disable-infobars: quita la barra superior del navegador.
- --no-first-run: deshabilita el proceso de configuración inicial del navegador.
- --ozone-platform=wayland: establece una versión de Wayland compatible con la plataforma Ozone.
- --enable-features=OverlayScroolbar: activa la barra de desplazamiento solo cuando es necesario y en modo overlay.
- --start-maximized: inicia el navegador en pantalla completa.
- La línea "switchtab = bash ~/switchtab.sh" hace referencia a un script que definiremos a continuación y se encargará de cambiar entre pestañas cada 10 segundos.
- Definición de parámetros
- Podemos poner tantas urls como queramos mostrar, separadas por espacios y entre comillas en caso de que tuviesen espacios en blanco dentro de su definición.
- Creamos el script que se encarga de cambiar entre pestañas.
- nano ~/switchtab.sh
- Contenido:
!bin/bash
#Encuentra el PID de chromium
chromium_pid=$(pgrep chromium | head -1)
#Comprueba que chromium está activo
while [ [ -z $chromium_pid ]]; do
echo "Chromium browser is not running yet."
sleep 5
chromium_pid=$(pgrep chromium | head -1)
done
echo "Chromium browser process ID: $chromium_pid"
export XDG_RUNTIME_DIR=/run/user/1000
#Bucle para enviar actividad de teclado:
while true; do
#Envía Ctrl+Tab y F5 usando`wtype`
wtype -M ctrl -P Tab
wtype -P F5
#Envía Ctrl+Tab y F5 usando `wtype`
wtype -m ctrl -p Tab
wtype -p F5
sleep 10
done - Guardamos y reiniciamos la Raspberry
Deshabilitar el puntero del ratón
Dentro de Wayland no tenemos una forma nativa para hacerlo como en x11, de forma que simplemente lo que haremos será deshabilitar el icono que se utiliza para el puntero. Para ello accedemos a la ruta /usr/share/icons/PiXflat/cursors/.
- Seguidamente utilizaremos el comando mv left_ptr left_ptr.remove
De esta forma el sistema ya no encontrará el fichero "left_ptr" y no mostrará ningún puntero. En vez de "remove" puedes poner cualquier cosa. Lo único que estamos haciendo es renombrarlo.
Medidas de seguridad
Deshabilitar puertos USB
Con el siguiente comando deshabilitamos todos los puertos USB
echo '1-1' | sudo tee /sys/bus/usb/drivers/usb/unbind
Podemos rehabilitarlos de esta manera:
echo '1-1' | sudo tee /sys/bus/usb/drivers/usb/bind
Estos cambios no son persistentes, por lo que tenemos que modificar el rc.local, este documento se ejecuta al final del proceso de inicio con los comandos que le indiquemos. Ejecutamos el comando:
sudo nano /etc/rc.local
Y añadimos el comando para deshabilitar los puertos por encima de la línea que dice "exit 0"
Deshabilitar Bluetooth
Para hacer esto, editaremos el archivo /boot/firmware/config.txt
sudo nano /boot/firmware/config.txt
Agregando la siguiente línea al final del archivo:
dtoverlay=disable-bt
Deshabilitar la escritora en la partición de sistema
Esto protegerá el sistema ante corrupción del sistema de archivos debido a modificaciones inesperadas durante cortes repentinos de energía, para esto:
- Usamos el comando:
sudo raspi-config- Performance Options
- Overlay File system
- Sí/Yes
- Cuando pregunte si queremos proteger de escritura:
- Sí/Yes
- Confirmamos que queremos reiniciar cuando pregunte al salir de la pantalla de configuración
Nota: Cuando queramos modificar/escribir en la tarjeta SD algo, tendremos que re-habilitar la escritura.
index.php?title=Categoría:Kiosko index.php?title=Categoría:Raspberry index.php?title=Categoría:Quiosco index.php?title=Categoría:Kiosco