Como fazer alterações persistentes na ferramenta nvidia-settings

12

Quero desabilitar o VSync (chamado "Sync to VBlank" nas configurações da nvidia) da minha placa de vídeo nvidia.

Mas a configuração só entra em vigor se eu iniciar a ferramenta nvidia-settings. Depois de reiniciar o sistema, o VSync é ativado novamente e eu tenho que iniciar o programa novamente.

Tentei exportar xorg.confe colocá-lo, /etc/X11/mas sem sucesso.

Portanto, minha pergunta é como posso fazer alterações persistentes na ferramenta nvidia-settings?

aparato
fonte
1
Você era root quando tentou exportar o xorg.conf? nvidia-settingspode ser usado como um usuário comum, mas não pode exportar as configurações alteradas.
Jordanm 28/08
Eu não era root, mas eu o exportei para o diretório home e o movi manualmente chgrp root. direitos de leitura foram definidos para todos
apparat

Respostas:

9

Olhar para o leia-me realmente ajuda às vezes :)

Esse comportamento é intencional para dar a diferentes usuários a chance de ter suas próprias configurações.

Em resumo, o arquivo de configuração nvidia-settings é armazenado ~/.nvidia-settings-rce pode ser executado chamando nvidia-settings --load-config-onlyna inicialização.

Para mais detalhes, veja a parte relevante do leia-me:

4) Carregar configurações automaticamente

O driver NVIDIA X não preserva os valores definidos com as configurações da nvidia entre as execuções do servidor X (ou mesmo entre efetuar login e sair do X, com xdm, gdm ou kdm). Isso é intencional, porque usuários diferentes podem ter preferências diferentes, portanto, essas configurações são armazenadas por usuário em um arquivo de configuração armazenado no diretório inicial do usuário.

O arquivo de configuração é nomeado "~ / .nvidia-settings-rc". Você pode especificar um nome de arquivo de configuração diferente com a opção de linha de comando "--config".

Depois de executar a nvidia-settings uma vez e gerar um arquivo de configuração, você poderá executar:

nvidia-settings --load-config-only

a qualquer momento no futuro para fazer upload dessas configurações no servidor X novamente. Por exemplo, você pode colocar o comando acima no seu arquivo ~ / .xinitrc, para que suas configurações sejam aplicadas automaticamente quando você fizer login no X.

Seu arquivo .xinitrc, que controla quais aplicativos X devem ser iniciados quando você faz logon no X (ou startx), pode ser algo parecido com isto:

nvidia-settings --load-config-only & xterm & evilwm

ou:

nvidia-settings --load-config-only e gnome-session

Se você ainda não possui um arquivo ~ / .xinitrc, é provável que o xinit esteja usando um arquivo xinitrc em todo o sistema. Esse arquivo amplo do sistema geralmente está aqui:

/ etc / X11 / xinit / xinitrc

Para usá-lo, mas também para que a nvidia-settings carregue suas configurações, você pode criar um ~ / .xinitrc com o conteúdo:

nvidia-settings --load-config-only &. / etc / X11 / xinit / xinitrc

Os administradores de sistema podem optar por colocar o comando nvidia-settings load diretamente no script xinitrc do sistema.

Por favor, consulte a página de manual do xinit (1) para obter mais detalhes sobre a configuração do seu arquivo ~ / .xinitrc.

aparato
fonte
4

Como um adendo à resposta anterior, a nvidia-settings registra apenas os atributos relacionados a uma tela X no arquivo de configuração. Existem configurações adicionais que podem ser aplicadas a outros componentes; estes não são salvos.

Se você olhar, todos os atributos no arquivo de configuração serão prefixados {host}:0.0. Outros atributos que podem ser definidos estão relacionados à GPU e assim por diante.

Por exemplo, usei uma HDTV conectada a uma placa NVidia e preciso redefinir a compensação do Overscan (para reduzir o tamanho da tela exibido para caber na tela física). Isso pode ser ajustado na GUI, mas não é armazenado no arquivo de configuração. Na linha de comando, o comando é:

nvidia-settings --assign :0[gpu:0]/OverscanCompensation[DFP-1]=80

Observe que o nome do atributo inclui uma especificação de GPU.

Felizmente, SyncToVBlankestá no arquivo de configuração, portanto, apenas carregá-lo deve configurá-lo para você. Se você executar o comando, nvidia-settings --query allele listará todos os atributos e destinos aos quais o aplicativo se aplica.

StarNamer
fonte
0

Eu usei o editor dconf para definir o valor de Sync como VBlank

chrisonmanjaro
fonte
2
Esta resposta seria muito mais útil se você explicasse como usou o editor dconf.
Anthony Geoghegan