Show HN: Usando um tablet antigo como monitor extra
(github.com/alex028502)- Um MVP/POC para usar um tablet antigo não como uma tela auxiliar baseada em pixels, mas como uma tela de terminal SSH: a ideia é conectar ao computador a partir de um cliente SSH no Android e injetar entradas de teclado em uma sessão do
screen - A configuração é voltada a casos de uso em que a placa de vídeo já chegou ao limite, não é possível encontrar um adaptador de display virtual e a necessidade é apenas ver texto, como um
tailde logs, evitando a alternativa de enviar pixels para o tablet - O fluxo básico consiste em abrir um servidor SSH no computador, conectar a partir do terminal/cliente SSH do tablet, criar uma sessão com
DISPLAY=:0 screen -R auxe usar um programa de entrada separado para inserir caracteres na sessão com algo comoscreen -S aux -X stuff x - Com a configuração
DISPLAY=:0, ao executar comandos comoxdg-open .,emacs &egit gui &no terminal, o resultado pode ser visto na sessão GUI principal - Está em estado de MVP/POC, com limitações explícitas de segurança e usabilidade
- É preciso conceder ao app móvel acesso total ao computador
- É necessário abrir um servidor SSH no computador; a forma de uso sugerida é iniciá-lo apenas em redes confiáveis e interrompê-lo nas demais
- Há problemas com o tratamento da entrada
C-SPC, com a abordagem de executarscreena cada tecla e com a dificuldade de encontrar clientes de terminal para dispositivos antigos - Ambos os métodos dependem da LAN
- Em um ambiente de escritório com Kindle Fire, funcionou bem como terminal; em casa, no iPad, ficou lento demais para ser usado como tela do Emacs
- A colagem usa
Ctrl+Shift+Vpara injetar todo o conteúdo da área de transferência na sessão doscreen, enquanto a cópia ainda não foi resolvida - Como candidatos a abordagens melhores, são sugeridos os componentes do hyper e do xterm.js, exibição no navegador, envio de entradas de teclado via WebSocket e uma configuração de servidor baseada em PTY
1 comentários
Opiniões no Hacker News
No ambiente de desktop GNOME do Linux, é possível usar um tablet não só como terminal, mas também como monitor auxiliar: https://www.omgubuntu.co.uk/2022/06/use-ipad-as-second-monit...
Ainda estou esperando uma solução melhor para fazer streaming até de jogos para esse segundo “monitor” em tablet
No fim, parece difícil usar um iPad antigo de verdade desse jeito, embora dê para procurar outro cliente RDP que funcione
Se você não precisar do cursor, funciona bem o bastante
Já usei o Weylus: https://github.com/H-M-H/Weylus
Funciona pela LAN e permite controlar o mouse pelo tablet
Às vezes há atraso, mas dá para ajustar a resolução para usar menos largura de banda; não tenho certeza quanto à estabilidade
Não usei regularmente
Se no Windows você tiver um notebook ou dispositivo sobrando, o SpaceDesk é um bom app gratuito. Não é open source: https://www.spacedesk.net/
Uso junto com WSL2 em uma máquina de desenvolvimento Windows e aproveito um notebook antigo como monitor externo; funciona bem até por Wi-Fi
Parece bem bom como monitor auxiliar em viagens, e quase não dá para perceber latência mesmo a 60 fps e com configurações altas
Em iPads ainda compatíveis, às vezes uso o recurso integrado do macOS de usar o iPad como tela auxiliar, e ele funciona muito bem
Seria melhor se os conectores de cabo flat LVDS desses dispositivos fossem mais padronizados
Aí bastaria comprar um adaptador HDMI/DisplayPort e usar direto; esses adaptadores até existem, mas, até onde sei, os cabos flat LVDS não seguem um padrão único nem algo perto disso
Acho
systemctldifícil de digitarSe você inicia/para serviços com frequência, recomendo um alias como
alias sc='sudo systemctl'Combina bem também com
sc, o utilitário “service control” das versões posteriores do Windows NT, e deve funcionar no bash/fishAo desenvolver serviços, funções como
sce,sciescsencapsulandostop,statusestartreduzem o incômodo de trocar sempre o subcomandost*e o segundo argumentojournalctlainda pior de digitarDe forma parecida, para usar um celular antigo como alternativa ao Stream Deck, dá para usar o TouchPortal: https://www.touch-portal.com/
Não é gratuito, mas não é caro, e funciona surpreendentemente bem
Pelo vídeo que estou ouvindo agora, o cliente atualmente só existe para Linux, e o host é compatível com Windows e Linux
Usei um pouco um Surface Pro rodando Linux como cliente e Windows como host, mas o que hoje limita é a falta de plugins
Uso o Stream Deck para gerenciar sessões de jogos, mas, para lidar com Steam, Discord, soundboard e voz do Voicemod, OBS ocasionalmente e iniciar jogos, no estado atual só dá para gerenciar coisas como OBS e itens configurados com atalhos de teclado
Tablets deveriam ter entrada HDMI/DisplayPort para poderem ser usados diretamente como monitor
Um display apareceria como mais um dispositivo capaz de ler e escrever bytes, e todos os dispositivos teriam uma interface autodocumentada, consultável, baseada em HTTP/HATEOAS
HDMI/DisplayPort ou USB A/B/C/.../Z também usariam protocolos como gigabit Ethernet ou Thunderbolt, e a largura de banda determinaria a taxa máxima de quadros em qualquer resolução
Consultando os metadados de interface do dispositivo, seria possível enviar e receber arrays de bytes de monitores, impressoras e dispositivos de armazenamento, com uma estrutura em que só o início do cabeçalho mudasse
Em câmeras e scanners, também seria possível baixar diretamente arquivos de imagem e vídeo como se fossem uma pasta de documentos em um servidor web, sem drivers do fabricante; não havia motivo técnico para isso ser impossível, e vejo Microsoft e Apple como tendo continuado a bloquear esse tipo de generalização
Os padrões web também caminharam para um design por comitê, e a esperança de integrar essas coisas desapareceu; smartphones e tablets parecem o extremo de uma mentalidade de consumismo proprietário comoditizado
Em geral, qualquer visualizador de webcam deve conseguir mostrar a imagem, e no iPad há até apps dedicados como https://orion.tube/
Sei que também há opções no Android, mas não tenho um tablet Android moderno para testar
Antigamente resolvi esse uso com o Duet
Funcionava bem porque permitia estender a tela do notebook para a tela do iPad: https://www.duetdisplay.com/
Boa ideia
Implementei algo parecido com bash, awk, xev, xdotool, em vez de usar um programa separado
Dentro do
screen, uso o recortar/colar do próprioscreen; para o resto, basta usar o buffer de cópia doscreene oxclipboard