Karteek's Etherpad Fork
- Etherpad source from Etherpad Google Code repository
- Some minor fixes/changes here and there
- Oo.org integration for file exports and file imports from DOC/RTF format
- Commented code for File imports due to license restrictions
- Grab the code from github $ git clone git://github.com/karteek/etherpad.git
- Set up the environment in env.sh and source the file. The settings inside are from my MBP. Do update them to meet your machine's settings. $ source env.sh
- 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
- Update etherpad.SQL_JDBC_URL, etherpad.SQL_USERNAME, etherpad.SQL_PASSWORD and etherpad.adminPass in the file "etherpad/etc/etherpad.localdev-default.properties"
- Change dir to etherpad, compile the jar and start the server $ cd etherpad $ bin/rebuildjar.sh $ bin/run-local.sh
- You are done. Visit http://localhost:9000 to check your instance
How to Enable File Imports
- File Imports depend on cos.jar - com.oreilly.servlet
- Do read the license
- 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
- Make sure that there is a "etherpad.soffice" entry in the file "etherpad/etc/etherpad.localdev-default.properties"
- You need Openoffice.org 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"
- Check the file "infrastructure/com.etherpad.openofficeservice/importexport.scala" for more info
How to deploy the same on example.com
- Edit your dns and point *.example.com to the same server where example.com resides
- Make sure that your SMTP is working
- Open etherpad/src/main.js, and update domain in line #273
- Open etherpad/src/etherpad/globals.js and change the domain in variable SUPERDOMAINS found at line #30
- Open etherpad/src/static/crossdomain.xml and add your domain to crossdomains.xml
- Look into the src folder and update your domain where etherpad.com is used (especially emails) $ grep -ir "etherpad.com" * and update domain in all the files.
- Open etherpad/etc/etherpad.localdev-default.properties and update
- devMode to false
- etherpad.isProduction to true
- listen to example.com:80 and change passwords too.
- Now start the server. You will need root access on OS X to bind to ports < 1000. $ bin/run-local.sh
How to do the same on example.com but with a reverse proxy on Apache
- Do steps 1 thru 7 in above. But dont update listen as told in 7, rather update listen to example.com:9000, and set hidePorts to true
- Create a vhost entry. It might look like this gist
- Restart apache, and things should work