It's been years since I used nouveau. My card runs cooler and faster with the proprietary driver, so I have no need for nouveau. However, I decided to give nouveau a try inside BLFS.
Basically, you just follow the blfs book. You need to compile all of chapter 24, including Mesa. Mesa is compiled with "nouveau,svga,swrast" and also with "drm,x11" (and I guess wayland. Since I don't use wayland, my situation is simpler). No LLVM. It is also worthwhile to install both xdemos-patch and mesa-demos. The latter has some useful utilities to test GLX. You also need to compile Xorg Nouveau Driver as well as the section "Hardware Video Acceleration".
For the kernel compile, DRM and nouveau are checked as "M", i.e., module. Since my card uses a GF119 chipset, it does not require firmware blobs. Newer cards require firmware blobs which are posted on the internet.
No special kernel parameters. If you were blacklisting nouveau, you need to un-blacklist it.
The book mentions creating a Glamor file for older cards. This did not work for me. My /etc/xorg.conf.d directory is empty except for a keyboard file. Also, any /etc/X11/xorg.conf file should be deleted.
The output of glxinfo | grep -i opengl should look like
Code:
OpenGL vendor string: nouveau
OpenGL renderer string: Gallium 0.4 on NVD9
OpenGL core profile version string: 4.3 (Core Profile) Mesa 17.1.5
OpenGL core profile shading language version string: 4.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 17.1.5
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.1 Mesa 17.1.5
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.10
OpenGL ES profile extensions:
I verified that this output is correct using a Fedora live cd.
Switching between the nouveau and the proprietary driver is not a problem. If you switch from the proprietary driver to nouveau, you need to uninstall the proprietary driver by running the nvidia-***.run script with the --uninstall switch and un-blacklisting nouveau. If you switch from nouveau to the proprietary driver, you need to blacklist nouveau and execute the proprietary driver script.
You could also try running glxgears to compare your FPS netween the two, although as has been mentioned many times, this is not definitive.