Troubleshooting

I have an Nvidia card


UPDATE: I have succesfully emerged the latest nvidia-drivers against rt-sources, after making a change to the nvidia-drivers-390 ebuild. This nvidia-drivers version is now in the GentooStudio overlay. The caveat is the driver will not load when using the full-preempt model of the kernel. To use this driver, you need “normal preempt” or lower. I am trying to learn why the full-preempt model interferes with the Nvidia driver accessing VBIOS and will provide updates as I figure things out.

Note: I suspect the VBIOS/PREEMPT_FULL issue might affect Optimus laptops only. I will need to test the ebuild tweak on a non-Optimus desktop.


rt-sources and nvidia-drivers are not compatible. For audio, you do not need advanced or 3D graphics. If you do other things on your Gentoo Studio system, such as play games, you should compile gentoo-sources and boot into that to use nvidia-drivers and play games. When booting into your rt kernel, let the default config without specifying any video cards in make.conf take over. More than this you will need to manage yourself, as it’s beyond the scope of Gentoo Studio.

That said, I have trouble on my primary DAW with this setup. I get xruns by the second using either nouveau or nv. I get xruns almost never when I use nvidia-drivers/rt-sources. With this setup, I really have to push my system to get underruns, and this is while maintaining a 10 ms latency or less. So if this is something you want to do, you will need nvidia-drivers-381.22-r1 and rt-sources-4.9.76_p61, and you will need to mask all higher versions of both. Don’t forget to eselect opengl after emerging. When compiling rt-sources, don’t forget to genkernel –menuconfig all and make sure that fully preemptible is the preemption model.

Here are the steps you need to take to use nvidia-drivers and rt-sources. Please note that WordPress mangles double-dashes, so you need to type actual double-dashes where you see “(double-dash)”:

  1. su – (Make sure you are root.)
  2. mkdir -p /etc/portage/package.mask
  3. echo “>sys-kernel/rt-sources-4.9.76_p61” >> /etc/portage/package.mask/sys-kernel (Because quotes/marks may not copy correctly, you may need to manually type these lines.)
  4. echo “>x11-drivers/nvidia-drivers-381.22-r1″ >> /etc/portage/package.mask/x11-drivers
  5. echo “VIDEO_CARDS=\”nvidia\”” >> /etc/portage/make.conf (Or edit this line if you have it already.)
  6. emerge rt-sources (You should see rt-sources-4.9.76_p61 emerging.)
  7. emerge -uDN @system @world (You should see xorg-drivers re-emerging.)
  8. eselect kernel list
  9. eselect kernel set (number next to rt-sources-4.9)
  10. mount /dev/sda2 /boot (Replace /dev/sda2 with your boot partition if you set it up differently during a manual install.)
  11. ls /boot (To confirm your boot partition has been mounted. You should see kernels and grub stuff.)
  12. genkernel (double-dash)menuconfig all (When the menu appears, navigate to Processor Type & Features and set the Low-Latency Preemption Model to Fully Preemptible. Make other adjustments if you know what you are doing, otherwise, the defaults are fine.)
  13. The previous step will take a while.
  14. grub-mkconfig -o /boot/grub/grub.cfg
  15. eselect opengl list (You should see nvidia as an option.)
  16. eselect opengl set (Number next to nvidia.)
  17. Reboot.

Please report if the above does not work and/or you continue to get xruns.

I have submitted a bug report regarding Nouveau. https://bugs.gentoo.org/646672

It looks like this is actually a known issue already. See post at bottom of this page: https://linuxmusicians.com/viewtopic.php?f=27&t=17929&sid=32988f37795ad01988229f0f76d921e7

media-sound/alsa-tools-1.1.6 fails with pcxhr error

If you do not have a Digigram PCXHR, you can resolve this by changing

ALSA_CARDS="*"

to

ALSA_CARDS="emu10k1 emu10k1x hdsp hdspm ice1712 mixart rme32 rme96 sb16 sbawe sscape usb-usx2y vx222"

in /etc/portage/make.conf.

ERROR: Failed to compile the “firmware_install” target…

genkernel needs to be keyworded ~amd64 in /etc/portage/package.keywords/sys-kernel:

sys-kernel/genkernel ~amd64

Once you have updated genkernel, this problem should be resolved.

For more info, see this post: https://forums.gentoo.org/viewtopic-p-8161550.html

Booting

If, after installing, you kernel hangs on boot but doesn’t actually panic, you might need to perform the following:

  1. Edit /etc/default/grub by adding this line: GRUB_CMDLINE_LINUX_DEFAULT="acpi=off nomodeset xforcevesa"
  2. Make sure boot partition is mounted: mount /dev/sda2 /boot in chroot or mount /dev/sda2 /mnt/gentoo/boot outside of chroot.
  3. grub-mkconfig -o /boot/grub/grub.cfg
  4. Reboot.

Updating

Running eix-sync, you get:

fatal: destination path '.' already exists and is not an empty directory.

Solution:

rm -rvf /usr/local/portage

eix-sync

X-Runs: Known Causes

The following are known causes of x-runs. There is nothing you can do about this except avoid/ignore them.

  • Firefox with JACK support. Don’t use Firefox while recording.
  • jack_keyboard causes an x-run when exiting.
  • Ardour may cause an x-run or two when starting/exiting. This can be ignored.
  • Audacity may cause an x-run when starting/exiting.

If x-runs occur while using a JACK program normally, you need to tweak your settings until you have zero x-runs under normal use. Generally, start as low as you can with your buffer size and work your way up. Start as high as you can with your sample rate and work your way down. The number of periods should be 2 or 3 – you will have to experiment to see which works better on your system. If you establish a zero-x-run config and you are not happy with the latency, you will need hardware that can handle a lower latency without x-runs, or decide that occasional x-runs do not interfere with your creative process. (For audio recording, this may not be possible, but for non-recording uses, it may be.)

Software Installation Issues

Sooperlooper: The wxwidgets use flag is required in order for the slgui component to be compiled.