- Es un MVP/POC para usar una tablet vieja no como una pantalla secundaria basada en píxeles, sino como pantalla de terminal SSH: se conecta desde un cliente SSH de Android a la computadora y luego se inyectan pulsaciones de teclas en una sesión de
screen. - Es una configuración pensada para casos donde la tarjeta gráfica ya llegó a su límite o no se consigue un adaptador de pantalla virtual, y donde solo se necesita ver texto, como un
tailde logs, evitando el rodeo de enviar píxeles a la tablet. - El flujo básico consiste en abrir un servidor SSH en la computadora, conectarse desde la terminal/cliente SSH de la tablet, crear una sesión con
DISPLAY=:0 screen -R aux, y usar un programa de entrada separado que inserta caracteres en la sesión con algo comoscreen -S aux -X stuff x. - Con la configuración
DISPLAY=:0, al ejecutar comandos comoxdg-open .,emacs &ogit gui &desde la terminal, el resultado puede verse en la sesión GUI principal. - Está en estado MVP/POC, con limitaciones explícitas de seguridad y usabilidad.
- Hay que darle a la app móvil acceso completo a la computadora.
- Hay que abrir un servidor SSH en la computadora; se propone iniciarlo solo en redes confiables y detenerlo fuera de ellas.
- Existen problemas con el manejo de la entrada
C-SPC, con la forma de ejecutarscreenpor cada tecla y con la dificultad de encontrar clientes de terminal para dispositivos antiguos. - Ambos enfoques dependen de la LAN.
- Se reporta que en un entorno de oficina con Kindle Fire funcionó bien como terminal, mientras que en casa, usando un iPad como pantalla para Emacs, resultó demasiado lento.
- El pegado funciona inyectando todo el portapapeles en la sesión de
screenconCtrl+Shift+V; la copia aún no está resuelta. - Como posibles mejores enfoques se proponen componentes de hyper y xterm.js, visualización en el navegador, envío de entradas de teclado vía WebSocket y una configuración de servidor basada en PTY.
1 comentarios
Opiniones de Hacker News
En el entorno de escritorio GNOME de Linux, se puede usar una tablet no solo para la terminal, sino también como monitor secundario: https://www.omgubuntu.co.uk/2022/06/use-ipad-as-second-monit...
Sigo esperando una solución mejor para incluso hacer streaming de juegos a una segunda “pantalla” de tablet como esta.
Al final, un iPad viejo parece difícil de usar en la práctica con este método, aunque se podría buscar otro cliente RDP que sí funcione.
Si no necesitas el cursor, funciona bastante bien.
Probé Weylus: https://github.com/H-M-H/Weylus
Funciona por LAN y permite controlar el mouse desde la tablet.
A veces hay latencia, pero puedes ajustar la resolución para usar menos ancho de banda; no sé bien qué tan estable sea.
No lo usé de forma regular.
Si tienes una laptop u otro dispositivo de sobra en Windows, SpaceDesk es una buena app gratuita. No es open source: https://www.spacedesk.net/
La uso junto con WSL2 en una máquina de desarrollo Windows y aprovecho una laptop vieja como pantalla externa; funciona bien incluso por Wi-Fi.
Me parece bastante buena como monitor secundario para viajar, y casi no se percibe latencia incluso a 60 fps y con ajustes altos.
En iPads que todavía son compatibles, a veces uso la función integrada de macOS para usar el iPad como pantalla secundaria, y funciona bastante bien.
Ojalá los conectores de cable plano LVDS de estos dispositivos estuvieran más estandarizados.
Bastaría con comprar un adaptador HDMI/DisplayPort y usarlo directamente; de hecho existen adaptadores así, pero hasta donde sé no hay un estándar único, ni nada cercano, para los cables planos LVDS.
Siento que
systemctles difícil de teclear.Si inicias/detienes servicios con frecuencia, recomiendo un alias como
alias sc='sudo systemctl'.También encaja bien con
sc, la utilidad de “service control” de las versiones tardías de Windows NT, y debería funcionar en bash/fish.Al desarrollar servicios, envolver
stop,statusystarten funciones comosce,sciyscsreduce la molestia de cambiar siempre el subcomandost*y el segundo argumento.journalctles aún peor de teclear.De forma similar, si quieres usar un teléfono viejo como alternativa a Stream Deck, puedes usar TouchPortal: https://www.touch-portal.com/
No es gratis, pero no es caro y funciona sorprendentemente bien.
Según el video que estoy escuchando ahora, actualmente el cliente solo está en Linux, y el host soporta Windows y Linux.
Probé un poco usando una Surface Pro con Linux como cliente y Windows como host, pero por ahora lo que lo limita es la falta de plugins.
Uso Stream Deck para gestionar sesiones de juego, y para manejar Steam, Discord, la soundboard y voz de Voicemod, a veces OBS, lanzar juegos, etc., en su estado actual básicamente solo podría gestionar OBS y cosas configuradas con atajos de teclado.
Las tablets deberían tener entrada HDMI/DisplayPort para poder usarlas directamente como pantalla.
La pantalla aparecería como otro dispositivo más capaz de leer y escribir bytes, y todos los dispositivos tendrían una interfaz autodocumentada basada en HTTP/HATEOAS que se pudiera consultar.
HDMI/DisplayPort o USB A/B/C/.../Z también usarían protocolos como gigabit Ethernet o Thunderbolt, y el ancho de banda determinaría la tasa máxima de cuadros a una resolución arbitraria.
Se podría consultar la metadata de la interfaz del dispositivo e intercambiar arreglos de bytes con pantallas, impresoras y almacenamiento, con una estructura donde solo cambiara el inicio del encabezado.
En cámaras y escáneres también podríamos haber descargado directamente archivos de imagen y video como desde la carpeta de documentos de un servidor web, sin drivers del fabricante; no había ningún motivo técnico que lo impidiera, y creo que Microsoft y Apple siguieron bloqueando este tipo de generalización.
Los estándares web también derivaron hacia un diseño por comité y se perdió la esperanza de unificar estas cosas; los smartphones y tablets parecen el extremo de una mentalidad de consumismo propietario comoditizado.
En general debería verse con cualquier visor de webcam, y en iPad también hay apps dedicadas como https://orion.tube/.
Sé que también hay opciones en Android, pero no tengo una tablet Android moderna para probar.
Antes resolví este caso de uso con Duet.
Funcionaba bien porque permitía extender la pantalla de la laptop a la pantalla del iPad: https://www.duetdisplay.com/
Buena idea.
Implementé algo parecido con bash, awk, xev, xdotool en lugar de un programa aparte.
Dentro de
screenuso cortar/pegar descreen, y para lo demás basta con usar el búfer de copia descreenyxclipboard.