2014-12-13 19:58:32 -08:00
#!/bin/bash
2014-12-14 20:27:03 -08:00
sleep 2
2014-12-13 19:58:32 -08:00
/etc/init.d/apache2 start
2014-12-14 20:27:03 -08:00
sleep 2
2014-12-13 20:18:05 -08:00
2014-12-13 19:58:32 -08:00
# Wait for mysql to come online
while [ "`ps aux | grep mysqld_safe | grep -v grep | wc -l`" -eq 0 ] ; do
sleep 1
done
# Create rivendell database if it doesn't exist
DBS = ` echo "show databases ; " | mysql -u root -proot | grep Rivendell | wc -l`
if [ $DBS -eq 0 ] ; then
# Assume this is a first run and do some other stuff
chmod 777 /var/run/rivendell/
chown -R rduser /var/snd
2014-12-13 20:18:05 -08:00
# Create default database
2014-12-13 19:58:32 -08:00
DISPLAY = :0 rdadmin --check-db --mysql-admin-user= root --mysql-admin-password= root --mysql-admin-hostname= 127.0.0.1 --mysql-admin-dbname= Rivendell
2014-12-14 19:17:49 -08:00
# Enable icecast plugin
echo "INSERT INTO NOWNEXT_PLUGINS VALUES (1,'`hostname`',0,'/usr/lib/rivendell/rlm_icecast2.rlm','/etc/rd.icecast.conf');" | mysql -u root -proot Rivendell
2014-12-14 20:27:03 -08:00
# Set the startup mode for main log / aux1 / aux2 to load the previously used log
# TODO: Check if this row exists at this time. Need to wait for rdairplay to launch?
echo "UPDATE RDAIRPLAY SET LOG0_START_MODE=1, LOG1_START_MODE=1, LOG2_START_MODE=1 WHERE STATION='`hostname`';" | mysql -u root -proot Rivendell
2014-12-13 19:58:32 -08:00
fi
2014-12-14 20:27:03 -08:00
# Update db if necessary
2014-12-13 19:58:32 -08:00
rdadmin --check-db
2014-12-13 20:58:00 -08:00
# Apache is trouble
/etc/init.d/apache2 restart
2014-12-14 20:27:03 -08:00
sleep 2
2014-12-13 20:39:36 -08:00
2014-12-13 19:58:32 -08:00
# Start gui apps
2014-12-14 20:27:03 -08:00
su -c "DISPLAY=:0 xterm -e rdairplay & " rduser
2014-12-13 19:58:32 -08:00
su -c "DISPLAY=:0 jamin &" rduser
2014-12-13 20:18:05 -08:00
sleep 10
2014-12-13 19:58:32 -08:00
# Disconnect jamin from system audio
su -c "jack_disconnect jamin:out_L system:playback_1" rduser
su -c "jack_disconnect jamin:out_R system:playback_2" rduser
# Connect rivendell to jamin
su -c "jack_connect rivendell_0:playout_0R jamin:in_R" rduser
su -c "jack_connect rivendell_0:playout_0L jamin:in_L" rduser