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

Installing Planet CCRMA on Fedora 8

The Planet CCRMA package collection for Fedora 8 (i386 or x86_64 architectures) resides in a Yum (Yellowdog Updater Modified) 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 8 itself. 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.

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):

rpm -Uvh

Installing the low latency kernel

Planet CCRMA provides a version of the Linux kernel that includes the realtime preemption patches by Ingo Molnar. While the stock Fedora kernels will also work for non-critical audio work the realtime preemption patches are pretty much a requirement for reliable behavior at low latencies.

Fedora, by default, only keeps the last two installed kernels. As the realtime kernels are more experimental than the stock Fedora kernel 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 system.

So, go ahead and install the Planet realtime kernel:

yum install planetccrma-core

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 it 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''.

Installing applications

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.

Now you have to install the actual applications and start having fun!

One way to do this is to just go ahead and browse through the web pages of the Planet CCRMA repoview for i386 (or here for the Planet CCRMA Core components). Or the Planet CCRMA repoview for x86_64 (or here for the Planet CCRMA Core components)

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

yum install planetccrma-apps

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.

Release Notes

Packages or subsystems that are different from the stock Fedora ones:

  1. Kernel the Planet CCRMA realtime kernel (kernel-rt) is patched with Ingo Molnar's realtime preemption patch, configured with its most aggressive option (CONFIG_PREEMPT_RT). This ensures that Jack will be able to use very low latencies with a low risk of dropouts and glitches. But this kernel is less stable than the stock kernel and may not even boot with certain hardware configurations. Please let Ingo know if you are hitting problems.

    Another important difference with the stock Fedora kernel is that the Planet CCRMA kernel uses the old firewire driver stack, the newer ``juju'' stack in the Fedora kernel has problems with firewire soundcards. This requires a newer version of libraw1394 without the ``juju'' patches as well.

  2. libraw1394 the libraw1394 library provides direct access to the IEEE-1394 bus and is needed by the Jack freebob driver. the Planet CCRMA version does not include the ``juju'' stack patches and is only compatible with the Planet CCRMA realtime kernels.

  3. Jack Audio Connection Kit Planet CCRMA includes a newer version of the Jackd sound server. It includes:

    • runtime optimization for using vector instructions in CPUs that support them
    • resets /etc/security/limits.conf so that all users have access to realtime scheduling and memory locking
    • enables access to the raw1394 devices so that freebob devices work out of the box
    • runs the jackd realtime threads at the proper priority that matches the realtime kernel and rtirq tuned priorities (higher than the default used in Fedora's version of Jack).

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

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