Como obter a resolução do monitor externo definida pelo xrandr para persistir

11

tl; dr

Meu laptop continua esquecendo a resolução correta do monitor externo anexado a ele. Como posso fazer a configuração "ficar"?

Detalhes

Eu tenho um laptop rodando o Linux Mint conectado a um monitor ViewSonic externo. Eu configuro para usar o monitor externo como uma segunda tela (ou seja, não espelhado). Isso funcionou bem por algumas semanas.

De repente, o laptop deixou de reconhecê-lo como um ViewSonic, ponto no qual não sabia sua resolução ideal ( 1600 x 1200 ), permitindo apenas um máximo de 1028 x 768 . 1 não funciona bem com meu laptop, que tem 1920 x 1200 de resolução.

Depois de muita frustração, encontrei esta resposta . Isso me ajudou a consertar o problema, como segue (a saída do comando cvt sendo a modeline que foi usada no próximo comando):

cvt 1600 1200
xrandr --newmode "1600x1200_60.00"  161.00  1600 1712 1880 2160  1200 1203 1207 1245 -hsync +vsync
xrandr --addmode VGA-1 1600x1200_60.00

Isto é exatamente o que eu desejei poder fazer, mas não consegui fazer através da GUI. (Existem razões pelas quais eu ainda amo a linha de comando ...)

Isso funcionou mais uma vez bem por um tempo. No entanto, quando iniciei o computador hoje e entrei, recebi um pop-up da área de notificação com uma sequência de erros sobre diferentes modos de tentativa que não estavam funcionando e o monitor externo foi desligado. Repeti os comandos acima e está funcionando novamente.

Eu tenho um cartão nVidia. Eu tentei instalar o driver proprietário quando as coisas começaram a dar errado, mas nesse ponto o monitor externo não era mais reconhecido, então voltei para o driver de código aberto. Eu não tenho um Xorg.conf ou um Xorg.conf.d , apenas um xorg.conf.failsafe .

Eu não quero repetir esses comandos toda vez que eu inicializo a máquina. Existe alguma maneira que eu possa salvar isso para o meu Xorg.conf ou algo assim? Já faz alguns anos desde que eu fiz muito com o X. Alguém pode me ajudar aqui?

1 Não consegui determinar por que isso aconteceu. Meu melhor palpite é uma atualização de driver problemática.

    
por Kazark 19.03.2014 / 00:00

2 respostas

5

Tenho certeza de que há uma maneira melhor, acho que isso é tratado por udev agora, mas se você souber que esses comandos resolverão isso, você poderá transformá-los em um script:

#!/usr/bin/env bash
cvt 1600 1200
xrandr --newmode "1600x1200_60.00"  161.00  1600 1712 1880 2160  1200 1203 1207 1245 -hsync +vsync
xrandr --addmode VGA-1 1600x1200_60.00

Torne-o executável e adicione-o aos aplicativos de inicialização do Ambiente de Área de Trabalho. Esta é provavelmente a melhor escolha se o seu DE lhe fornecer a opção.

Se você não puder fazer o que foi mencionado acima, como um hack sujo, adicione-os ao seu ~/.profile :

if [ ! -t 0 ] 
then
    cvt 1600 1200
    xrandr --newmode "1600x1200_60.00"  161.00  1600 1712 1880 2160  1200 1203 1207 1245 -hsync +vsync
    xrandr --addmode VGA-1 1600x1200_60.00
fi

O if [ ! -t 0 ] deve garantir que isso seja executado somente na GUI e .profile seja originado pelo gerenciador de login da hortelã, como eu lembro.

Agora, você deve também usar ~/.xsession , mas tive problemas com isso sendo ignorado. Muitas das abordagens antigas estão sendo substituídas e não tenho certeza de qual é o estado da arte.

    
por 19.03.2014 / 00:59
4

Se você estiver usando o driver proprietário da Nvidia, nvdia-settings deve ser a ferramenta GUI para configurar o arquivo Xorg.conf . Ele deve ter seu próprio pacote no Linux Mint, então a instalação seria tão simples quanto:

sudo apt-get install nvidia-settings

Isto deve colocar um ícone em seu menu em algum lugar, você pode executá-lo de lá (embora eu não tenho certeza de como você obtê-lo para ter permissões de root). Na linha de comando, acredito que você pode fazer:

sudo /usr/lib/nvidia/current/nvidia-settings

Se você quiser fazer a linha de comando, então nvidia-xconfig parece ser a ferramenta para usar ( nvidia-xconfig package para mim). De qualquer forma, você normalmente obterá melhores resultados com o driver proprietário, se estiver configurado corretamente. Essas ferramentas geram pelo menos um arquivo Xorg.conf razoável que você pode ajustar diretamente ou por meio de um desses programas.

    
por 19.03.2014 / 02:13