[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[RDD] Rivendell on Red Hat 9
This is the abridged version of how I got Rivendell running on Red Hat
9. Much back-tracking deleted.
Biggest hurdle is getting Qt3 built from source, because I couldn't find
an rpm.
JACK is already installed because I also use Nando's 'apt' for package
install (planet-ccrma) so my box is basicallly a RH9 that has been
JACK-ified with 'apt-get install planetccrma-audioapps'.
see http://ccrma.stanford.edu/planetccrma/software/
CAVEAT: Qt's 'make install' still didn't drop the binaries into RH's
favoured /usr/bin. I have added $QTDIR et al to ~/.bash_profile as per
the Qt INTALL doco as a workaround,viz:
--snip--
QTDIR=/usr/local/qt
PATH=$QTDIR/bin:$PATH:$HOME/bin
MANPATH=$QTDIR/doc/man:$MANPATH
LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export USERNAME BASH_ENV PATH QTDIR PATH MANPATH LD_LIBRARY_PATH
--snip--
...someone may pick up what I missed...
GPC.
PS this is not a HOWTO... feel free to shoot holes...
--snip--
cd
wget
http://public.ftp.planetmirror.com.au/pub/trolltech/qt/source/qt-x11-free-3.3.2.tar.bz2
apt-get install mysql-devel (...or rpm -Uvh
path/to/mysql-devel-x.x.x-x.rpm...)
cd /usr/local
tar jxvf ~/qt-x11-free-3.3.2.tar.bz2
# essential Qt make stuff
./configure -prefix /usr -qt-sql-mysql -I/usr/include/mysql -L/usr/lib/mysql
make
make install
mkdir -p ~/src/salem
cd ~/src/salem
cvs -d:pserver:anonymous@xxxxxxxxxxxxxxxxxxxxxx:/home/cvs/srl login
# when asked for password just press the enter key.
cvs -z3 -d:pserver:anonymous@xxxxxxxxxxxxxxxxxxxxxx:/home/cvs/srl co
libradio rivendell
cd libradio
./autogen ; configure --prefix=/usr ; make
su -c 'make install'
cd ../rivendell
./autogen.sh ; ./configure --prefix=/usr ; make
su -c 'make install'
... mysql may well work out of the box with no root password, but my
philisophical inclination wouldn't let me use it..
mysql -u root
mysql> SET PASSWORD FOR root@localhost=PASSWORD('new_password');
mysql> GRANT ALL PRIVILEGES ON *.* TO me@localhost
-> IDENTIFIED BY 'my_pass' WITH GRANT OPTION;
mysql> \q
<do all the /var/snd & /etc/rd.conf stuff here a-la Rivendell INSTALL doco>
rdadmin
I can now access 'mysql -u <me> -p Rivendell'
SHOW TABLES;
\q
<enter-my_pass-when-prompted>
telinit 4 & away we go!
PS <off-topic>I have tried getting JACK to start a generic iniscript but
cannot get it to detach. Jack starts but the init script hangs. Any
Ideas? </off-topic>
Also, attached is the rivendell daemon script hacked for Red Hat
move to /etc/rc.d/init.d
install the SYSV symlinks with the command (as root):
# chkconfig --add rivendell
by default it only runs in runlevel 4 (my choice). Change that with:
# chkconfig --level 345 rivendell on (...or whatever runlevels you want)
PS thanks for the JACK fix Fred. Got this far over the weekend &
thought I was going spare with caed! :)
#! /bin/sh
#
# Startup script for the Rivendell daemons
# (C) Copyright 2003-2004 Fred Gleason <fredg@xxxxxxxxxxxxxxxxxx>
#
# chkconfig: 4 92 8
# description: Rivendell is a radio broadcast automation system
#. /lib/lsb/init-functions
. /etc/rc.d/init.d/functions
INSTALLDIR="/usr"
# Check for missing binaries
if [ ! -x $INSTALLDIR/bin/caed ] ; then
echo "caed not installed"
exit 5
fi
if [ ! -x $INSTALLDIR/bin/ripcd ] ; then
echo "ripcd not installed"
exit 5
fi
if [ ! -x $INSTALLDIR/bin/rdcatchd ] ; then
echo "rdcatchd not installed"
exit 5
fi
# Check for existence of needed config file and read it
if [ ! -r /etc/rd.conf ] ; then
echo "Missing /etc/rd.conf"
exit 6}
fi
case "$1" in
start)
$INSTALLDIR/bin/caed 2> /dev/null
$INSTALLDIR/bin/ripcd 2> /dev/null
sleep 1
$INSTALLDIR/bin/rdcatchd 2> /dev/null
$0 silent-status
if test $? -eq 0 ; then
echo "Starting Rivendell system daemons"
echo_success
exit 0
else
echo "Starting Rivendell system daemons"
echo_failure
exit 1
fi
;;
stop)
kill `cat /var/run/rivendell/rdcatchd.pid` 2> /dev/null
kill `cat /var/run/rivendell/ripcd.pid` 2> /dev/null
kill `cat /var/run/rivendell/caed.pid` 2> /dev/null
$0 silent-status
if test $? -eq 0 ; then
echo "Stopping Rivendell system daemons"
echo_success
exit 1
else
echo "Stopping Rivendell system daemons"
echo_success
exit 0
fi
;;
restart)
$0 silent-status
if test $? -eq 0 ; then
$0 stop
fi
$0 silent-status
if test $? -eq 0 ; then
exit 1
fi
$0 start
$0 silent-status
if test $? -eq 0 ; then
exit 0
fi
exit 1
;;
force-reload)
$0 restart
;;
status)
$0 silent-status
EXIT_CODE=$?
if test $EXIT_CODE -eq 0 ; then
echo "Rivendell system daemons running."
else
echo "Rivendell system daemons stopped."
fi
exit $EXIT_CODE
;;
silent-status)
if test -f /var/run/rivendell/caed.pid ; then
if test -d /proc/`cat /var/run/rivendell/caed.pid` ; then
if test -f /var/run/rivendell/ripcd.pid ; then
if test -d /proc/`cat /var/run/rivendell/ripcd.pid` ; then
if test -f /var/run/rivendell/rdcatchd.pid ; then
if test -d /proc/`cat /var/run/rivendell/rdcatchd.pid` ; then
exit 0
fi
fi
fi
fi
fi
fi
exit 3
;;
*)
echo "Usage: $0 {start|stop|restart|force-reload|status}"
exit 1
;;
esac