This came about thanks to Mark on the Renoise forum. Thanks for finally pointing me in the right direction for this.
http://forum.renoise.com/index.php?/topic/38738-renoise-linux-and-pulseaudio/
Linux audio is a pain in the arse at the best of times.
ALSA is a mess. Pulseaudio is good now, but doesn't cater to "Pro Audio" needs. JACK is great if you don't care about any other desktop audio needs or simplicity. Renoise wants JACK or ALSA, nothing else.
Nobody seems to want to help anybody else out. Anyway...
So, in order to run something like Renoise under gnome-shell, without it being a c*nt, what should you do?
NB: The following is for Arch Linux with an unmodified gnome-shell / Pulseaudio with the pulseaudio-alsa package setup. Change file locations as your distro / kernel expects.
pacman -S pulseaudio-alsa
% cat /etc/modules-load.d/stuff.conf
acpi-cpufreq
fuse
iwl3945
libphy
snd-hda-codec
snd-aloop
tg3
Example given is a crappy hda-intel, like my laptop.
% cat /etc/modprobe.d/stuff.conf
alias snd-card-0 snd-hda-intel
alias snd-card-1 snd-aloop
options snd-hda-intel index=0
options snd-aloop index=1 pcm_substreams=2
Make sure after the reboot:
% cat /proc/asound/cards
0 [Intel ]: HDA-Intel - HDA Intel
HDA Intel at 0xfebfc000 irq 47
1 [Loopback ]: Loopback - Loopback
Loopback 1
Create a script like ~/.gnome-startup with the following:
alsaloop -c 2 -C hw:Loopback,1,0 -P default &
Make sure it's executable and all that shit.
Run:
gnome-session-properties
I call my entry "00 GNOME Startup" so it runs first (pretty sure that's how it works).
Add the ~/.gnome-startup script.
Then, make sure alsaloop is running:
% ps -ef | grep alsaloop
pezz 907 1 0 19:30 ? 00:00:12 alsaloop -c 2 -C hw:Loopback,1,0 -P default
Make sure Renoise uses the Loopback device instead of fucking your main ALSA device over to the exclusion of all else
See: http://i.imgur.com/RB01zH4.png
- Your desktop shit works as per normal, because Pulseaudio hasn't been dicked with (mic for Skype etc, everything works)
- Renoise can own the fuck out of the Loopback all it wants
Be happy with Renoise on a non-DAW, for once.