Fork of Etherpad Opensource application. With some fixes. Imports and Exports (with file conversion) patched.
Java JavaScript Scala Other
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Karteek's Etherpad Fork


  • Etherpad source from Etherpad Google Code repository
  • Some minor fixes/changes here and there
  • integration for file exports and file imports from DOC/RTF format
  • Commented code for File imports due to license restrictions

How to

  1. Grab the code from github $ git clone git://
  2. Set up the environment in and source the file. The settings inside are from my MBP. Do update them to meet your machine's settings. $ source
  3. Create a database "etherpad", add a user "etherpad" with password "password" on a MySQL database server. Grant all privileges for on database etherpad to etherpad@localhost
  4. Update etherpad.SQL_JDBC_URL, etherpad.SQL_USERNAME, etherpad.SQL_PASSWORD and etherpad.adminPass in the file "etherpad/etc/"
  5. Change dir to etherpad, compile the jar and start the server $ cd etherpad $ bin/ $ bin/
  6. You are done. Visit http://localhost:9000 to check your instance

How to Enable File Imports

  1. File Imports depend on cos.jar - com.oreilly.servlet
  2. Do read the license
  3. Even now, if you want to continue with imports just apply this gist or
    • Download cos.jar from the site and copy it to infrastructure/lib folder
    • In infrastructure folder, find out the files, where imports functionality is commented $ grep -R "REMOVED_COS_OF_COS" *
    • Uncomment and recompile JAR

How to Enable Exports

  1. Make sure that there is a "etherpad.soffice" entry in the file "etherpad/etc/"
  2. You need to be running on your machine as service. It usually on linux is $ /path/to/openoffice/program/soffice.bin -headless -nofirststartwizard -accept="socket,host=localhost,port=8100;urp;StarOffice.Service"
  3. Check the file "infrastructure/com.etherpad.openofficeservice/importexport.scala" for more info

How to deploy the same on

  1. Edit your dns and point * to the same server where resides
  2. Make sure that your SMTP is working
  3. Open etherpad/src/main.js, and update domain in line #273
  4. Open etherpad/src/etherpad/globals.js and change the domain in variable SUPERDOMAINS found at line #30
  5. Open etherpad/src/static/crossdomain.xml and add your domain to crossdomains.xml
  6. Look into the src folder and update your domain where is used (especially emails) $ grep -ir "" * and update domain in all the files.
  7. Open etherpad/etc/ and update
    • devMode to false
    • etherpad.isProduction to true
    • listen to and change passwords too.
  8. Now start the server. You will need root access on OS X to bind to ports < 1000. $ bin/

How to do the same on but with a reverse proxy on Apache

  1. Do steps 1 thru 7 in above. But dont update listen as told in 7, rather update listen to, and set hidePorts to true
  2. Create a vhost entry. It might look like this gist
  3. Restart apache, and things should work

Other applied patches