Differences between revisions 40 and 41
Revision 40 as of 2015-06-02 19:48:35
Size: 6413
Comment: Adding a TableOfContents
Revision 41 as of 2015-08-13 22:24:39
Size: 6143
Comment: Update Tasks
Deletions are marked like this. Additions are marked like this.
Line 26: Line 26:
 * switch to debhelper (./)
Line 30: Line 31:
  * To be re done with version 7.2
 * Use dbconfig-common/Debconf to generate the initial configuration (./)
  * To be re done with version 7.2.x
 * Use [[http://people.debian.org/~seanius/policy/examples/dbconfig-common/doc/dbconfig-common-using.html|dbconfig-common]]/Debconf to generate the initial configuration (./)
Line 35: Line 36:
  * place of the database (local or remote)
 * Use [[http://people.debian.org/~seanius/policy/examples/dbconfig-common/doc/dbconfig-common-using.html|dbconfig-common]] to generate the initial database configuration
  * place of the database (local or remote) -> Debconf
Line 38: Line 38:
  * `zarafa-server` shouldn't create the database on it owns (it needs to much mysql rights for this -> CREATE DATABASE is needed)
   * we can do the creation of the database by dbconfig-common and the setup of `zarafa-server` by the postinst script
Line 46: Line 44:
 * systemd unit  * systemd unit file
Line 57: Line 55:
 * zarafa-libarchiver: rename to libzarafa-archiver  * --(zarafa-libarchiver: rename to libzarafa-archiver)--

Packaging Giraffe

Giraffe is the free open source variant of the Zarafa Collaboration Platform packaged for Debian.

Resources

Current State

The packages are not available by the Debian repositories, the packaging process is not yet finished.

libvmime

To Do

zarafa-server, ...

  • import upstream version 7.2.0 (./)

  • switch to debhelper (./)

  • Fix Lintian errors and warnings
  • Review and forward patches against libical (and libvmime, see above) on upstream. For now it seems we can run with the versions of the revitalized package.

  • Move dlopen'ed libs to private directory
  • Remove embedded copies of fckeditor via the dfsg-clean branch in git, (use fckeditor package)

    • To be re done with version 7.2.x
  • Use dbconfig-common/Debconf to generate the initial configuration (./)

    • database name
    • database user
    • database login
    • place of the database (local or remote) -> Debconf

    • installing zarafa-server breaks without this (./)

  • Test full functionality
    • We'd need some Outlook users here, too...
  • fix init script
    • systemd compatibility
    • error out when database is missing
    • often hangs on stop
  • systemd unit file
  • clean up packages (empty packages etc.)
  • MTA integration
  • check package descriptions
  • logrotate (upstream available in installer/linux/zarafa.logrotate, put in zarafa-common, split it per package)
  • check pre-/postinstall scripts: they do no error handling, don't include debhelper snippets
  • z-push upstream update
  • do not run as UID 0 (problematic for zarafa-search, otherwise it is configurable in the config files)
  • zarafa-client:
    • Rename zarafa-client to libzarafa-client since it contains no client programs
    • make libzarafaclient a proper versioned shared lib (or a private one)
  • zarafa-libarchiver: rename to libzarafa-archiver

  • zarafa-common: kill it with fire, no useful parts

WebApp

  • Package webapp (which seems possible since it is AGPL3, too). prepared git repo: https://github.com/tijuca/zarafa-webaccess

  • WebApp tarball ships jQuery, extjs (3.4) and TinyMCE 4.0. (TinyMCE is does not seem to be in the Debian repositories, but to old)

    • Lintian is complaining about
      • jquery-1.6.2.min.js (./) (removed and symlinked to libjs-jquery)

      • player.swf and moxieplayer.swf (asked Upstream if this is removable)
      • ext-{base,all}.js, prettify.js (./) (removed and symlinked to libjs-extjs libjs-jac libjs-prettify)

      • tinymce (currently overriden as Debian version is to old)

The origin of this list is provided by GuidoGünther in https://honk.sigxcpu.org/piki/agx/publications/2011-06-debian-groupware-zs.pdf

Using KVM for testing

You probably wont use your current system to test the zarafa packages and that's a good idea so far. KVM is a good alternative for testing because it's supporting snapshot mechanism for easy using and resetting of installations.

Installing needed KVM components

Installation is easy as it's simply a oneliner.

$ sudo apt-get install qemu-kvm libvirt-bin bridge-utils virt-manager virtinst

Further preparations

After this ensure you are a member of the group 'libvirt'

$ sudo usermod -aG libvirt [YOUR_USERNAME]

The virtual network adapter inside the libvirt environment is disabled per default so befor to continue start it.

$ virsh -c qemu:///system net-autostart default

The next calls maybe not really needed, but on the other hand it's no problem if the storage pools allreday up, so just to throw possible issues away.

$ virsh -c qemu:///system pool-start default
$ virsh -c qemu:///system pool-start boot-scratch

Installation of a virtual image

After the finishing of the preparation from above you can install a first image. The installation can be as known done fully automated by a preseed file, Guido has prepared file preseed.cfg. Download the file for example to the 'Downloads' folder within your home directory.

$ wget -P $HOME/Downloads http://honk.sigxcpu.org/projects/libvirt/preseed/preseed.cfg

Next you can set up a install, for example based on the Jessie release amd64 and named jessie-amd64-zarafa.

$ RELEASE=jessie
$ NAME=zarafa
$ DIST=amd44
$ virt-install --connect=qemu:///system \
               --location=http://ftp.us.debian.org/debian/dists/$RELEASE/main/installer\-$DIST \
               --initrd-inject=$HOME/Downloads/preseed.cfg \
               --extra-args="auto" \
               --name $RELEASE-$DIST-$NAME --ram=512 \
               --disk=pool=default,size=10,format=qcow2,bus=virtio

This will install a image named 'jessie-amd64-zarafa.qcow2' with a size of 10GB under /var/lib/libvirt/images/. After the install the image will boot automatically.

Usage of KVM images

to fill out

Debranding/Rebranding

We have currently a re branded artwork made by René Heinen. With the change of the parts for redistribution license this is not needed any longer. Just for completeness.

The main login window.

[ATTACH]

The graphic on the left side on top.

[ATTACH] [ATTACH] [ATTACH]