Integrate Chwala with Seafile on Enterprise Linux 7

Seafile is a GPL v3-licensed software designed to host files privately and securely on servers with access to the Web, in a fashion similar to some popular proprietary solutions. As of Kolab version 16, Chwala, the file storage component of Kolab, can use Seafile as a backend to store files.

This document outlines the steps needed to interface Chwala with Seafile.

Prerequisites

  • Kolab Groupware, kolab 16 or later (chwala 0.5.5-4.1 or later)
  • Installed on RedHat Enterprise Linux
  • Seafile version 4 or later, running on a top level domain (files.example.com in this guide)

Continue reading

Increase Web Client Performance with Memcache

Memcache is a protocol to access a simple key-value store, that is memory-backed, over a network socket. The memcached server does not perform any form of access control and is optimal for certain caches used in the Kolab web client (and associated HTTP-based access interfaces), by avoiding superfluous login, access control, and other such software policy considerations, as well as disk I/O.

This article outlines the installation and configuration of a single memcached server for use with the Roundcube web client for Kolab.

Continue reading

Why does the Files app in the Web Client not work?

When the Files application in the web client appears to “not work”, the symptoms may include;

  • An empty left-hand side list of folders,
  • Inability to save attachments to the cloud,
  • Inability to attach files from the cloud,
  • An error displayed upon loading the application.

Resolving the Empty Folder List, Inability to Save/Attach to/from Cloud

If you are not a server administrator, please relay this article to someone who is.

The implementation of the Files application in Kolab requires that the server be configured with a canonical location to the File Cloud API (chwala). There is normally one configuration setting configured in /etc/roundcubemail/kolab_files.inc.php;

$config['kolab_files_url'] = '/chwala/';

For a web client session against https://kolab.example.com/roundcubemail/, this will cause the user’s browser to use the File Cloud API at https://kolab.example.com/chwala/. Unless otherwise configured, the server-side application will use the same URL to contact itself. This implies the server must be able to resolve the kolab.example.com hostname to a valid web server that serves the File Cloud API at/chwala/api/.

To troubleshoot the server, please issue the following command on it:

$ host kolab.example.com

Should this command show that the hostname does not resolves back to the server itself (or another server that serves the File Cloud API), then either this name resolution problem must be resolved, or the configuration needs to be adjusted; In /etc/roundcubemail/kolab_files.inc.php, add the following setting to an end-point that does serve the File Cloud API:

$config['kolab_files_server_url'] = 'https://chwala.example.com/';

An Error is Displayed

The common cause is the non-existence of a (default) personal Files folder, or said folder not being subscribed to.

Users can check their folders using the web client “Settings” page, under “Folders”. If no folder exists that is of type File, create one and ensure it is subscribed.

Administrators can verify the user’s folder subscriptions with the Kolab command-line:

$ kolab list-user-subscriptions john.doe@example.com
$ kolab list-user-subscriptions john.doe@example.com --unsubscribed

Should the Files folder or folders indeed be unsubscribed, use the following command to subscribe the user;

$ kolab add-user-subscription john.doe@example.com Files

Should no Files folder exist, use the following commands to create one, and subscribe the user;

$ kolab cm user/john.doe/Files@example.com
$ kolab set-mailbox-metadata user/john.doe/Files@example.com /shared/vendor/kolab/folder-type file
$ kolab set-mailbox-metadata --user john.doe@example.com Files /private/vendor/kolab/folder-type file.default
$ kolab add-user-subscription john.doe@example.com File