Install Rivendell Radio Automation: Part 2 – Server Installation

Install Rivendell Radio Automation: Part 2 – Server Installation

This is where things start to get fun, because, by the end of PART TWO, you will have a fully functioning Rivendell Server – which works stand-alone. You won’t be able to do much with it though, until you import some audio, create groups (categories) build clocks, assign clocks to the grid, and schedule music. However, this tutorial won’t cover all of that, although, maybe in a future post. The BrettBlog covers those concepts in greater detail than anything else I’ve seen.

1: You’re, literally, moments away from a fully functioning Rivendell box… Let’s install the latest MySQL-Server and JACK packages:

When it asks if you want jackd to run with realtime priorities. Say YES!

2: Next, you’ll be prompted for a MySQL root password — make it secure AND WRITE IT DOWN. You’ll need it soon. Install the Rivendell core in 3…2…1!

When it asks if you want debconf to manage the configuration for you. Say NO! We’ll do this manually for extra flexibility. Don’t worry, it’s easy.

Admittedly, I still haven’t fully wrapped my head around JACK… But, James Harrison’s rd.conf file works perfectly for my needs. I’d love to speak with anyone (James??) who can help me route the output of Rivendell through JACK to Liquidsoap and generate a streaming source with AGC/Compression/Limiting/Stereo Expansion to serve an icecast stream.

3: Next, let’s edit rd.conf.

Copy the text below to your clipboard. Then, head back over to the terminal and use your arrow keys to move your cursor to the line with the default [mySQL] entry and hit CTRL+K to delete each line below it until the [Identity] section is all that remains. Now, paste the text below, after the [Identity] section in rd.conf — replacing everything from the default [mySQL] section to the end of the file — with the following:

CTRL+O to write changes to rd.conf. ENTER to confirm. Then, CTRL+X to exit nano.

If this is a stand-alone Rivendell workstation, congratulations, YOU’RE FINISHED with installation!! Jump to:

If this is a Server/Client configuration, please continue…

4: For your clients to be able to read and write to your database, you need to give clients remote access to MySQL.

Change the value of “bind-address” from to so it binds to external IPs as well as localhost. CTRL+O, ENTER, CTRL+X, then restart MySQL:

5: Now, create a remote MySQL account that Rivendell clients can use. Open up a MySQL console with:

Enter your root MySQL password you created while installing MySQL-server. (NOTE: this is different from the Rivendell Admin password — you’ll see what I’m talking about in PART FOUR)

Type: quit or q to quit the MySQL console.

6: We have a fancy trick up our sleeve for sharing audio across our Rivendell network with NFS and Jeroen Hoek’s clever autonfs script to handle mounting the shares on the clietns without fussing with fstab and dragging down client boot times. Begin by installing the NFS server:

7: Edit exports:

8: Add the following to the bottom of the exports file (replace with your local subnet/mask):

9: Edit hosts.deny:

10: Add the following to the bottom of hosts.deny:

11: Edit hosts.allow:

This will share the audio store: /var/snd to 5 Rivendell clients plus the localhost (if it looks like 6 clients, that’s because .90 is my server — don’t forget to include the server IP in your config). For all of this magic to happen, you’ll need to give all of your Rivendell machines static IPs. And if your router is in the same subnet as mine, you can keep these values without altering anything but the static IPs of your machines. If not, simply edit the IP addresses below, to match your own network. Add the following to the bottom of the file:

12: Then, restart NFS:

Your Rivendell server is COMPLETE and configured to share audio and MySQL data with your Rivendell clients. To install Rivendell clients, click the PART ONE button below to repeat the steps on each client BEFORE proceeding to PART THREE.