De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.


Utilize qualquer Tablet/Smartphone como monitor estendido sem fio no GNU/Linux

Colaboração: Alessandro de Oliveira Faria

Data de Publicação: 26 de dezembro de 2013

Antes de colocarmos a mão na massa, primeiramente, entenderemos o conceito e tecnologias envolvidas na solução. Os recursos utilizados estão presentes em qualquer distribuição GNU/Linux atual, sendo assim, não me preocuparei com os pacotes e as respectivas compilações ou instalações do mesmo.

Tecnologias utilizadas

As tecnologias/recursos utilizados serão mencionados a seguir. Para um maior aprofundamento, sugiro a busca de mais informações nos sites oficias de cada projeto.

O funcionamento da solução deste artigo, consiste na utilização do Xorg Dummy, Xinerama e VNC Server. A junção destes, permite obter a funcionalidade de um monitor estendido sem fio junto à instalação do VNC client no dispositivo móvel.

Ferramentas

  • Xorg Dummy :: Nesta solução, utilizaremos o Xserver Dummy para permitir inicializar a tela virtual, ou seja, ao contrário do servidor X convencional, que não inicia sem um monitor, o Dummy permite tal operação.
  • Xinerama :: é utilizado por ser uma extensão do servidor X, que permite utilizar mais de um monitor físico com um único display virtual. Extremamente útil, neste documento.
  • x11vnc :: Outra ferramenta importante para este tutorial é o x11vnc, pois trata-se de um servidor VNC que disponibiliza o X de um Desktop Unix especificado, de tal maneira que um VNC client remoto, conecta-se com acesso total à tela real do seção gráfica
  • Android-vnc-viewer :: Este aplicativo Android-VNC, deve ser instalado em seu dispositivo móvel. Sua principal função, será operar como um cliente VNC na plataforma Android. Se estiver utilizando um aparelho com iOS ou Windows Mobile, procure um cliente VNC que funcionará perfeitamente com este documento.

Com as instruções de instalação deste artigo, teremos como resultado, dois ou mais monitores presentes no sistema operacional GNU/Linux.

A seguir, uma figura ilustrativa do resultado final do ambiente, o interessante é que podemos mover as janelas e o mouse do(s) monitor(es) convencionais para o Tablet como se fosse mágica. Caso desejarmos sair com o Tablet na mão para outro cômodo.

Clique para ampliar a imagem

Procedimentos

Primeiramente, instale os pacotes mencionados anteriormente (Xinerama, x11vnx e Dummy). A seguir, as instruções na distribuição openSUSE. Sugiro buscar as instruções da sua distribuição favorita para a instalação do mesmo.

  # zypper in libXinerama1 libxcb-xinerama0 x11vnc xf86-video-dummy 

A mágica está no arquivo /etc/X11/xorg.conf, onde devemos inserir as seguinte linhas:

Na seção ServerLayout, insira as 2 linhas:

  Screen      1  "Screen1" Below "Screen0"
  Option          "Xinerama" "1"

A primeira informa ao X que o monitor sem fio ficará abaixo do monitor principal, já a segunda linha, habilita o recurso Xinerama.

Para efeito de comparação, a seção ServerLayout ficaria assim:

  Section "ServerLayout"
      Identifier     "Layout0"
      Screen      0  "Screen0" 0 0
      Screen      1  "Screen1" Below "Screen0"
      InputDevice    "Keyboard0" "CoreKeyboard"
      InputDevice    "Mouse0" "CorePointer"
      Option          "Xinerama" "1"
  EndSection

Agora, crie o device virtual inserindo as seguinte linhas:

  ##Xdummy:##
  Section "Device"
    Identifier "Device1"
    Driver "dummy"
    VideoRam 256000
  EndSection
  
  ##Xdummy:##
  Section "Monitor"
    Identifier "Monitor1"
  EndSection
  
  ##Xdummy:##
  Section "Screen"
    Identifier "Screen1"
    Device "Device1"
    Monitor "Monitor1"
  EndSection

Agora reinicie o servidor X (rcxdm restart) e estamos prontos para começar a brincadeira NERD.

Execute o x11vnc precedido dos parâmetros, conforme o exemplo a seguir:

  # x11vnc -noxdamage -clip xinerama1 -forever 

Nesta linha, acabamos de levantar o servidor VNC na tela virtual (Dummy) que configuramos no arquivo xorg.conf. Com isto, basta configurar o aplicativo android-vnc-viewer com o IP da máquina com o x11vnc em execução (pressupondo que o aparelho está conecta na rede sem fio junto ao computador principal), conectá-lo e pronto!

A seguir, um vídeo demonstrativo com o objetivo de proporcionar o resultado final do brinquedo. Com isto, podemos carregar para uma reunião o Tablet e continuar a tarefa em execução. Enfim, as possibilidade são inúmeras.


Assista ao Vídeo no Youtube

Para finalizar, críticas e sugestões: cabelo[ at ]opensuse.org

Artigo publicado originalmente no portal Viva o Linux

Alessandro de Oliveira Faria é Sócio-fundador da empresa NETi TECNOLOGIA fundada em Junho de 1996, empresa especializada em desenvolvimento de soluções com a tecnologia de Reconhecimento Facial, Consultor Biométrico, Experiência em Realidade Aumentada, Visão Computacional (opencv), Neuro-tecnologia e Programação multi-nuclear com GPU, atua na área de tecnologia desde 1986, leva o Linux a sério desde 1998, membro da comunidade Viva O Linux com mais de 100 artigos publicados, mantenedor da biblioteca open-source de vídeo captura, Embaixador e openSUSE Member.

Adicionar comentário

* Campos obrigatórios
5000
Powered by Commentics

Comentários

Nenhum comentário ainda. Seja o primeiro!


Veja a relação completa dos artigos de Alessandro de Oliveira Faria