You could always keep your rpm installed version and install from the
svn code to another location and run that instead.
This script will download and install the 7.2.1 svn code to
/usr/share/squeezecenter_trunk. You can edit the script to install to
another location.
The script creates a 'squeezecenter_trunk' service that you can run
instead of the already installed 'squeezecenter' service.
If you do plan to change the install location, edit the script
carefully so you fix up all the relevant paths.
svnfirst.sh:
Code:
--------------------
#!/bin/sh
#svnfirst.sh
function pause(){
read -p "$*"
}
if [ -e '/usr/share/squeezecenter_trunk/server' ]
then
echo 'squeezecenter_trunk already installed!'
echo 'Updating trunk code'
if [ ! -e '/var/log/squeezecenter_trunk' ]
then
mkdir /var/log/squeezecenter_trunk
fi
svn up /usr/share/squeezecenter_trunk >>/var/log/squeezecenter_trunk/svn.log
exit 1
fi
echo 'This script installs the SqueezeCenter trunk svn code as a service.'
pause 'Press Enter to continue, or Ctrl-c to abort..'
if [ ! -e '/usr/share/squeezecenter' ]
then
echo 'Error: squeezecenter V7 must be installed via yum or rpm first!'
pause 'Press Enter to exit.'
exit 1
fi
szSCStatus=`/sbin/service squeezecenter status`
if (( $(echo $szSCStatus | egrep -c "running...") >= 1 ))
then
/sbin/service squeezecenter stop
fi
echo 'Creating directory for SqueezeCenter_trunk..'
mkdir /usr/share/squeezecenter_trunk
echo 'Preparing the log dir..'
mkdir /var/log/squeezecenter_trunk
echo 'Downloading SqueezeCenter trunk svn code...this may take awhile..'
/bin/date >/var/log/squeezecenter_trunk/svn.log
svn co http://svn.slimdevices.com/repos/slim/7.2/trunk/
/usr/share/squeezecenter_trunk >>/var/log/squeezecenter_trunk/svn.log
echo 'Preparing /etc/sysconfig/squeezecenter_trunk..'
echo '# Edit this to suit your setup
SQUEEZECENTER_USER="squeezecenter"
SQUEEZECENTER_HOME="/usr/share/squeezecenter_trunk/server"
SQUEEZECENTER_CFG_DIR="/var/lib/squeezecenter_trunk/prefs"
SQUEEZECENTER_LOG_DIR="/var/log/squeezecenter_trunk"
SQUEEZECENTER_CACHE_DIR="/var/lib/squeezecenter_trunk/cache"
SQUEEZECENTER_CHARSET="utf8"
SQUEEZECENTER_ARGS="--daemon --prefsdir=$SQUEEZECENTER_CFG_DIR
--logdir=$SQUEEZECENTER_LOG_DIR --cachedir=$SQUEEZECENTER_CACHE_DIR
--charset=$SQUEEZECENTER_CHARSET"' >/etc/sysconfig/squeezecenter_trunk
echo 'Preparing new squeezecenter_trunk service..'
cp -f /etc/rc.d/init.d/squeezecenter /etc/rc.d/init.d/squeezecenter_trunk
sed -i -e 's/# squeezecenter\s*Startup script for the SqueezeCenter Music
Server$/# squeezecenter_trunk\t\tStartup script for the SqueezeCenter Music
Server/' /etc/rc.d/init.d/squeezecenter_trunk
sed -i -e 's/SqueezeCenter powers the Squeezebox/SqueezeCenter_trunk powers
the Squeezebox/' /etc/rc.d/init.d/squeezecenter_trunk
sed -i -e 's/# processname:\s*squeezecenter$/#
processname:\t\tsqueezecenter_trunk/' /etc/rc.d/init.d/squeezecenter_trunk
sed -i -e 's/# config:\s*\/etc\/squeezecenter\/squeezecenter.conf$/#
config:\t\t\/etc\/squeezecenter_trunk\/squeezecenter.conf/'
/etc/rc.d/init.d/squeezecenter_trunk
sed -i -e 's/# config:\s*\/etc\/sysconfig\/squeezecenter$/#
config:\t\t\/etc\/sysconfig\/squeezecenter_trunk/'
/etc/rc.d/init.d/squeezecenter_trunk
sed -i -e 's/# Provides:\s*squeezecenter$/#
Provides:\t\tsqueezecenter_trunk/' /etc/rc.d/init.d/squeezecenter_trunk
sed -i -e 's/# Short-Description:\s*Startup script for the SqueezeCenter
Music Server$/# Short-Description:\tStartup script for the SqueezeCenter_trunk
Music Server/' /etc/rc.d/init.d/squeezecenter_trunk
sed -i -e
's/\s*SQUEEZECENTER_CONFIG=\/etc\/sysconfig\/squeezecenter$/\tSQUEEZECENTER_CONFIG=\/etc\/sysconfig\/squeezecenter_trunk/'
/etc/rc.d/init.d/squeezecenter_trunk
sed -i -e
's/\s*SQUEEZECENTER_BIN=\"\$SQUEEZECENTER_HOME\/squeezecenter-server\"$/\tSQUEEZECENTER_BIN=\"\$SQUEEZECENTER_HOME\/slimserver.pl\"/'
/etc/rc.d/init.d/squeezecenter_trunk
sed -i -e
's/\s*LOCKFILE=\"\/var\/lock\/subsys\/squeezecenter\"/\tLOCKFILE=\"\/var\/lock\/subsys\/squeezecenter_trunk\"/'
/etc/rc.d/init.d/squeezecenter_trunk
sed -i -e 's/\s*echo -n \"Starting SqueezeCenter:\s*\"$/\t\techo -n
\"Starting SqueezeCenter_trunk: "/' /etc/rc.d/init.d/squeezecenter_trunk
sed -i -e 's/\s*echo -n \"Stopping SqueezeCenter:\s*\"$/\t\techo -n
\"Stopping SqueezeCenter_trunk: "/' /etc/rc.d/init.d/squeezecenter_trunk
sed -i -e 's/\s*killall squeezecenter-server$/\t\t\t killall
slimserver.pl/' /etc/rc.d/init.d/squeezecenter_trunk
cd /etc/rc.d/rc3.d
ln -s ../init.d/squeezecenter_trunk ./S80squeezecenter_trunk
cd /etc/rc.d/rc5.d
ln -s ../init.d/squeezecenter_trunk ./S80squeezecenter_trunk
echo 'Preparing the data dir..'
cp -R /var/lib/squeezecenter /var/lib/squeezecenter_trunk
sed -i -e 's/irmap: \/usr\/share\/squeezecenter\/IR\/Default.map$/irmap:
\/usr\/share\/squeezecenter_trunk\/server\/IR\/Default.map/'
/var/lib/squeezecenter_trunk/prefs/server.prefs
rm -rf /usr/share/squeezecenter_trunk/server/Plugins
ln -s /var/lib/squeezecenter_trunk/Plugins
/usr/share/squeezecenter_trunk/server/Plugins
chown -h squeezecenter:squeezecenter
/usr/share/squeezecenter_trunk/server/Plugins
echo 'Preparing the config dir..'
cp -R /etc/squeezecenter /etc/squeezecenter_trunk
rm -f /etc/squeezecenter_trunk/server.conf
ln -s /var/lib/squeezecenter_trunk/prefs/server.prefs
/etc/squeezecenter_trunk/server.conf
echo 'Fixing file permissions..'
chown -R squeezecenter:squeezecenter /etc/squeezecenter_trunk
chown -R squeezecenter:squeezecenter /usr/share/squeezecenter
chown -R squeezecenter:squeezecenter /usr/share/squeezecenter_trunk
chown -R squeezecenter:squeezecenter /var/lib/squeezecenter_trunk
chown -R squeezecenter:squeezecenter /var/log/squeezecenter_trunk
echo 'Setting up the squeezecenter_trunk service to autorun..'
chkconfig --level 35 squeezecenter off
chkconfig --level 35 squeezecenter_trunk on
echo 'Done! The squeezecenter_trunk svn code is ready to run as a service
(daemon).'
echo 'Run the command "service squeezecenter_trunk start" to start the
service.'
--------------------
To update the svn code to the latest version, run:
svnupdatesc.sh:
Code:
--------------------
#!/bin/sh
#svnupdatesc.sh
/sbin/service squeezecenter_trunk stop
echo 'Checking for Squeezecenter_trunk updates...'
/bin/date >>/var/log/squeezecenter_trunk/svn.log
/usr/bin/svn up /usr/share/squeezecenter_trunk
>>/var/log/squeezecenter_trunk/svn.log
/sbin/service squeezecenter_trunk start
--------------------
..again, fixing up the paths if you changed the install location.
--
gharris999
------------------------------------------------------------------------
gharris999's Profile: http://forums.slimdevices.com/member.php?userid=115
View this thread: http://forums.slimdevices.com/showthread.php?t=54199
_______________________________________________
unix mailing list
[email protected]
http://lists.slimdevices.com/lists/listinfo/unix