Quem hoje instala uma distribuição de Linux no desktop e vê seu monitor ser reconhecido e configurado com a melhor resolução possível, ou pelo menos com uma resolução bastante razoável, pode não ter idéia de como isso já foi algo complicado de obter, há poucos anos.

Uso Linux no meu desktop desde 1996, e não exagero ao dizer que já houve tempo em que eu passava alguns dias usando apenas o console em modo texto, simplesmente por não conseguir fazer funcionar o ambiente gráfico em uma nova placa de vídeo (compatível!), ou não obter uma resolução tolerável em um novo monitor. O tempo foi passando, eu fui aprendendo, e logo descobri os macetes para obter uma configuração tolerável sem maior dificuldade, para ir usando enquanto não conseguisse otimizar especificamente para o meu hardware, mas mesmo estes macetes envolviam passos que eram um verdadeiro calvário.


Um monitor colorido da era paleozóica

Para começo de conversa, havia o utilitário xf86config, integrante do pacote X11 (responsável pelo suporte ao modo gráfico), que servia para gerar o arquivo de configuração básica XF86Config. Naqueles tempos heróicos, ele era muito melhor do que não dispor de qualquer ferramenta de apoio à configuração, mas comparado ao que temos hoje (ao menos para o hardware com bom nível de suporte e compatibilidade), equivalia a uma sessão de tortura.

Lembro do desafio que era passar por um processo de tentativa e erro, até conseguir ajustar o ambiente desejado, pois a cada repetição era necessário responder de novo (mesmo que fosse pra manter o default) ao conjunto completo de perguntas (sobre o mouse, sobre o teclado, sobre a placa de vídeo, detalhes técnicos sobre o monitor, sobre a resolução pretendida, etc.), por intermédio de menus nada amigáveis.


Saudosa Trident 9440 de 1MB, quantas dificuldades me causaste…

Um dos passos necessários, nesta época, era verificar no manual do monitor os seus parâmetros de sincronismo vertical e horizontal. A documentação oficial alertava que para alguns monitores menos avançados ou mais sensíveis, informar parâmetros que excedessem suas capacidades poderia causar dano permanente; por outro lado, informar parâmetros que ficassem abaixo da capacidade real tornava impossível alcançar a resolução e frequência máximas do monitor, por isso estes dados se tornavam realmente valiosos – após pesquisá-los, eu colava uma etiqueta com eles atrás de cada monitor que passava pelas minhas mãos, por saber que fatalmente eu ainda teria que repetir a operação algum dia.

Depois de alguma experiência, o passo natural era migrar para a edição direta do arquivo de configuração XF86Config, com auxílio dos HOW-TOs, da documentação oficial do X11 e dos drivers, e de alguma leitura do código-fonte, quando a coisa apertava, ou quando se desejava um recurso muito recente ou ainda não documentado completamente.

Aí a questão dos parâmetros de hardware mudava um pouco, pois além de saber o sincronismo horizontal e vertical do monitor, era preciso gerar a linha de configuração chamada MODELINE adequada a eles (e à resolução e frequência desejadas). Logo surgiram utilitários para ajudar a fazer os cálculos, mas na época o mais comum era procurar na Internet pelos arquivos de configuração de alguém mais que tivesse o mesmo monitor, e reaproveitar as modelines.

Nessa época, era comum publicar na web (inclusive aqui no BR-Linux) artigos ou “tutoriais” em que o usuário que vencia o desafio da configuração de uma nova placa ou monitor explicava como tinha ficado o seu arquivo de configuração, para que outros pudessem replicar.

A virada da maré

Esta situação demorou para começar a mudar, mas felizmente quando houve o ponto de inflexão, o suporte a estes hardwares avançou rapidamente.

Primeiro surgiram ferramentas mais amigáveis de configuração, que incluíam bases de dados mais completas sobre os parâmetros de monitores, facilitando a seleção. Depois veio o reconhecimento automático, e a evolução das placas gráficas foi acompanhada – ao menos para algumas marcas e modelos selecionados – por drivers mais modernos e oferecendo grande gama de recursos.

Simultaneamente os grupos dedicados ao desenvolvimento da infra-estrutura do desktop gráfico alcançaram um grau maior de sintonia, e passamos a contar com mais ambientes que tiravam proveito destes recursos, tais como aceleração gráfica, ambientes 3D, alguns toques de usabilidade e os aplicativos essenciais – claro que ainda há muito a avançar, mas estamos em uma situação bem melhor, no que diz respeito à funcionalidade default à disposição de quem acabou de instalar uma distribuição, do que estávamos há poucos anos.

Minha experiência é limitada ao hardware que possuo, mas os drivers de vídeo Intel dos notebooks e netbooks que tenho usado, bem como o driver proprietário da NVidia (que inclui o utilitário de configuração nvidia-settings), têm me oferecido todos os recursos que eu preciso, e faz tempo que não edito um arquivo de configuração – embora até uns 2 anos atrás eu precisasse fazê-lo sempre que queria habilitar um segundo monitor no meu desktop – hoje eu faço isso pelo nvidia-settings, ou mesmo pela configuração de monitores do Ubuntu, dependendo da versão.


Conector DVI

Destaque especial vai para o reconhecimento dos monitores. Falei acima sobre as dificuldades e os riscos associados à questão dos parâmetros de sincronismo, e agora preciso frisar que faz vários anos que não sei mais o que é precisar pesquisar, preencher ou confirmar este tipo de parâmetro.

O reconhecimento automático tem sido uma realidade para mim e, embora eu só adote monitores LG Flatron, pelo meu laboratório passam frequentemente monitores de outras marcas (AOC, LG, Philips…) e a situação tem sido idêntica: liga o PC, e o monitor é reconhecido e ativado com boa qualidade.

Infelizmente já vivi uma exceção (com um AOC cuja resolução máxima era incomum), e aí para obter a resolução máxima deu algum trabalho, lembrando os velhos tempos – mas foi um caso em um universo de dezenas, e a configuração automática chegou a me oferecer uma resolução aceitável.

A minha instalação

O desktop em que eu faço o BR-Linux nosso de cada dia é composto por 2 monitores, ambos conectados a uma mesma placa NVidia com duas saídas: uma com conector VGA padrão, e a outra com conector DVI. A foto abaixo mostra a configuração em que eles se encontram:

O da esquerda é um LG Flatron W2353V de 23 polegadas (uso em 1920×1080 pixels), reconhecido pelo Linux como de hábito: foi plugar, ligar e usar, pois o sistema já estava configurado para ter 2 monitores. Este modelo foi lançado há pouco tempo e tem alguns recursos que a LG chama de “Smart”, incluindo ajuste automático à luminosidade do ambiente (que eu não uso, mas deve ser legal pro pessoal dos jogos e filmes), e entrada HDMI em adição às usuais VGA e DVI. Eu gosto bastante dos menus OSD dele, que inclusive permitem adaptação a quem usa o monitor no formato retrato (“em pé”), e não no usual paisagem (“de lado”). Outros toques sutis são o consumo de energia total (para meu tipo de uso) bem mais reduzido que o dos demais monitores da casa, e o controle (brilho, contraste, etc.) acionados pelo toque na moldura do monitor, em botões internos que só se iluminam quando a mão do operador se aproxima deles.


Um monitor da série W53

Uma das vantagens de escrever em blogs é que estas empresas se interessam pela gente, e mandam este tipo de hardware para que possamos descrevê-los para o público que nos lê, então aí vai a dica: a LG está dando 10 monitores desta série em um concurso cultural. Eu uso e recomendo, estou bastante satisfeito com o que está aqui (e ali na foto acima).

Já o da direita é um pouco menos recente, um LG M228WA-BM de 22 polegadas. A imagem dele é super boa, a resolução também (uso em 1680×1050), os controles (brilho, etc.) ficam escondidos (mas acessíveis) acima da tela, ele inclui boas caixas de som embutidas, e tem entradas VGA, DVI, S-Video, composto e componente. Comparando com outros modelos da LG, eu noto que ele demora um pouco mais para exibir a imagem após ser ligado – e como eu tenho o hábito de desligá-lo fisicamente quando me afasto, isso incomoda um pouco, sem atrapalhar.

O que este monitor de 22 polegadas tem como maior vantagem em relação ao outro, para mim, é a presença das entradas traseiras para parafusos padrão VESA, que permitem prendê-lo a um suporte articulado para monitor como o da imagem acima. Note que o eixo vertical do suporte aparece acima do monitor da direita na foto do meu desktop. Naturalmente este braço articulado não depende em nada do sistema operacional para permitir que eu posicione o monitor na altura, distância e ângulo que eu desejar, mas há algo mais: ele permite que eu rotacione o monitor, deixando-o em formato retrato sempre que eu vou passar bastante tempo trabalhando com documentos textuais ou com produção web nele – e nisso o sistema operacional precisa intervir, para passar a exibir nele a imagem “em pé”.

Com os 2 monitores, eu consigo manter o que estou produzindo bem em frente aos meus olhos, maximizado, e sobra espaço na outra tela para colocar material de referência e consulta, ou mesmo para ativar o bate-papo ou um vídeo, quando não estou fazendo nada muito complicado. O desktop ampliado lateralmente também permite ter maior conforto na hora de realizar operações que envolvem muitas janelas, como no screenshot duplo acima, que mostra as janelas que usei para scannear a capa de uma revista no Gimp.

Concluindo

Como no caso dos equipamentos multimídia, que mencionei ontem nesta mesma série, o vídeo está bastante ligado ao entretenimento, e por isso deve continuar em evolução constante. Surgem novos padrões de conexões, protocolos, eventuais necessidades de suportar mecanismos de proteção a cópia (como já ocorre nas placas de vídeo com HDMI), e muito mais.

Um caso especial que já conheci de perto, mas é uma situação um pouco diferente (e ocorre com todos os sistemas operacionais que testei) é a de algumas TVs de LCD ou plasma com entrada VGA, que simulam (via interpolação ou outras técnicas) resoluções mais altas do que as que podem de fato exibir com qualidade. Nestes casos, como o sistema operacional acaba optando pela resolução mais alta disponível, perde-se definição, e aí pode dar algum trabalho (eventualmente até passando pela velha pesquisa de “modelines”) para conseguir selecionar a resolução com melhor definição.

O suporte a tudo isso no Linux está longe de ser completo, e certamente nunca será, ao menos enquanto a tecnologia estiver em evolução: sempre haverá um novo padrão em desenvolvimento. E nem todos os monitores e placas de vídeo têm o suporte completo. Mas o que eu desejo hoje, com o penúltimo artigo desta série sobre a evolução do suporte a hardware, é erguer um brinde a todos os procedimentos de configuração de vídeo que já foram complicados e fora do alcance de muitos usuários, e agora são realizados automaticamente para que só nos preocupemos em… usar!

Leia também: