Cambiando de los drivers propietarios de Nvidia a los libres Nouveau

Lo malo de tener una computadora que tiene 8 años con la misma instalación de Linux es que algunos elementos se empiezan a quedar atrás.

El hardware es el mismo, no cambia o no cambia mucho, pero al usar Manjaro (una distribución rolling release) las actualizaciones son constantes y a veces es un poco complicado estar al día.

En enero de este año (léase Actualizar Manjaro, Failed to start Load Kernel Modules ¡Gulp!) sabrán que tuve un problema serio con los drivers propietarios de Nvidia.

Mi tarjeta de video funciona perfectamente, pero los drivers deben de estar a la par del kernel de Linux. El kernel avanza (nunca se va a detener) pero se vuelve complicado mantener a esas tarjetas viejitas y hay dos opciones.

En enero de este año tomé la primer opción. Instalar nuevamente los drivers propietarios de Nvidia con las recomendaciones de Philip Müller. Para evitar futuros problemas decidí dejar de cambiar la versión del kernel y las actualizaciones futuras de los drivers.

De esa forma pretendí curarme en salud y durante varios meses funcionó bastante bien… hasta ayer.

Nouveau significa nuevo

La actualización de ayer transcurrió sin problemas y tengo la costumbre de reiniciar mi equipo después de una actualización grande. Al encender mi equipo me encontré con una pantalla negra y un tímido cursor parpadeando en la esquina superior izquierda.

Era algo que había pospuesto, pero ya no quedaba de otra, era tiempo de instalar el driver libre nouveau, pero no fue tan sencillo como esperaba.

Encontré mi tarjeta en la lista de tarjetas soportadas por nouveau y al ser una tarjeta viejita estaba bien soportada, bueno pues a instalar.

Instalar nouveau

Manjaro tiene una opción para instalar tarjetas gráficas que simplifica mucho la tarea, pero creo que algo falló en mi caso y a lo mejor a alguién más le puede llegar a suceder.

Para instalar nouveau hay que elegir la opción libre. Según el wiki de Manjaro Configure Graphics Cards la instrucción es como sigue:

sudo mhwd -a pci free 0300

Y después hacer varias cosas, reinicié mi equipo y nada … no funcionó. Ni modo, a leer un poco más.

Cuando todo falla, el wiki de Arch

Bueno, intenté el método tradicional, pero por experiencia propia me he dado cuenta de que el wiki de Arch Nouveau (Español) es más completo para resolver algunos problemas.

Y revisé las instrucciones de instalación y los posibles problemas.

Al teclear

sudo modprobe nouveau

Algo sucedió en la pantalla, eso quiere decir que el driver esta instalado, pero no se carga durante el arranque.

Así que leyendo nuevamente me di cuenta de que el driver nouveau estaba en una lista negra, por eso no cargaba durante el arranque.

Ignoro porque estaba en una lista negra.

En el archivo /etc/modprobe.d/mhwd-gpu.conf aparecía en la lista negra el driver nouveau.

#
## Generated by mhwd - Manjaro Hardware Detection
##

# blacklist nouveau
blacklist ttm
blacklist drm_kms_helper
blacklist drm

Comenté esa línea y parecía que ya todo iba a funcionar ¡Iluso de mi!

El archivo de configuración xorg

Va el resumen, ya instalé el driver, el módulo se carga durante el arranque, pero sigue sin funcionar.

Recordé el famoso comando startx para iniciar la pantalla en modo gráfico y me dio unos mensajes de error interesantes.

Entonces revisé el archivo de configuración, en la carpeta /etc/X11/xorg.conf.d

Intenté un consejo creando un archivo 20-nouveau.conf pero no funcionó, así que revisé el archivo 90-mhwd.conf y me di cuenta de que todavía hacía uso del driver de nvidia.

Lo modifiqué para que usara nouveau es la sección Device del archivo:

Section "Device"
    Identifier     "Device0"
    Driver         "nouveau"
    VendorName     "NVIDIA Corporation"
    Option "NoLogo" "1"
EndSection

Reiniciar … redoble de tambores … un poco de suspenso ¡Funcionooooooo!

Mi equipo arrancó de forma normal, funcionó la interfaz gráfica, hice login y para comprobar teclee: inxi -G

 Graphics:
  Device-1: NVIDIA GT218 [GeForce 8400 GS Rev. 3] driver: nouveau v: kernel 
  Display: x11 server: X.Org 1.20.11 driver: loaded: nouveau resolution: 1440x900~60Hz 
  OpenGL: renderer: NVA8 v: 3.3 Mesa 21.1.2 

Eliminar lo que ya no se necesita

Como un plus, creo que ya no es necesario conservar y actualizar paquetes de nvidia que ya no se van a utilizar. Para hacer una lista de estos paquetes:

pamac list -i | grep nvidia

Y eliminar la mayoría de los paquetes de esa lista. Hubo un par que no se pudo eliminar por dependencias, pero los dejé, no creo que causen mayor problema.

Conclusiones

Escribo estas notas a un día de hecho el cambio. No he notado problemas mayores, algunos detalles menores en la decoración de las ventanas y configuración de fondos de escritorio pero nada más. La reproducción de videos es fluida y a simple vista no he notado una diferencia entre los drivers propietarios y los libres.

Este cambio me libera de futuros problemas con las actualizaciones del kernel y del driver nouveau, así que espero tener unos años extra de estabilidad o hasta que el hardware aguante.

¡Me encantaría saber que opinas!

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Salir de la versión móvil