Cómo hacer cambios persistentes en la herramienta de configuración de nvidia

12

Quiero deshabilitar VSync (se llama "Sync to VBlank" en nvidia-settings) para mi tarjeta gráfica nvidia.

Pero la configuración solo tiene efecto si inicio la herramienta nvidia-settings. Después de reiniciar el sistema, VSync se vuelve a habilitar y tengo que iniciar el programa nuevamente.

Intenté exportarlo xorg.confy ponerlo, /etc/X11/pero sin éxito.

Entonces, mi pregunta es ¿cómo puedo hacer persistentes los cambios en la herramienta de configuración de nvidia?

apparat
fuente
1
¿Fuiste root cuando intentaste exportar xorg.conf? nvidia-settingsse puede usar como usuario normal, pero no se puede exportar la configuración modificada.
jordanm
No era root, pero lo exporté a mi directorio de inicio y lo moví manualmente + chgrp root. se establecieron derechos de lectura para todos
apparat

Respuestas:

9

Examinar el archivo Léame ayuda a veces :)

Este comportamiento es intencional para dar a diferentes usuarios la oportunidad de tener su propia configuración.

En resumen, el archivo de configuración nvidia-settings se almacena ~/.nvidia-settings-rcy se puede ejecutar llamando nvidia-settings --load-config-onlyal inicio.

Para obtener más detalles, aquí está la parte relevante del archivo Léame:

4) Cargando configuraciones automáticamente

El controlador NVIDIA X no conserva los valores establecidos con la configuración nvidia entre las ejecuciones del servidor X (o incluso entre iniciar y cerrar sesión en X, con xdm, gdm o kdm). Esto es intencional, porque diferentes usuarios pueden tener diferentes preferencias, por lo tanto, esta configuración se almacena por usuario en un archivo de configuración almacenado en el directorio de inicio del usuario.

El archivo de configuración se llama "~ / .nvidia-settings-rc". Puede especificar un nombre de archivo de configuración diferente con la opción de línea de comandos "--config".

Después de ejecutar nvidia-settings una vez y generar un archivo de configuración, puede ejecutar:

nvidia-settings --load-config-only

en cualquier momento en el futuro para cargar nuevamente esta configuración al servidor X. Por ejemplo, puede colocar el comando anterior en su archivo ~ / .xinitrc para que su configuración se aplique automáticamente cuando inicie sesión en X.

Su archivo .xinitrc, que controla qué aplicaciones X deben iniciarse cuando inicie sesión en X (o startx), podría verse así:

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

o:

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

Si aún no tiene un archivo ~ / .xinitrc, entonces es probable que xinit esté utilizando un archivo xinitrc en todo el sistema. Este archivo de todo el sistema suele estar aquí:

/ etc / X11 / xinit / xinitrc

Para usarlo, pero también para que nvidia-settings cargue su configuración, puede crear un ~ / .xinitrc con el contenido:

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

Los administradores del sistema pueden optar por colocar el comando de carga nvidia-settings directamente en el script xinitrc del sistema.

Consulte la página de manual de xinit (1) para obtener más detalles sobre la configuración de su archivo ~ / .xinitrc.

apparat
fuente
4

Como anexo a la respuesta anterior, nvidia-settings solo registra aquellos atributos relacionados con una pantalla X en el archivo de configuración. Hay configuraciones adicionales que pueden aplicarse a otros componentes; Estos no se guardan.

Si observa, todos los atributos en el archivo de configuración tienen el prefijo {host}:0.0. Otros atributos que se pueden establecer están relacionados con la GPU, etc.

Por ejemplo, utilicé un HDTV conectado a una tarjeta NVidia y necesito restablecer la compensación de sobreexploración (para reducir el tamaño de la pantalla visualizada para que se ajuste a la pantalla física). Esto se puede ajustar desde la GUI, pero no se almacena en el archivo de configuración. Desde la línea de comando, el comando es:

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

Tenga en cuenta que el nombre del atributo incluye una especificación de GPU.

Afortunadamente, SyncToVBlankestá en el archivo de configuración, por lo que solo cargarlo debería configurarlo para usted. Si ejecuta el comando nvidia-settings --query all, enumerará todos los atributos y los objetivos a los que se aplica.

StarNamer
fuente
0

Usé dconf editor para establecer el valor de Sync en VBlank

chrisonmanjaro
fuente
2
Esta respuesta sería mucho más útil si explicara cómo utilizó dconf editor.
Anthony Geoghegan