Install Rivendell Automation: Part 1 – System Preparation

Install Rivendell Automation: Part 1 – System Preparation

Install Rivendell Automation: Part 1 – System Preparation

Too often, Linux tutorials omit details, because they assume you know more about the subject, than you actually do. Or, they just become obsolete as the technology evolves. So it’s easy to get frustrated and ultimately discouraged when you’re learning to navigate Linux, and more specifically, Rivendell. Once in a while though, you come across an EXCELLENT resource that carefully spells out each step. Thank you, James Harrison at Talk Unafraid! Following his tutorials, taught me how to compile Rivendell from source several years ago, and install a complete system from scratch. If you’ve been struggling with Rivendell, by the time you finish reading the first 2 parts of this article, you will master the basics of how to install Rivendell Automation. Part 3 and 4 are more advanced and will guide you through configuring a Rivendell network and server/client hosts.

Things have gotten even easier since discovering Alban Peignier’s Debian/Ubuntu packages. No more downloading dependencies and compiling code… And you can install it on virtually any Debian/Ubuntu derivative. Sing Hallelujah! Sorry Alban… I had to!

I’ve been meaning to write this tutorial for a long time — as a follow-up to the things I’ve learned —  and to give back to the community for the excellent direction I’ve received. I’d like to include some little known tips, tricks, and work-arounds — so maybe this tutorial will end up — dare I say? — the definitive Rivendell for dummies guide. This tutorial will plagiarize borrow heavily from several sources while updating and streamlining the whole process. I’ll try to give credit, where credit is due, and encourage the community to correct any mistakes and submit improvements, shortcuts and tweaks in the comments. None of this would be possible without Fred Gleason (the mastermind behind Rivendell) and the entire Rivendell dev mailing list – which you can subscribe to – for friendly, helpful community support!

Maybe you’re the CE or IT director of a group of stations tasked with finding a new automation solution to replace an aging Windows XP based platform that is about to get infected by the interwebs, now that support for XP has officially ended. Or maybe you’re planning a new facility and it’s just time for something “better.” Maybe you’re a college radio station with ZERO budget trying to find a replacement for iTunes (I’m not kidding)… And maybe the whole idea of learning Linux is intimidating, or you just don’t have time to learn something new… What do these scenarios all have in common? Rivendell is capable, professional broadcast automation for radio, AND it’s in your budget… If you can afford free. Imagine walking into your CFOs office and telling her that you just found the perfect solution for your group of stations and it’s going to save the company about 3 million dollars in licensing and proprietary hardware costs. Linux is starting to sound better, eh? Did you just hit your bonus? Cha-CHING!

If you want to get familiar with Rivendell before putting it into production, you can easily install a Linux guest on VirtualBox, and follow along. This is an ideal way to experiment with different configurations – and easily roll back changes (by utilizing snapshots) – without borking your entire system. I can verify that this whole setup will build a fully functioning Rivendell network in a virtual environment – although definitely not recommended for a mission critical system. Once you’re ready to go “live,” you can replicate the steps on dedicated hardware.

By no means, is this tutorial completely exhaustive, but it will be filled with plenty of musical references, and by the time you finish it, you’ll have fully functioning broadcast automation with all the features of expensive, proprietary automation. For FREE!!! After installing updates, Rivendell will be up and running within 20 minutes… For reference: This tutorial is based on Linux Mint 17.1 x64 Cinnamom, with Rivendell 2.10.2-2. Obviously, I make no warranties, implied or otherwise, and you are following this tutorial at your own risk. If you install Linux on anything other than a bare drive, one without any data you care about, or a VirtualBox host, then BACK THAT [DATA] UP!  -Juvenile

Paravel Systems (the creator of Rivendell) has developed a turnkey Rivendell broadcast “appliance” DVD which installs a pre-configured Rivendell system on your hardware. It’s built on top of CentOS Linux so it’s pretty much bullet-proof. For those who prefer a turnkey system with 24 hour tech support, Paravel offers paid support options as well. But, if you want an OS with a little polish and a more familiar interface, you might be more comfortable with something like Debian or Ubuntu. There are many options here. However, my personal preference is Linux Mint for it’s agility on older hardware and clean, sexier interface. I’ve literally installed Mint on hardware that Ubuntu couldn’t even detect, let alone perform well on.

This tutorial is broken into four parts. Part ONE is the base for your Rivendell installation and applies to both server and client and you will perform these steps on each. After finishing the steps in this section, proceed to PART TWO to complete the server installation, or jump to PART THREE for the client installation. Part FOUR will deal with configuring the hosts (more on that later).

1: Let’s get started by bringing your system current with the latest updates. Installing updates takes the longest… So be patient.

2: Edit the following file in nano:

3: Find the line that says “autospawn=yes” and uncomment it, by removing the leading ; and changing the “=yes” value to no. Then, CTRL+O to write the changes. ENTER to confirm, CTRL+X to exit nano (NOTE: you’ll repeat these 3 steps every time you edit a config file with nano).

4: Then, run the following command:

5: Next, edit limits.conf in nano:

6: copy and paste the following near the end of the file to give the system realtime permissions.

Now, we’re ready to add the Tryphon repository to your sources list. Note: you’ll want to change to the appropriate repository for your Linux distribution.

7: Edit sources.list in nano:

For example: if you’re running Mint 17 based on Ubuntu 14.04 LTS (Trusty Tahr), you would copy and paste the following at the bottom of the list:

Again, CTRL+O to write the changes. ENTER to confirm. CTRL+X to exit nano.

8: Then add the Tryphon repository key, by running:

Once we have the next task out of the way, things are going to begin picking up momentum rapidly.

9: Create a folder called ‘rdscripts’ (without the quotes) in your home folder.*

*Alternatively, you can download the following file in your home directory and decompress it. It contains the scripts below and some examples for configuring Rivendell dropboxes and RDImport commands.

Or, to continue manually creating the files: copy and paste the code below, into an empty text file and save it as: on_startup.sh

10: Paste the text below into another empty text file and save it as: on_shutdown.sh

11: Paste the text below into another empty text file and save it as: after_startup.sh

12: Paste the text below into another empty text file and save it as: after_shutdown.sh

13: While we’re at it, this XML file will create the necessary patches to keep your Rivendell/Jack/Soundcard connections persistent between reboots (depending on your hardware configuration, you may need to edit this inside QjackCtl later, but this should be a good default). Click inside the box, then CTRL+A to select all, CTRL+C to copy, and CTRL-V to paste the following code in another empty text file and save it as: rd_jack_patch.xml

 

14: Lets make ’em executable.

If you’re using on-board sound, you can skip this step. Otherwise, if you’re using a professional soundcard, now would be an excellent time to compile the driver to support your card. In this case, we’re using a Digigram VX222HR (2 channles of balanced i/o — analog XLR and digital AES/EBU breakout cables included). It’s one of the least expensive basic professional soundcards you can pick up for under $600 USD.

15: Download the tools to compile the driver:

16: Now, create a directory to download your alsa source:

17: Download alsa source files (NOTE: only the alsa-lib and alsa-firmware packages are required to get this card working, so we’re skipping alsa-uitls and keeping the stock Linux kernel):

18: Unzip and install the alsa-lib package:

19: Now, unzip and install the alsa-firmware package:

20: Confirm that your soundcard is detected by invoking alsamixer in the temrinal:

Your card should be listed at the top of alsamixer, or available in the list of cards by pressing F6. Press ESC to exit alsamixer. 

Now that you’ve completed PART ONE, you’re ready to move on to PART TWO: Installing your Rivendell server. When you finish with the server, repeat the steps in PART ONE on each client BEFORE proceeding to PART THREE: Installing your Rivendell client.