next up previous
Next: Installing Planet CCRMA on Up: Planet CCRMA at home Previous: Installing Planet CCRMA on

Installing Planet CCRMA on Fedora 9 or 10

The Planet CCRMA package collection for Fedora 9 or 10 (i386 or x86_64 architectures) resides in a yum repository that can be accessed through the Internet.

You will need to have a reasonably fast network connection to the world to install Planet CCRMA by connecting directly to its repository or one of its mirrors.

Installing Planet CCRMA is easy. You will be guided through the install process in the following pages.

Installing Fedora

The first step is to install Fedora 9 or 10. You can download cdrom or dvd images from the main Fedora site at RedHat or one of its mirrors. Or you can use the re-spins from the Fedora Unity project which include more up to date packages and will save you a lot of downloads later.

Your first choice is to whether install the 32 bit (i386) or 64 bit (x86_64) version of the base operating system. I would recommend 32 bits at this point, specially if you want to use experimental music environments that are still not available for 64 bit versions of linux (that includes, as of this writing, SuperCollider, Pd and ChuCK).

Regardless of which dvd or cdrom you use, make sure you upgrade to the latest security and functionality upgrades before proceeding. Run this (as root) from a terminal if you have not yet upgraded:

yum upgrade

It could take a long time to download and install all the upgrades...

Adding the Planet CCRMA repositories

You now need to add the proper urls to your Yum configuration files so that it can access the Planet CCRMA repositories.

Type this to install configuration files for Yum that will enable it to access the Planet CCRMA repositories (this works for both i386 and x86_64 architectures):

For Fedora 9:

rpm -Uvh

For Fedora 10:

rpm -Uvh

Installing applications

Now you can install the actual sound and music programs and start having fun! You can browse the list of available packages here:

Planet CCRMA also provides a meta package (an empty package that requires other packages) so that you can install all major applications in one yum incantation. If you want to do that, then type this in a terminal (as root):

yum install planetccrma-apps

Some additional shortcuts:

  • to install all SuperCollider 3 packages type:

    yum install supercollider-world

  • to install all Pd packages type:

    yum install pd-extended

Good luck in your explorations of the musical world hosted on Linux! Be patient, if you are coming from other operating systems there is a new world to learn and discover. Getting to know it is rewarding but it will take time.

Multiple sound cards

Both Fedora 9 and 10 speed up the boot process by loading device drivers for hardware in parallel. If you have more than one soundcard there is an unfortunate side effect to this feature. It is not possible to predict the load order of the soundcards (ie: sometimes one card will be the first, sometimes the other). Regretfully both Fedora 9 and 10 do no longer have a graphical utility to set the default soundcard (argh).

It is important to always have the same sound card order to be able to use hw:0 (or hw:1 or whatever) as the target device for starting Jack.

Typing this in a terminal will show you which cards you have and what is their current order:

cat /proc/asound/cards

If you see just one card you should be fine and can ignore the rest of this section.

Otherwise you will need to edit as root /etc/modprobe.conf (or create it if it does not exist) and add some magic so that the card device drivers are always loaded in the same order.

You can use the following template as a basis for what you have to add to modprobe.conf. If modprobe.conf already exists just add to this at the end:

alias snd-card-0 snd-CARD_0
options snd-card-0 index=0
options snd-CARD_0 index=0
alias snd-card-1 snd-CARD_1
options snd-card-1 index=1
options snd-CARD_1 index=1
alias snd-card-N snd-CARD_N
options snd-card-N index=N
options snd-CARD_N index=N

In this template ``...'' stands for more lines here, one for each extra card (don't copy the dots! :-) ``CARD_N'' is the name of the kernel module that corresponds to the card you want in position ``N'' (N=0 is the first card, usually the default device used by all programs).

If you don't know what kernel module your card uses just do this as root from a terminal:

/sbin/lsmod | grep ^snd

This will list all the soundcard related kernel modules. From the list and the output for ``cat /proc/asound/cards'' you should be able to figure out which is which.

Here is a filled in example that includes three cards:

alias snd-card-0 snd-ice1712
options snd-card-0 index=0
options snd-ice1712 index=0
alias snd-card-1 snd-ens1370
options snd-card-1 index=1
options snd-ens1370 index=1
alias snd-card-2 snd-usb-audio
options snd-card-2 index=2
options snd-usb-audio index=2

As there is currently no clean way to reload the whole alsa subsystem just reboot the machine. From now on the cards you have should always appear in the same order.

Installing the low latency kernel

The Planet CCRMA low latency kernels include the rt patch by Ingo Molnar and other linux kernel gurus. The patch modifies the kernel in a way that lowers its latency. This is critical for running audio programs (specially the Jack sound server) with very small buffers. Features of this set of patches have been slowly percolating to the regular mainline kernel over the years with the result that current Fedora stock kernels are not that bad. But if you plan on using Jack or other audio applications with very small buffers, say 128 or 64 frames, you will probably need to use the realtime kernel for best results. So, if you try the Fedora kernel and it is good enough for your purposes you don't really need to install the Planet CCRMA rt kernel.

Fedora, by default, only keeps the last two installed kernels. As the realtime kernels are more experimental than the stock Fedora kernels it is wiser to keep all versions until you decide it is time to erase them (after testing that a new kernel actually works).

To change this edit /etc/yum.conf and modify the installonly_limit option to read:


NOTE: we are not installing the kernels directly. There's a reason. The planetccrma-core package is empty but it requires all the actual packages needed, and with the proper versions. The core packages include the patched kernel itself, a startup script that reorders the priority of the interrupt handling to favor the sound cards and several additional components of the ALSA device driver and utilities system.

So, go ahead and install the Planet realtime kernel:

yum install planetccrma-core

If you have more than 4Gytes of RAM and you installed the 32 bit version of the operating system you can install the following kernel instead:

yum install planetccrma-core-PAE

The PAE (Physical Address Extension kernel will be able to address all your memory. Individual applications will still be limited to 4G of addressing but that is, at least in my experience, plenty for now.

Testing the new kernel

At this point you can cross your fingers and reboot the machine. At the grub prompt press any key to access the boot menu and then select the kernel you want to try (the Planet CCRMA kernel, if it was the last kernel installed, should be the default).

If at any time you want or need to change the default boot kernel you can edit the /boot/grub/grub.conf file and changing the ``default='' line to point to the kernel you want to boot by default. Kernels are zero base indexed, ``0'' being the first in the list of kernels that follows the default line. Depending on how many kernels you just installed, and which one you want to boot by default, the ``default='' line should read ``0'' or ``1''.

You are done with the hard stuff. At this point you have a machine that has a low latency kernel and it is booting happily. Just start making music!

The Planet CCRMA testing repositories

Some applications live in the Planet CCRMA testing repositories. To install their configuration files type this (all in one line):

For Fedora 9:

rpm -Uvh

For Fedora 10:

rpm -Uvh

You can browse the list of available packages here:

next up previous
Next: Installing Planet CCRMA on Up: Planet CCRMA at home Previous: Installing Planet CCRMA on

© Copyright 2001...2011 Fernando Lopez-Lezcano, CCRMA, Stanford University.
All rights reserved.