← Descargas

Modo kiosko en Linux y Raspberry Pi

Un PC viejo con Ubuntu o una Raspberry Pi 4 hacen de reproductor sin problemas. Esta es la vía más barata y, bien hecha, la que menos se cae.

Si no quieres leer nada: baja el script, córrelo con sudo y salta al paso de vincular la pantalla. El resto de la página explica qué hizo, para cuando haya que ajustarlo.

La vía rápida: nuestro script

  1. Córrelo en el equipo de la pantalla

    curl -fsSL https://vitrix.cl/archivos/vitrix-linux-kiosko.sh -o vitrix.sh
    sudo bash vitrix.sh
    ⬇ Ver o bajar el script

    Funciona en Ubuntu, Debian y Raspberry Pi OS. Toma un par de minutos: baja Chromium y deja todo configurado.

  2. Vincula la pantalla

    Al terminar, en la TV aparece el código de 6 letras. Entra a panel.vitrix.cl → Pantallas → + Vincular pantalla y escríbelo.

    Si tienes el enlace de tu empresa (panel → Pantallas → Enlace de tu empresa), es mejor: edita /usr/local/bin/vitrix-player.sh, reemplaza la dirección por tu enlace y corre sudo systemctl restart vitrix-player. La pantalla se da de alta sola.

  3. Comprueba que se repone solo

    sudo systemctl status vitrix-player     # tiene que decir "active (running)"
    sudo reboot                             # y volver a la pantalla sin tocar nada

Qué hizo el script

vitrix-player.service systemd · Restart=always vitrix-player.sh while true · vuelve a abrir chromium --kiosk panel.vitrix.cl/player xset · unclutter nunca se apaga, sin puntero Se caiga el navegador o se corte la luz, alguien siempre lo vuelve a abrir lo que se ve
Dos vigilantes encadenados (systemd y el while) y la pantalla forzada a quedarse despierta

Conviene saberlo: son cuatro piezas, y cualquiera se puede ajustar a mano.

PiezaPara qué
chromium con --kioskEl navegador a pantalla completa, sin barras ni avisos.
xset s off -dpmsQue la pantalla no se apague ni se ponga en negro nunca.
unclutterEsconde el puntero del mouse después de un segundo quieto.
vitrix-player.serviceLo arranca al encender y lo vuelve a abrir si se cierra o se corta la luz.

Los archivos quedan en /usr/local/bin/vitrix-player.sh y /etc/systemd/system/vitrix-player.service.

Lo que el script no hace: el inicio de sesión automático

Es el motivo número uno de «quedó en la pantalla de login». Como depende del escritorio que use cada equipo, hay que hacerlo a mano:

  1. Ubuntu con GNOME (lo más común)

    sudo nano /etc/gdm3/custom.conf

    Deja estas dos líneas en la sección [daemon], con el nombre de tu usuario:

    AutomaticLoginEnable=true
    AutomaticLogin=pantalla
  2. Raspberry Pi OS

    sudo raspi-config

    Entra a System Options → Boot / Auto Login → Desktop Autologin. También ahí conviene System Options → Network at Boot → Wait for network, para que no arranque antes de tener internet.

  3. LightDM (Lubuntu, Mint y otros)

    sudo nano /etc/lightdm/lightdm.conf
    [Seat:*]
    autologin-user=pantalla
    autologin-user-timeout=0
  4. Comprueba de verdad

    Reinicia con el teclado desconectado. Si la pantalla vuelve sola a Vitrix, está listo. Si queda en el login, el usuario del autologin no es el mismo del servicio: revisa el User= de /etc/systemd/system/vitrix-player.service.

A mano, sin el script

Si prefieres armarlo tú, o el equipo no es Debian/Ubuntu, son estos cuatro pasos:

  1. Instala el navegador y los ayudantes

    sudo apt install chromium-browser unclutter xdotool
    # en Debian, el paquete se llama sólo "chromium"
  2. Escribe el lanzador

    sudo nano /usr/local/bin/vitrix-player.sh
    #!/usr/bin/env bash
    export DISPLAY=:0
    xset s off; xset -dpms; xset s noblank
    unclutter -idle 1 &
    while true; do
      chromium-browser --kiosk --noerrdialogs --disable-infobars --no-first-run \
        --autoplay-policy=no-user-gesture-required --disable-session-crashed-bubble \
        https://panel.vitrix.cl/player
      sleep 5
    done
    sudo chmod +x /usr/local/bin/vitrix-player.sh

    El while true es a propósito: si el navegador se cae, vuelve a abrirse en cinco segundos.

  3. Déjalo como servicio

    sudo nano /etc/systemd/system/vitrix-player.service
    [Unit]
    Description=Vitrix - reproductor de carteleria digital
    After=graphical.target
    
    [Service]
    User=pantalla
    Environment=DISPLAY=:0
    ExecStart=/usr/local/bin/vitrix-player.sh
    Restart=always
    RestartSec=5
    
    [Install]
    WantedBy=graphical.target
    sudo systemctl daemon-reload
    sudo systemctl enable --now vitrix-player
  4. Y el autologin

    El de la sección anterior, con el mismo usuario que pusiste en User=.

Cuando algo no resulta

Lo que pasaQué revisar
Pantalla negra, el servicio dice «active»El DISPLAY no es :0. Revísalo con echo $DISPLAY dentro de la sesión gráfica.
Queda en el loginFalta el autologin, o el usuario no coincide con el User= del servicio.
La pantalla se pone negra solaEl xset no corrió: en Wayland no aplica. Usa la sesión Xorg, o cage en vez de Chromium directo.
Los videos se ven a saltos en Raspberry PiUsa una Pi 4 o superior, y videos en 1080p H.264. Una Pi 3 no da para 4K.
Arranca antes de tener internetActiva «esperar la red al arrancar». De todos modos el reproductor reintenta solo.
Quiero ver qué está pasandojournalctl -u vitrix-player -n 50 --no-pager