Etherpad FAD
Its a go. See Etherpad FAD for more info.
Packaging Etherpad
There's a not really guidelines compliant version alive here: http://repos.fedorapeople.org/repos/sdz/etherpad/
Etherpad bundles a good chunk of libraries. Some of them are already packaging in Fedora, some aren't.
Libraries bundled in Etherpad
in etherpad/lib
file name | fedora package | status |
---|---|---|
dnsjava-2.0.6.jar | dnsjava | works |
jbcrypt-0.2.jar | jBCrypt | packaged |
jcommon-1.0.15.jar | jcommon | works |
jfreechart-1.0.12.jar | jfreechart | works |
in infrastructure/lib
file name | fedora package | status |
---|---|---|
activation.jar | classpathx-jaf | works |
c3p0-0.9.1.2.jar | review (new package needed) | needs packaging |
commons-lang-2.4.jar | jakarta-commons-lang | works |
derby-10.5.1.1.jar | derby | works |
derbytools.jar | derby | works |
dnsjava-2.0.6.jar | dnsjava | works |
jetty-6.1.20.jar | jetty | works |
jetty-sslengine-6.1.20.jar | jetty | works |
jetty-util-6.1.20.jar | jetty | works |
json.jar | json | Is non-free; free replacement exists [1] |
mail.jar | javamail | works |
rhino-js-1.7r1.jar | rhino | contains proprietary extensions which are patched around. R1 is needed for yuicompressor to work, we have R2 in Fedora |
sanselan-0.94aj.jar | source (maven-release dependency only from f14 on) | packaged: spot fedorapeople rpm |
servlet-api-2.5-20081211.jar | tomcat6-servlet-2.5-api | works |
tagsoup-1.2.jar | tagsoup | works |
yuicompressor-2.4-appjet.jar | source | breaks build, significant api breakage for yuicompressor both in R2 and R3; can be disabled, or we need compat-rhino-17r1. Alternatively, we could ship CSS-only version; performance penalty for JavaScript. needs packaging |
Scala Version Issue Compat Packages
Etherpad requires an old version of Scala (upstream ticket)
Jon Stanley's Scala2.7 compat packages:
http://jstanley.fedorapeople.org/etherpad/
Packaged: yes
Accepted: no
Libraries added to the Upstream version (since Google)
Upstream etherpad: http://github.com/ether/pad
Libraries used: http://github.com/ether/pad/tree/master/infrastructure/lib/
- commons-fileupload-1.2.1.jar
- commons-io-1.2.1.jar
- java_uno-3.2.0.jar
- juh-3.2.0.jar
- jurt-3.2.0.jar
- ridl-3.2.0.jar
- unoil-3.2.0.jar
(note: from commit 70d1f9d6fcaefe611e77, checked 3 Oct 2010)
Notes from Victor Vasilyev
I've successfully compiled and launched the project on the Fedora 13, and can confirm that is working well. But, I've also noticed that the Google wave has a bit more facilities :-(
After a brief researching of the project I've opinion that you'll have a lot of the tasks that should be completed before release of the project for the Fedora Linux distribution will happen. I see at least the following tasks:
- Decomposing of the project, and selecting of all "internal" and "external" components.
- Replacing the all third-party components with the requirements for each component to have a list of all external dependencies.
- Providing of the RPM packages for required third-party components that are not in Fedora yet (if any).
- Dividing of all external dependencies into build-time and run-time dependencies.
- Sorting of all "internal" components by their languages, and avoiding unneeded languages to simplify the project.
etc.
I think, you should also decide to use a build system that is "usual" for Java (e.g. Ant, Maven, etc.) instead of Bash-scripts.
...And, finally, will be better to see a components diagram for the project (e.g. UML components diagram) that might explain a role of each component, and their dependencies.