Install 3.3


  • Make sure you enabled Python 2.7 since Kolab seems not to be ready for Python 3 yet:
$ eselect python list
eselect python list
Available Python interpreters:
  [1]   python2.7 
  [2]   python3.2
$ eselect python set 1
  • Make sure you've set the PHP_TARGETS accordingly:
# ...
# ...


  • All Kolab packages are masked with ~amd64. Make sure you've unmasked the following required packages before you proceed:

Kolab Package & Dependencies

=app-admin/augeas-1.3.0 ~amd64
=dev-php/PEAR-Net_LDAP3-1.0.2 ~amd64
=dev-php/composer-1.0.0_alpha10 ~amd64
=dev-python/pykolab-0.7.1 ~amd64
~dev-util/kolab-utils-3.1 ~amd64
=net-libs/libcalendaring-4.9.1 ~amd64
=net-libs/libkolab-0.6.0 ~amd64
=net-libs/libkolabxml-1.1.0 ~amd64
=net-mail/cyrus-imapd-2.5 ~amd64
=net-mail/kolab-3.3.0 ~amd64
=net-nds/389-admin-1.1.31-r1 ~amd64
=net-nds/389-ds-base- ~amd64
=net-nds/kolab-schema-3.1 ~amd64
=www-apps/kolab-chwala-0.2 ~amd64
~www-apps/kolab-freebusy-1.0.5 ~amd64
=www-apps/kolab-irony-0.2.8 ~amd64
~www-apps/kolab-roundcube-1.1.1 ~amd64
=www-apps/kolab-roundcube-compose-addressbook-8.0.4 ~amd64
=www-apps/kolab-roundcube-contextmenu-2.1 ~amd64
=www-apps/kolab-roundcube-converse- ~amd64
=www-apps/kolab-roundcube-getmail-1.0.0 ~amd64
=www-apps/kolab-roundcube-identity-smtp-20141221 ~amd64
=www-apps/kolab-roundcube-listcommands-2.3.5 ~amd64
=www-apps/kolab-roundcube-persistent-login-4.1 ~amd64
=www-apps/kolab-roundcube-recipient-to-contact-0.3 ~amd64
=www-apps/kolab-roundcube-threading-as-default-20110427 ~amd64
=www-apps/kolab-syncroton-2.3.0 ~amd64
=www-apps/kolab-webadmin-3.2.1 ~amd64

You can get the most recent atoms of all packages from the Kolab overlay using eix:

ACCEPT_KEYWORDS="~amd64" eix --in-overlay kolab -l --format "<bestversion:NAMEVERSION>"

Unstable Mainstream Packages

=dev-python/python-augeas-0.4.1 ~amd64

389 Directory Server & Dependencies

=net-nds/389-admin-1.1.31-r1 ~amd64
=net-nds/389-ds-base- ~amd64
=app-admin/389-ds-console-1.2.6-r1 ~amd64
=app-admin/389-admin-console-1.1.8-r1 ~amd64
=dev-libs/389-adminutil-1.1.15 ~amd64
=www-apache/mod_nss-1.0.8-r1 ~amd64
=dev-java/idm-console-framework-1.1.7 ~amd64
=dev-perl/perl-mozldap-1.5.2 ~amd6=net-nds/389-admin-1.1.31-r1 ~amd64
=net-nds/389-ds-base- ~amd64
=app-admin/389-ds-console-1.2.6 ~amd64
=app-admin/389-admin-console-1.1.8 ~amd64
=dev-libs/389-adminutil-1.1.15 ~amd64
=www-apache/mod_nss-1.0.8-r1 ~amd64
=dev-java/idm-console-framework-1.1.7 ~amd64
=dev-perl/perl-mozldap-1.5.2 ~amd64


There are a couple of USE-flags to be set. You can run emerge and set the USE-flags on demand or just copy & paste the following:

www-servers/apache suexec threads
dev-libs/nss utils
net-mail/cyrus-imapd ldap nntp perl replication sieve
dev-libs/cyrus-sasl openldap
dev-libs/openssl -bindist
net-misc/openssh -bindist
dev-qt/qtcore qt3support
dev-qt/qtsql qt3support mysql
dev-qt/qtgui qt3support
media-video/vlc dbus ogg vorbis
sys-libs/zlib minizip
sys-apps/dbus X
sys-auth/consolekit policykit
dev-qt/qtdeclarative qt3support
app-text/ghostscript-gpl cups
dev-qt/qtopengl qt3support
x11-libs/cairo X
sys-fs/udev gudev
dev-lang/php fpm mysqli ldap gd pdo sockets curl mysql exif imap intl spell sqlite xmlwriter zip
app-eselect/eselect-php fpm
dev-php/PEAR-Net_SMTP sasl
mail-mta/postfix sasl
dev-lang/python sqlite


  • Some packages are using PHP composer to download vendor files from Github. This might result in exhausting the public Github API limit for your host. To avoid this, you must set the GITHUB_API_TOKEN variable with the API token from your personal Github account. You can fetch your Github API token using curl:
$ curl -u "yourgithubname" | grep token
    "token": "YOUR TOKEN",
    "token": "ANOTHER TOKEN",
  • Further export the Github token:
  • Install Kolab:
$ emerge -av "=net-mail/kolab-3.3.0"

Initial setup

  • Kolab needs MySQL to be setup properly. So make sure to configure MySQL before you proceed:
# To setup dev-db/mariadb:
$ emerge --config mariadb
# or to setup dev-db/mysql:
$ emerge --config mysql
  • Update your defaults in /etc/kolab/kolab.conf and run `emerge –config` for first time setup:
$ emerge --config "=net-mail/kolab-3.2.0"

This will invoke setup-kolab which assumes a blank installation and might overwrite existing configuration files. See notes here if you want to update an existing Kolab setup.

Setup Roundcube

$ emerge --config kolab-roundcube


We recommend to enable nginx and php-fpm for your webserver. To enable Kolab for a virtual host, just include the Kolab config. This is a sample configuration for the hostname using SSL:

    listen 80;
    listen [::]:80;
    return 301$request_uri;
    listen 443 ssl;
    listen [::]:443 ssl;
    root /var/www/;
    index index.php index.html index.htm;
    ssl_certificate /etc/ssl/nginx/nginx.crt;
    ssl_certificate_key /etc/ssl/nginx/nginx.key;
    ssl_trusted_certificate /etc/ssl/nginx/nginx.pem;
    include /etc/nginx/ssl.conf;
    access_log /var/log/nginx/;
    error_log /var/log/nginx/ debug;
    location = /robots.txt  { access_log off; log_not_found off; }
    location = /favicon.ico { access_log off; log_not_found off; }
    # this prevents hidden files (beginning with a period) from being served
    location ~ /\.          { access_log off; log_not_found off; deny all; }
    # Enable Kolab Groupware for this domain.
    include /etc/nginx/conf.d/kolab-*.conf;

Further make sure that /etc/php/fpm.d/*.conf will be included in the appropriate php-fpm configuration:

; FPM Configuration ;

; All relative paths in this configuration file are relative to PHP's install
; prefix (/usr/lib/php5.3). This prefix can be dynamicaly changed by using the
; '-p' argument from the command line.

; Include one or more files. If glob(3) exists, it is used to include a bunch of
; files from a glob(3) pattern. This directive can be used everywhere in the
; file.
; Relative path can also be used. They will be prefixed by:
;  - the global prefix if it's been set (-p arguement)
;  - /usr/lib/php5.3 otherwise

; ...

Make sure, nginx and php-fpm is enabled in the default runlevel:

$ rc-update add nginx default
$ rc-update add php-fpm default

After you've started the services, you should be able to access your Kolab Groupware by pointing your browser to

The web administration panel can be found at