Running CTP as a Linux Service

From MircWiki
Revision as of 12:04, 9 September 2011 by Tim phillips (talk | contribs)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

This is most easily done using Ubuntu If you are using virtual machines I recommend [http://turnkeylinux


1 Instructions for installing the latest CTP/MIRC-Zn in Ubuntu

1.1 Desktop or Server?

  • Ubuntu Server
    • Makes more sense - MIRC is a web service after all
    • Will be leaner and faster
    • You will need to ssh in to the server with X-fowarding when you run the MIRC-Installer.jar file
      • From a linux desktop to a linux server this is ssh -x username@host
      • From a mac to a linux server this is ssh -Y username@host
      • From a windows box you will need Putty and Xming X Server for MS Windows (google them).
  • Ubuntu Desktop
    • Easier (very easy) if you're new to Linux
    • May be very slightly slower but on modern hardware you are unlikely to notice the difference.
    • You can just do part 1 and then part 2 straight away (X-forwarding is not an issue).

1.2 The script

You can cut and paste each line to the command prompt or just put the whole thing into a file and execute it. This script does the following things:

  1. Check which chipset you're running
  2. Enable the ubuntu partner repo (to get Oracle Java)
  3. Answers the Java installation questions in advance
  4. Installs SunJava and a few other necessary applications
  5. Downloads the appropriate JAI ImageIO and fixes the inherent problem in the Linux release
  6. Installs JAI ImageIO
  7. Downloads the latest version of MIRC-Zn
  8. Writes an upstart script (so that CTP/MIRC will be run as a service automatically)
#!/bin/bash

#check which chipset we're using
case $(arch) in
        i686)
                CHIP=i586
        ;;
        x86_64)
                CHIP=amd64
        ;;
        *)
        ;;
esac

# partner repo
echo deb http://archive.canonical.com/ lucid partner >>/etc/apt/sources.list.d/partner.list
apt-get update

# preset the java answers:
debconf-set-selections << END
sun-java6-jdk shared/accepted-sun-dlj-v1-1 boolean true
sun-java6-jre shared/accepted-sun-dlj-v1-1 boolean true
sun-java6-bin shared/accepted-sun-dlj-v1-1 boolean true
END

# packages installed:
apt-get install -y acpid htop unzip xauth libxtst6 sun-java6-jdk  

# get jai binary
wget http://download.java.net/media/jai-imageio/builds/release/1.1/jai_imageio-1_1-lib-linux-$CHIP-jdk.bin 

# make it executable
chmod 777 ./jai_imageio-1_1-lib-linux-$CHIP-jdk.bin

# fix an inherent flaw in the file (thanks to JGrass for this)
sed -i 's/+215/-n+215/' ./jai_imageio-1_1-lib-linux-$CHIP-jdk.bin

# put it in the jdk folder
mv ./jai_imageio-1_1-lib-linux-$CHIP-jdk.bin /usr/lib/jvm/java-6-sun/

# execute the installer
cd /usr/lib/jvm/java-6-sun/
./jai_imageio-1_1-lib-linux-$CHIP-jdk.bin

# go back to the home folder
cd -

# get MIRC installer
wget http://mirc.rsna.org/MIRC2/MIRC-installer.jar 

# have to re-login with X forwarding
echo 'type exit to logout and then log back in with ssh -Y root@host (from a mac) '

# make an upstart script
cat > /etc/init/MIRC-Zn.conf <<DELIM
description "MIRC Zn (CTP plugin not Tomcat)"
author "Tim Phillips <timothy.john.phillips@gmail.com>"

start on (local-filesystems and net-device-up IFACE!=lo)
stop on stopping network-services

respawn

expect fork

script
	cd /usr/share/CTP/
	java -jar ./CTP-runner.jar
end script
DELIM