Webpages

Updating the webpages

The go-oo pages are served by freedesktop.org, and are version controlled in git. To do modifications:

[[!format txt """ git clone ssh://git.freedesktop.org/git/ooo-build/website cd website

edit what you need, for example

cd developers vim index.php php index.php > index.html

check carefully

git diff

commit & push

git commit -a git push

Now we have to pull on annarchy.

Pushing to the website repo is not enough, no auto update is implemented.

ssh annarchy cd /srv/ooo-build.freedesktop.org/www git pull -r """]] Note: Most of the pages are in 2 versions - .php, and .html. .php is the source - edit that one, do php index.php > index.html, do git diff to check the changes, and commit both.

And - when you look at the local copy of the page in a browser, don't be surprised if it does not look well at all - the css files that make the pages pretty are not found.

ooo-build git

Tagging a release

When you want to tag a release, you have to first create the tag, and then push it:

[[!format txt """

create a tag, signed by the GPG key you configured using git config user.signingkey

git tag -s

push the tags to the remote repository

git push --tags """]] You can also create the tag using another key (git tag -u ), or create an unsigned tag (git tag -a ); though you should avoid the unsigned tags.

Creating a release branch

When there's a particularly good reason for a branch, such as a MWS is moved to the maintenance mode and we want open master for further development, one of the core ooo-build hackers will follow something like this:

[[!format txt """

the branch is usually created from a beta release tag

checkout the tag OOO_BUILD_I_J_K into the new branch ooo-build-X-Y-Z

git checkout -b ooo-build-X-Y-Z OOO_BUILD_I_J_K

alternatively, you might do the branch from the current master

git checkout -b ooo-build-X-Y-Z master

modify the message printed at the end of 'configure.in'

vim configure.in

This is ooo-build-2-0-4 - the stable branch for the 2.0.4 release. If you want to build something cool, unstable, and risky, use master.

commit the changes and use the comment:

git commit -a Branch ooo-build-X-Y-Z (stable branch for OOo-X.Y.Z)

  • branch ooo-build-X-Y-Z

based on ooo-build, version I.J.K, tag OOO_BUILD_I_J_K

push the branch

git push origin ooo-build-X-Y-Z:ooo-build-X-Y-Z """]] And there might be some changes needed in the original tree (master) too.

[[!format txt """

switch back to the master

git checkout master

if it is an important branch, such as for a minor OOo version, add

a line to the message printed at the end of 'configure.in'

vim configure.in

ooo-build-X-Y-Z branch for X.Y.Z

commit the changes

git commit -a

push the changes

git push """]]

opengrok

The whole opengrok install is in /usr/local/share/opengrok, and the data are dropped in /var/opengrok. The index update is run each night at 0:30, but ooo-build user can run the update with the update-opengrok command. In order to fix file descriptor leaks, the patches for bug 17127 and 16692 have to be applied on the WAR file content.

The /usr/local/share/opengrok/lib/source.war.orig file has to be kept as the war file distributed by opengrok. All the patches to apply on it should be located in the patches folder of the opengrok installation. Generating the new war file is done by running /usr/local/share/opengrok/bin/apply-fixes: it will be named source.war and land in the lib folder of the opengrok installation.