Skip to content

installation instructions II

holtzermann17 edited this page Sep 13, 2010 · 16 revisions

Ideally this would include “full” installation instructions.
It can also be used as a place to talk about building packages for popular distros.
For the moment you may want to look at installation-instructions instead.

The following is heavily derivative from
http://mclear.co.uk/2010/03/10/installing-etherpad-on-debian/
but the goal is to make it comprehensive eventually!


I’m going to run through an installation on Fedora, but
dependencies should be similarly available platform to
platform.

The main dependencies are:

  • Java 1.6 (tested with Sun’s 1.6.0_10, with java-1.6.0-openjdk YMMV)
  • Scala 2.7 (tested with 2.7.4)
  • MySQL Server 5.1 (tested with 5.1.41)
  • mysql-connector-java (tested with 5.1.0)
Fedora Ubuntu Mac OS X
download and install java from sun apt-get install sun-java6-jdk
yum install scala apt-get install scala
yum install mysql-server apt-get install mysql-server
yum install mysql-connector-java apt-get install libmysql-java
yum install git apt-get install git-core

Note: In order to set up mysql on Fedora you may want to
look at some instructions, e.g.

http://www.flmnh.ufl.edu/linux/install_apache.htm


Add something like this to the end of /etc/profile (Note that the version numbers
are different from distro to distro; check your local distro.)

Fedora version
export PATH
export JAVA_HOME=“/usr/java/jdk1.6.0_19”
export SCALA_HOME=“/usr/share/java”
export JAVA=“/usr/java/jdk1.6.0_19/bin/java”
export SCALA=“/usr/bin/scala”
export PATH=“/usr/bin:/usr/bin:/usr/java/jdk1.6.0_19/bin:$PATH
export MYSQL_CONNECTOR_JAR=“/usr/share/java/mysql-connector-java-5.1.8.jar”
export JAVA_HOME SCALA_HOME JAVA SCALA MYSQL_CONNECTOR_JAR PATH
umask 022

Ubuntu version
export PATH
export JAVA_HOME=“/usr/lib/jvm/java-6-sun”
export SCALA_HOME=“/usr/share/java”
export JAVA=“/usr/bin/java”
export SCALA=“/usr/bin/scala”
export PATH=“/usr/bin:/usr/bin:/usr/local/mysql/bin:$PATH
export MYSQL_CONNECTOR_JAR=“/usr/share/java/mysql-connector-java-5.1.10.jar”
export JAVA_HOME SCALA_HOME JAVA SCALA MYSQL_CONNECTOR_JAR PATH
umask 022

You may need this quick and dirty compatibility fix if the latter file doesn’t exist:

ln -s /usr/share/java/lib/scala/scala-library.jar /usr/share/java/lib/scala-library.jar


git clone http://github.com/ether/pad.git
mv pad /usr/local/etherpad


Add your domain to the superdomain section:
nano /usr/local/etherpad/etherpad/src/etherpad/globals.js


mysql -u root -p

create database etherpad;

grant all privileges on etherpad.* to ’etherpad’@’localhost’ identified by ‘make_up_a_clever_password’


cd /usr/local/infrastructure/ace
bin/make normal etherpad

(You man need to run
export JAR=jar
here, see the last post of this thread)

cd /usr/local/etherpad/etherpad/
bin/rebuildjar.sh


To avoid frustration, if you don’t have a lot of ram available, read “Troubleshooting” below now.
And once you’re happy,

bin/run-local.sh


Maybe take a look at the screen man page?


Troubleshooting:

  • If you see

Error occurred during initialization of VM
Could not reserve enough space for object heap

when you try to run the web server, it can be resolved by decreasing the size of the needed heap. Edit bin/run-local.sh and change the variable MXRAM from 1G to something smaller (256m should do the trick), then try running bin/run-local.sh again.

  • If you ever have scala problems with infrastructure/bin/makejar.sh look closely if it might be caused by gcj.

apt-get remove libgcj-common java-gcj-compat-headless java-gcj-compat gcj-4.3-base


Browse to: http://localhost:9000


How d’you get it to show up without that obnoxious portnumber?

Edit etc/etherpad.localdev-default.properties and change listen = 9000 to listen = 80


How d’you turn on the various plugins, e.g. twitterStyleTags?

/ep/admin, click plugin manager, disable/enable the twitterStyleTags plugin


How to make pro work?

Edit /usr/local/etherpad/trunk/etherpad/src/main.js

Replace all instances of etherpad.com with yourdomain.com

Edit /usr/local/etherpad/trunk/etherpad/src/static/crossdomain.xml

Add to the obvious section

Edit /usr/local/etherpad/trunk/etherpad/src/etherpad/pro/pro_utils.js

Replace

var fromDomain = ‘etherpad.com’;

with

var fromDomain = ‘yourdomain.com’;