Como corrigir o bug de currículo da NVIDIA no Elementary OS Loki

Elementary OS Loki é uma distribuição Linux realmente sólida, mas ao usá-lo com os drivers proprietários da Nvidia, os usuários às vezes se deparam com um bug irritante saindo do estado de suspensão. A partir de agora, o bug de retomada da Nvidia no Elementry OS Loki persiste, e os usuários da comunidade estão tentando descobrir o porquê.

Nossa solução para corrigir o bug de currículo da Nvidia não é 100% sólida. Mesmo depois de configurar essa correção, você ainda pode se deparar com esses problemas. A correção em si depende do uso do sistema systemd init no Elementary OS para redefinir o gerenciador de janelas.

Você pode notar que o gerenciador de janelas Gala não é redefinido. Se o serviço se recusar a funcionar, considere excluir os arquivos e iniciar novamente ou executá-lo manualmente no iniciador de aplicativos Wingpanel:

gala --replace

Tente por sua conta e risco.

Escrevendo o roteiro

Antes de criar um gancho de suspensão no systemd, é necessário um script. Isso se deve ao fato de que você não pode escrever exatamente os comandos diretamente dentro do arquivo de serviço. Em vez disso, abra uma janela de terminal na área de trabalho do Elementary OS e obtenha acesso root usando sudo -s.

  Como reservar um Uber no Google Maps

Com o terminal raiz, abra o editor de texto nano.

nano /usr/bin/pantheon-wm-refresh.sh

O comando a seguir fará um novo arquivo SH pronto para ser salvo dentro do diretório /usr/bin/. A partir daqui, cole o seguinte código na parte superior do arquivo. Esse código é importante, pois definirá o ambiente em que o script será executado. Sem essa linha, tudo falhará.

#!/bin/bash

Com o shebang no topo do script, o arquivo SH tem tudo o que é necessário para o intérprete lê-lo. Agora, é hora de adicionar o restante dos argumentos do comando. Vamos começar especificando a exibição padrão. Isso é para garantir que o gerenciador de janelas seja atualizado na tela certa.

export DISPLAY=:0

Diretamente após “export DISPLAY=:0”, podemos especificar o comando que forçará o ambiente de desktop Pantheon a redefinir o gerenciador de janelas quando sair da retomada. O comando é um comando simples que dirá ao gerenciador de janelas do Elementary OS (conhecido como Gala) para se substituir.

gala --replace

Com o último comando escrito no shell script, é hora de salvar. Faça Ctrl + O para salvar tudo no nano. Após salvar, atualize as permissões do arquivo para que ele possa ser executado como um programa:

chmod +x /usr/bin/pantheon-wm-refresh.sh

Criando um serviço Systemd

O próximo passo no processo para corrigir o temido bug de retomada da Nvidia é criar o que é conhecido como “gancho do sono”. Este é um serviço que pode ser executado dentro do systemd quando o usuário retornar de “dormir”. Para começar, mais uma vez vamos precisar do editor de texto nano. Certifique-se de que seu terminal ainda tenha acesso root. Caso contrário, use sudo -s para obter root e abra um novo arquivo com:

nano /etc/systemd/system/[email protected]

Dentro do “[email protected]” arquivo, cole o seguinte:

[Unit]
Description=User resume actions
After=suspend.target

[Service]
User=%I
Type=simple
ExecStart=/usr/bin/pantheon-wm-refresh.sh

[Install]
WantedBy=suspend.target

Salve o novo arquivo systemd com Ctrl + O e, em seguida, use o comando systemctl para habilitar esse novo serviço no sistema init.

systemctl enable [email protected]

e

systemctl start [email protected]

A partir daqui, cada vez que você retomar seu PC da suspensão, o gerenciador de janelas Pantheon será atualizado. Isso evitará o irritante problema de tela com falhas que ocorre em alguns drivers de GPU proprietários da Nvidia que executam o Elementary OS.

  Como encontrar o UUID do seu Mac, iPhone e iPad

Outras opções de solução de problemas

Atualizar drivers

Tente nossa solução acima e nada funciona? Considere fazer uma dessas duas coisas. A primeira coisa a fazer seria obter a versão mais recente dos drivers proprietários da Nvidia instalados em seu sistema Elementary OS. Isso começa com a instalação do software que permite o uso do PPA no sistema operacional.

sudo apt install software-properties-common

Em seguida, adicione o PPA de driver atualizado regularmente com:

sudo add-apt-repository ppa:graphics-drivers/ppa

A partir daqui, abra o centro de software Elementary OS, procure por “drivers adicionais”, clique em instalar e inicie-o (se você ainda não o tiver). Desmarque a versão atual do driver proprietário da Nvidia que você está executando e instale a versão mais recente. Isso atualizará seu sistema para a versão mais recente dos drivers – algo que pode muito bem resolver bugs irritantes.

  Como alterar a cor da grade de transparência do Photoshop

Drivers de reversão

Se a correção ou a atualização da Nvidia para a versão mais recente não ajudar, considere tentar reverter os drivers proprietários da Nvidia e usar os drivers Open Source Noveau. Embora não sejam tão eficazes quanto os diretos da Nvidia, eles não terão o bug de currículo.

Substituir o gerenciador de janelas do Elementry OS

Se você está decidido a usar os drivers de código fechado no Elementary OS, considere substituir manualmente o gerenciador de janelas do Elementary OS por outra coisa, como Mutter.

Mutter é um gerenciador de janelas leve e bonito com efeitos visuais semelhantes. Basta executar este comando no terminal:

sudo apt install mutter

Em seguida, vá para as configurações do sistema (ou procure por inicialização) e adicione: mutter –replace como um comando. Na inicialização, seu PC substituirá automaticamente Gala por Mutter. Esta é uma solução grosseira, mas vai fazer o trabalho.