Isso me custou tempo, então só para salvá-lo e ajudar outras pessoas.
ESTE É UM HACK ESPECÍFICO DE WAYLAND! XORG NEEEDS xrandr CONFIGURAÇÕES.
Esta combinação não define a resolução correta automaticamente quando a tela secundária é conectada ao conector VGA, eu tenho 1024x768 enquanto o monitor é capaz de 1920x1080.
Quando você está indo na resolução errada, encontre os nomes dos conectores lógicos, é um dos nomes "conectados". Outro é provavelmente o de seus laptops. Se você não tem certeza sobre qual é o monitor externo, desligue-o, reinicialize, execute o script abaixo novamente e compare os resultados.
#!/bin/bash
for p in /sys/class/drm/*/status; do con=${p%/status}; echo -n "${con#*/card?-}: "; cat $p; done
As minhas eram:
DP-1: disconnected
DP-2: connected
eDP-1: connected
HDMI-A-1: disconnected
HDMI-A-2: disconnected
O DP-2 é o meu caso.
Obtenha a nova modeline:
sudo apt install read-edid
sudo get-edid | parse-edid
É a linha (adivinhe) que começa com o Modeline.
Altere o identificador entre aspas duplas para a resolução necessária, como "1920x1080" ou então o processo de criação ao longo da linha não produzirá resultados.
A minha parecia
Modeline "Mode 0" 152.84 1920 2000 2060 2250 1080 1086 1094 1132 -hsync -vsync
e assim se tornou
Modeline "1920x1080" 152.84 1920 2000 2060 2250 1080 1086 1094 1132 -hsync -vsync
Instalar dependências:
sudo apt install zsh edid-decode automake dos2unix
Clonar e criar:
git clone https://github.com/akatrevorjay/edid-generator
cd edid-generator
./modeline2edid - <<< 'Modeline "1920x1080" 152.84 1920 2000 2060 2250 1080 1086 1094 1132 -hsync -vsync'
make
Isso criará um 1920x1080.bin. Copie-o para um lugar para que o kernel possa carregá-lo.
sudo mkdir /lib/firmware/edid
sudo cp 1920x1080.bin /lib/firmware/edid
Reinicialize, quebre o grub (esc), edite a linha de comando do kernel para se parecer com
linux /vmlinuz-4.13.0-16-generic.efi.signed root=UUID=51a26e51-1e0e-41db-963a-60d62e467179 ro drm_kms_helper.edid_firmware=DP-2:edid/1920x1080.bin quiet splash $vt_handoff
onde o DP-2 é a conexão lógica encontrada no primeiro passo. edid / 1920x1080.bin é o caminho relativo para o arquivo criado na etapa de criação.
A última coisa que quase me pegou foi que o monitor não mudou automaticamente para VGA.
Se você está feliz com o resultado, você pode fazer com que o parâmetro de linha de comando do kernel seja permanente, adicionando a string
drm_kms_helper.edid_firmware=DP-2:edid/1920x1080.bin
para arquivar o / etc / default / grub na linha que começa com
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
altere para
GRUB_CMDLINE_LINUX_DEFAULT="drm_kms_helper.edid_firmware=DP-2:edid/1920x1080.bin quiet splash"
Executar
sudo update-grub
para aplicar as configurações de / etc / default / grub ao /boot/grub/grub.cfg. Reinicie e aproveite.