HOWTO install etherpad on ubuntu 9.10

Etherpad was opensourced by google, and has some generic installation instructions. Here’s the translation for Ubuntu Karmic Koala (release 9.10):

Install the prerequisites:

sudo apt-get install mysql-server-5.1 mercurial sun-java6-jdk sun-java6-jre sun-java6-bin
cd /tmp
wget http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.12.tar.gz/from/http://mysql.he.net/
wget http://www.scala-lang.org/downloads/distrib/files/scala-2.7.7.final.tgz
sudo mkdir -p /opt
cd /opt
sudo tar xvzf /tmp/mysql*tar.gz
sudo tar xvzf /tmp/scala*.tgz
sudo ln -s scala* scala

Create an etherpad system user:

sudo adduser --system etherpad
sudo -u etherpad bash

Add this to ~etherpad/.bashrc:

export JAVA_HOME=/usr/lib/jvm/java-6-sun
export JAVA="$JAVA_HOME/bin/java"
export SCALA_HOME=/opt/scala
export SCALA=$SCALA_HOME/bin/scala
export PATH="$JAVA_HOME/bin:$SCALA_HOME/bin:$PATH"
export MYSQL_CONNECTOR_JAR="/opt/mysql-connector-java-5.1.12/mysql-connector-java-5.1.12-bin.jar"

Check out the source and install the mysql database:

cd ~etherpad
hg clone https://etherpad.googlecode.com/hg/ etherpad
mysql -u root -p -e "create database etherpad"
mysql -u root -p -e "grant all privileges on etherpad.* to 'etherpad'@'localhost' identified by 'password'; flush privileges;"
cd ~etherpad/etherpad/trunk/etherpad
bin/rebuildjar.sh

Compile:

cd ~etherpad/etherpad/trunk/etherpad
bin/rebuildjar.sh

Configure the domain of your server

  • Add the domain name of your server to the SUPERDOMAIN config in ~etherpad/etherpad/trunk/etherpad/src/etherpad/globals.js
  • Remember to add port forwarding for port 9000 on your router.

Start Etherpad on @reboot with cron:

Run sudo crontab -u etherpad -e and paste this in:

MAILTO=root
# m h  dom mon dow   command
@reboot cd ~etherpad/etherpad/trunk/etherpad ; bin/run-local.sh

Update May 10, 2010

I just found Nuba Princigalli‘s post which has etherpad pro instructions as well.

Related posts:

  1. Installing CrashPlan on Ubuntu 9.04 Server Edition
    Although rsnapshot is super for linux-to-linux backups, I’ve found CrashPlan to work very well as a backup solution for my family’s windows and mac boxes. The CrashPlan installation works pretty......
  2. HOWTO: Mount your USB hard drives at boot time on Ubuntu
    I’ve got a number of external USB hard drives connected to my ubuntu server that need to mount to a predictable directory. When you log into Gnome, the desktop environment......
  3. Simple MySQL backup to gmail on Ubuntu/Debian
    Backing up your MySQL database (if it’s a reasonable size, like < 100s of MB) can be done with a cronjob that runs mysqldump, gzip, and mpack. First set up......
  4. HOWTO enable the query log on MySQL on Mac OS X
    Tailing the MySQL query log in real time can be a lifesaver for any developer, and it’s pretty easy to do: Make a file for the mysqld process to write......

  • Anders H.

    bin/rebuildjar.sh ends with an ‘cp: missing destination file operand after lib/

  • Anders H.

    The ~etherpad/.bashrc file should point to version .12 of the mysql java connector (not .10 as written above). Also remember to “source .bashrc” to make it work later.

  • http://matthew.mceachen.us matthew

    Thanks for the mysql path correction. I didn’t see your issue with rebuildjar.sh on my box, though — and it looks like they still haven’t made any changes in the tree since December — http://code.google.com/p/etherpad/source/list — so it must be an environment difference.