#title Installing Etherpad on Ubuntu == Status of official Ubuntu packages for Etherpad == There are no Ubuntu packages for Etherpad available from the repositories yet. If you want to help package Etherpad in Ubuntu see: * https://bugs.launchpad.net/debian/+bug/563484 This document describes how to install Etherpad from Etherpad.org's repositories or, if you are inclined to do so, building it from its source code and installing it. = Installing Etherpad from Etherpad.org's repository = == Install Java, MySQL and Scala required packages == Install pre-requisite packages for getting and building Etherpad. {{{ sudo apt-get install sun-java6-jdk scala mysql-server mysql-client libmysql-java git-core }}} Etherpad will not build or run with openjdk-6-jdk or openjdk-6-jre. It also is best to use Sun's jar since fastjar seems to have some issues. If you get this error: {{{ Package sun-java6-jdk is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source E: Package sun-java6-jdk has no installation candidate }}} Checkout /etc/apt/sources.list and add this line if missing: {{{ deb http://us.archive.ubuntu.com/ubuntu/ hardy multiverse }}} For Lucid you have to activate the partner repository {{{ deb http://archive.canonical.com/ubuntu lucid partner }}} Then {{{ apt-get update }}} and try again. It is necessary to ensure that the server's host name is in the /etc/hosts for the IP 127.0.0.1 . If this is not there you will have a compile time error like this : "Unable to establish connection to compilation daemon Compilation failed." Furthermore, it might be necessary to tell Ubuntu to switch from OpenJDK to Sun’s Java: {{{ update-java-alternatives -s java-6-sun }}} == Installing the Etherpad package == There is now an apt source that you can put in your /etc/apt/sources.list http://wiki.github.com/ether/pad/installation-instructions-ii {{{ sudo echo "deb http://apt.etherpad.org all ." >> /etc/apt/sources.list sudo echo "deb http://us.archive.ubuntu.com/ubuntu hardy multiverse" >> /etc/apt/sources.list }}} Then do the following commands {{{ $sudo apt-get update $sudo apt-get install etherpad }}} You will get the following message. {{{ $ apt-get install etherpad Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: etherpad 0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded. Need to get 0B/31.5MB of archives. After this operation, 45.0MB of additional disk space will be used. WARNING: The following packages cannot be authenticated! etherpad Install these packages without verification [y/N]? }}} Type Y because you trust the Etherpad foundation. :) Now for some mysql magic. http://dev.mysql.com/doc/refman/4.1/en/adding-users.html First, you would check if this is necesary to do checking if the user ''etherpad'' already exists. {{{ $mysql -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 205 Server version: 5.1.41-3ubuntu12.3 (Ubuntu) Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> CREATE DATABASE etherpad; mysql> GRANT ALL PRIVILEGES ON *.* TO 'etherpad'@'localhost' IDENTIFIED BY 'some_password_here' mysql> quit Bye $ }}} Now the etherpad database is done. Give yourself a pat on the back. Now depending on the speed of box server you might want to get a drink right now. Or read http://xkcd.com/ while the code is compiling. {{{ $cd /usr/share/etherpad $bin/build.sh }}} In your favorite editor or nano {{{ nano /etc/etherpad/etherpad.local.properties }}} Edit the line topdomains = , Ubuntu,localhost,localhost.localdomain To include your Fully Qualified Domain Name(FQDN) of your box. then run {{{ $sudo bin/run.sh }}} YAY You did it. Be the only kid on your block that has installed etherpad. = Installing Etherpad from source code = Please note this is not recommended for production systems and will not provide feature and security updates. == Build from source == If you want the latest an greatest from the etherpad foundation you have to use git. Don't worry git is super cool and easy. {{{ $cd ~ $git clone git@github.com:ether/pad.git }}} You should now have a directory with the etherpad source! == Compiling Etherpad == From pad/: {{{ $ bin/build.sh }}} == Running Etherpad == {{{ $ bin/run.sh }}}