Install under Debian (debrfa)

From Rivendell Wiki

Jump to: navigation, search

description: steps to setup a rivendell workstation under debian stable using RFA packages

created: 2006-02-01 grauf@rfa.org
updated: 2007-06-22 grauf@rfa.org for Etch (v4.0) version of debian


Contents

Summary:

These are directions to install a Rivendell broadcast automation system on to a current Debian Stable (4.0, Etch) system. The packages are hosted on techweb.rfa.org in the "debrfa" repository ( http://techweb.rfa.org/debrfa/ ). For more documentation, check with the official Debian installation guide .

These directions have been successfully tested with: debian stable / etch / 4.0; installer 20070308; Rivendell 0.9.80.20070619-2

OS installation:

The first step is to install a basic OS onto the workstation. These directions describe the steps to install a minimal workstation.

NOTE - NOT EVERY INSTALLATION WILL BE IDENTICAL. Some of these options may or may not appear appear in the same fashion.

- boot the PC with the Debian installer, some options include:
   PXE network boot
   USB stick with installer
   floppy disk set (may require network-drivers floppy)
   bootable cdrom
- proceed through the installer:
   Choose language
       -> (your language of choice, such as English)
   Choose country or region
       -> (your country of choice, such as United States)
   (if floppy was used to boot) Load drivers from a floppy
       -> Yes
   Select a keyboard layout
       -> (your layout of choice, such as American English)
   hostname
       -> (check with policy, our environment required a fully qualified hostname)
   domain name
       -> (check with policy, skipped if fully qualified hostname entered above)
   Choose a mirror of the Debian archive
       -> United States
           -> (a local mirror, such as techweb.rfa.org)
   Proxy server
       -> (leave blank)
   Partition disks
       -> Guided - use entire disk
   Select Hard Disk 
       -> (Choose the disk to install Debian on)
   Partition disks
       -> All files in one partition
   Partition disks
       -> Finish partitioning and write changes to disk
   Partition disks
       Write changes to disk
           -> Yes
   Time zone configuration
       Select your time zone
           -> (local timezone, such as Eastern)
   Configuring password
       Root password
           -> (check policy for selected password)
       Re-enter root password
           -> (re-enter)
       Enter a full name for the new user
           -> rduser (NOTE: RFA techs do NOT use rduser, it will cause conflicts with authentication package to be installed later)
       Enter the username
           -> rduser
       Enter the password
           -> (check policy for selected password)
       Re-enter the password
           -> (re-enter)
   Configuring popularity-contest
       -> (check with policy)
   Choose software to install
       -> uncheck all (spacebar selects/deselects)
       -> continue
   Install the GRUB boot loader on  hard disk
       -> Yes
   Finish the install
       -> Continue

Rivendell prep and optional utilities installation:

The next step is to log in with an administrative account (ex: the root user), and prepare for the install of Rivendell and any optional administrative utilities.

- login prompt
   root / (policy password)
- Temporarily disable security updates (to speed up install)
   # edit /etc/apt/sources.list
   # comment out the following line
       deb http://security.debian.org/ etch/updates main
   # add debrfa entry
       deb http://techweb.rfa.org/debrfa etch main
- update and upgrade
   aptitude update
   aptitude upgrade

Enable realtime support in the OS via PAM (especially useful if using ALSA or JACK).

   - edit /etc/security/limits.conf
     add a section like the following to give users in the audio group 
     the ability to run programs at a higher priority:
   # limit realtime and memory locking access to users in the group audio
   # there is no way to say "allow locking all memory", 4G should be enough
   *       -   rtprio      0
   *       -   nice        0
   @audio      -   rtprio      100
   @audio      -   nice        -10
   @audio      -   memlock     4000000

(DECISION POINT) One must decide if Rivendell will be installed as a stand-alone system on the local machine, or if it will be installed as a client connecting to a central Rivendell database and audio store. If Rivendell will be installed stand-alone, then the MySQL database software needs to be installed. Alternatively, if Rivendell will be installed as a client connecting to a central server then an NFS mount pointing to the central server audio store should be defined in /etc/fstab .

   # If doing a stand-alone install
   aptitude install mysql-server
   
   # If doing a client install with central database and/or audio store
   # edit /etc/fstab
   # add an entry like the one below to mount the NFS share of the central server audio store
   # (make sure to replace the server name and server shared directory)
   mordor.foo.org:/var/storage/snd /var/snd    nfs soft,intr       0       0
   #########################################################################################################################
   ####
   #### for me,  (sam) rdairplay whants to run from root. If no, there is an error and the meters in rdairplay don't work
   #### to correct this, I've updated the /etc/fstab like this :
   shmfs /dev/shm  tmpfs  defaults  0 0
   ####
   #### someone can validate this solution ?
   #########################################################################################################################


(OPTIONAL) If a local policy package has been created which automatically installs administrative utilities, install that package. Ex:

   aptitude install <ORGANIZATION>base

(OPTIONAL) Alternatively, one could install desired administrative utilities by hand. Ex:

   aptitude install ssh # useful for completing the remainder of the install via remote 
                          login shell
   aptitude install ntp # an essential tool to sync the PC clock to the atomic clock
   aptitude install vim # a popular console text editor
   aptitude install less # helpful for scrolling forward AND backward (unlike "more")  
                           through multipage text documents from the console

Rivendell desktop installation:

The "rivendell-desktop" is a package that will install a user friendly desktop environment as well as some common utilities that will make a Rivendell workstation useful. Alternatively, one could skip this step and prepare their own preferred desktop environment.


   aptitude install rivendell-desktop
       Samba Server
           Workgroup / domain name
               -> (check with policy)
           Modify smb.conf to use WINS settings from DHCP?
               -> no
       Configuring xserver-xorg (this section may not show up depending on the system)
           Select video mode
               -> (arrow down)
               -> (space bar to enable 1024x768 NOTE: for some modern widescreen LCDs, use 1440x900 or 1280x800. 
                   Check your monitor for optimal resolution) 
               -> (space bar to disable 800x600, 640x480)
               -> (enter) to proceed
               -> Ok

Install Rivendell:

The next step is to install the Rivendell package itself.

  • NOTE to RFA techs: it's recommended to install RFA's authentication package before installing Rivendell
- install rivendell itself
   aptitude install rivendell
       Configure Rivendell and rd.conf through debconf?
           -> yes
       Remove Rivendell audio store and database if purging Rivendell?
           -> no
       How daemons are started
           -> pam_rd (or use local policy)    
       Password for Rivendell:
           -> (check with policy)
       UNIX user account for Rivendell:
           -> (check with policy)
       UNIX group account for Rivendell:
           -> rivendell
       Select the samplerate to use for Rivendell:
           -> 44100 (or use local policy)
       Select number of channels
           -> ( 1 or 2 )
       Enter the hostname of the Rivendell MySQL server:
           -> (check with policy)
       Enter the MySQL account with which to connect to the MySQL server:
           -> (check with policy)
       Enter the MySQL account password to use when connecting to the MySQL server:
           -> (check with policy)
       Rivendell introduction.
           -> Ok

Admin cleanup:

Bring back security updates (previously removed to speed up install).

   # edit /etc/apt/sources.list
   # un-comment the following line
       deb http://security.debian.org/ stable/updates main
   aptitude update
   aptitude upgrade

Install a kernel if additional driver support is needed. If using ALSA (or JACK which works on top of ALSA) the kernel must have ALSA support. The default kernel in Debian Etch is a 2.6 series kernel that should already have ALSA support. If using an ASI audioscience sound card, then a kernel with the asihpi / hpklinux driver must be installed.

  1. install a 2.6 kernel that supports your hardware
   aptitude # to start the console GUI 
       / kernel-image-2.6 # to search for 2.6 kernels
       (arrows to navigate)
         # to select the kernel package for installation
       g # to download
       g # to install
       q # to exit
   reboot # to boot into new kernel
   ---OR---
   # install a 2.6 kernel from RFA
   aptitude install linux-image-2.6.21.1-rivendell-2
   reboot # to boot into new kernel

Various tweaks should be done after software installation.

   login to KDE
   turn off startup tips (unless you like them)
   first time KDE wizard (or K / Settings / Desktop Settings Wizard)
       "Country and Language" (ie USA and American English) 
       "system behavior"
           -> MS Windows
       "eye candy o meter"
           -> 1 (first bar from left, few effects)
       "Themes"
           -> Redmond 

KDE sound system (off or talk to jack)

       K "start" -> Control Center -> Sound & Multimedia
           -> uncheck enable sound system
   

Auto hide bottom bar to uncover all rivendell screens and buttons

       move cursor to bottom of display 
       right click on blank area of bottom bar (aka taskbar)
       select configure panel
       select hiding
           check hide automatically, user preference on the time setting (suggest immediately or 1 sec.) 

Check display resolution

       right click on blank section of desktop
       select Configure Desktop
       select Display
       Screen Size 1024x768 (for modern widescreen LCDs use 1440x900 or 1280x800)
       OK

Disable Display Power Management Signaling screen blanking for on air systems

       edit /etc/X11/xorg.conf
       scroll down to 
          Section "Monitor"
       remove or comment out with a # 
          Options "DPMS"    

RDAdmin

       enter mysql root user id and password first time
         root / <blank password by default>
       enter rivendell admin user id and password
         admin / <blank password by default>
       click Manage Hosts
         select host and click Edit
           in rdlibrary, rdcatch, rdairplay, rdlogedit
             set INPUTs/OUTPUT to Card 0 / Port 0
           in backups
             set backups to 7
             set path to wherever the backups are to be located
       Check /etc/hostname - you may need to have a fully qualified hostname (if you see grayed out buttons in RDAirplay for example)
       In RDAdmin > Manage Hosts > 'SelectYourHost' > Edit > RDAirplay ...

Top right hand side of page under 'Log Settings' 'Manual Segue' this has no default value after a fresh install make it 100msecs or so, Do the same for 'Forced Segue' (If no default values are in here RDAirplay makes a loud crack and the meters stop working if when playing a cart someone presses another start button while a previous one is playing and the Operating Mode is Automatic, RDAirplay can even stop working altogether. I ran a live radio show for 2 weeks before i discovered how to fix this... answer was in the Rivendell-prog list archives in Oct 2007 entitled "Pop" on next song in rdairplay!)

Sound Settings

If using an RME Digi96/8 sound card, several configurations should be checked.

   # start the alsamixer utility from the command prompt
   alsamixer
       # use the arrow keys to select the various settings
       Attenuate - 0dB
       DAC (volume levels) - 80
       Input - XLR if connected to a digital audio input
               Analog if not connected to a digital audio input
       <ESC> # to exit the alsamixer application

If there are multiple sound cards in the machine, the order the modules get loaded can be random. The order can be forced by adding the following configurations (this example has the desired RME card [snd_rme96] in card position 0 and an un-used on board audio [snd_via82xx] in position 1) .

       # edit /etc/modprobe.d/alsa-base , add at the bottom
       options snd_rme96 index=0
       options snd_via82xx index=1
       # edit /etc/modutils/alsa-base , add at the bottom
       options snd_rme96 index=0
       options snd_via82xx index=1

More info can be found here and here .

Testing:

Testing should be performed in "layers", starting with kernel support for audio, then basic command line utility to work with audio, and finally from within the Rivendell system.

Testing an Audioscience adapter

       - asihpitest
       - asihpiplay /usr/share/sounds/alsa/FrontCenter.wav
       - asihpirec /tmp/testfile.wav

Testing ALSA and JACK

   (ALSA subsystem)
       - alsamixer # to check if Master and PCM channels are turned up and unmuted
       - lspci | grep "audio controller" # to see the sound card detected
       - lsmod | grep snd # to confirm the alsa sound card module is loaded
       - aplay -l # to confirm that alsa sees the sound card
       - aplay /usr/share/sounds/alsa/Front_Center.wav # to confirm audio playback
       - to loop the playback test:
           while [ 1 ] ; do aplay /usr/share/sounds/alsa/Front_Center.wav ; done
           #when done testing type "Ctrl Z" and then "kill %1"
   (JACK)
       - jack_metro -b 90
Personal tools