bookmark_borderHorde 4 Preview – Calendar Kronolith now supports resources

Horde 4 is due for April 05 2011 – and sports a new release of the major groupware applications. Among them, the time-tracking app hermes sees its 2.0 release. DIMP (ajax webmailer) and MIMP (mobile devices webmailer) have been integrated into IMP, the webmailer. The task tracker nag has been integrated into the new (optional) ajax frontend of the kronolith calendar app. By the way, Kronolith now allows assigning resources like rooms or beamers to events and provides resource scheduling just as if they were persons. The classic non-ajax interface is still available as a user preference though. Horde 4 won’t be compatible with the generic inventory app sesha anymore. The horde team has decided to abandon some other applications, too Currently, the Horde 4 git repository houses more than 20 applications, ranging from enhanced versions of long-running mainstream apps like the file manager gollem or the VCS chora to Horde Folks, the bleeding edge Facebook-like personal dashboard. Horde 4 will sport the ActiveSync protocol, opening synchronisation options for iPhone 4, Windows Phones and Android smartphones like the Motorola Milestone (Euro Brand) / Droid (US Brand) .

I will be dropping maintainence of Andre Pawlowski’s password safe eleusis in favor of a complete Horde4 rewrite, Hort.

bookmark_borderMaking horde3 run on php5.3 + (openSUSE 11.3+)

Horde3 has been designed to work with PHP 4 and aims to stay compatible till end of life. That is why some parts of Horde3 still rely on features or behaviour which is not default anymore in PHP5. It it still possible to make horde3 run on PHP5.3 as shipped by OpenSUSE 11.3 and factory:

in php.ini, please make sure that date.timezone has been set to any valid value:

linux-aggv:/srv/www/htdocs/horde # cat /etc/php5/apache2/php.ini |grep date.timezone
; http://php.net/date.timezone
date.timezone = Europe/Berlin

Please also make sure that your error log doesn’t get spammed by deprecated warnings:

cat /etc/php5/apache2/php.ini |grep E_DEPRECATED
; Production Value: E_ALL & ~E_DEPRECATED
; E_DEPRECATED – warn about code that will not work in future versions
; Production Value: E_ALL & ~E_DEPRECATED
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT

This should enable Horde3 to run on your bleeding edge openSUSE platform. Horde 4, scheduled April 5 2010, has been designed for PHP 5.x and won’t have any limitations.

If you are experiencing additional troubles, please check the “classics”:

* The Horde Cookie Path must be set to your webroot in /srv/www/htdocs/horde3/config/conf.php

* Do not turn on PHP safe mode (it isn’t actually “safe” anyway and about to be removed)

This article assumes that you are running the openSUSE Horde3 packages from factory or server:php:applications

bookmark_borderHorde 4 release date announced — Horde 3 made it into openSUSE Factory

Michael Rubinsky of the Horde Core team yesterday officially announced a release date for Horde 4

“Horde 4 and groupware apps will be released on April 5th, 2011.”

Horde 4 is a complete re-design of the Horde Framework and will be accompanied by new major releases of the Horde-based groupware Apps like Imp 5 (Webmail), Kronolith (Calendar) and Turba (Address book).

The community has been waiting quite some time but the horde developers emphasized quality over speed. Horde is currently discussing a fixed release scheme of a new minor or major release every six months, with bugfixes and security fixes whenever they feel appropriate.

Horde 4 will be completely pear-based. Gunnar Wrobel stated that Horde 4 will consist of something around 80 pear packages and that Horde apps will be released as pear packages, too.

Beginning with the first release candidates, I will provide rpm packages for openSUSE build service. By the way, the Horde RPMs for openSUSE have been included into openSUSE Factory last weekend and might get shipped with openSUSE 11.4

bookmark_borderEleusis Password App for Horde3 now in OpenSUSE

The Eleusis Password App by Andre Pawlowski allows keeping passwords and login credentials in a secure way. Encrypted storage and enforced HTTPS transfer provide a secure environment for you to store all those passwords you cannot remember but would never dare to write down. Other than your laptop’s password safe, Eleusis is always there for you anywhere you can get a secure web access, be it your phone, PDA or guest login on a public terminal.

Eleusis password decrypting screen

Eleusis is based on the Horde 3 Framework and can easily be integrated into your existing Horde Webmail or Horde Groupware. To make installation even more convenient, I packaged Eleusis for SLES and OpenSUSE in the Build Service repository server:php:applications. Click here for download

bookmark_borderHorde 3.3.10 customizing – Patch for more flexible administration of users and groups

Horde Groupware is a great couple of end-user applications with a lot of flexibility. It supports many different sources or backends for retrieving authorized users and putting them into groups which have access to some resources like calendars, address books or inventory lists. Horde includes a GUI for editing users and groups if the backend supports it. The GUI is accessible only to those users which have the global administrator privilege set in the conf.php configuration file. Users with this flag can access all administrative options like the SQL shell, the configuration editor and the permission tree. This is usually not what you want. Administrators want to delegate tedious user and group management to moderators or managers, but they do not want to enable these people to make harmful changes to the general application setup. Even worse, administrator users always see all applications, even those not properly setup for usage. There’s no way to disable that.

To fix this, I have provided a patch against horde 3.3.10 which allows more flexible administration permissions. You can now allow certain users to access only some administration screens like the users screen or the groups screen while not allowing them access to the permissions editor at the same time. These users will be presented only the administrative links which they have access to. Technically, they don’t get the isAdmin flag, so they don’t need to view everything a full administrator can see. I used the horde permissions system to implement access management, after Jan Schneider suggested this move instead of writing a full “account management module”. There is no feedback yet if this patch will make it into mainstream horde3 but I will use it on some horde installations.

bookmark_borderHorde Updates: Base module 3.3.10 RPMs for SLES and OpenSUSE

New Horde Version available as OpenSUSE package

Horde just released version 3.3.10 of their base application along with some minor updates to imp and dimp. After 3.3.9 had some regressions that caused trouble editing preferences, I decided to upgrade the horde RPMs for OpenSUSE and SLES 11 to the new release. This also removed the dependency on PHP versions lower than 5.3 as the package is now working with the default openSUSE 11.3 php package.

Splitting  into vanilla horde and Kolab patched version

Releases of the horde rpm and some application packages contained some dated patches for working together with the Kolab groupware server. I asked upstream Kolab author Gunnar Wrobel and he suggest a clean split between a standard and a kolab version of the horde package. Beginning with the next updates of the package I will implement this split offering two conflicting versions.

Turba LDAP driver patch

The LDAP backend driver for the Turba Contact Manager makes some optimistic assumptions on the privileges (ACLs) 0f the binding LDAP user. By default, it assumes it can add new contacts (which is not true for typical company addressbooks) and if you have ACLs to only some attributes of an entry, for example your own work phone but not your name or job title, Turba tries to write the whole entry.
I submitted a patch for the Turba LDAP driver which makes Turba only try to write attributes which have actually changed.

bookmark_borderHorde DIMP Portal: Let Dimp use classic Horde Portal settings

When you use DIMP, the AJAX frontend to Horde Groupware‘s widely used IMP webmailer, you usually want to hide the classic horde sidebar and the horde portal itself. Though DIMP provides its own portal page to display Horde Blocks, it does not provide any configuration tool for them but provides one static set for all users. One way around this is to make use of the user’s existing classic Horde Portal settings. This is how it works: Edit dimp/config/portal.php and add the following lines:

$horde_portal_layout = @unserialize($prefs->getValue(‘portal_layout’));
/* Format is
[row]
[column] empty or array app
[column]
[app] (string registry app identifier)
[height] (integer rows)
[width] (integer columns)
[params] (array)
[type] string block type identifier
[params] array, specific to block type*/

foreach ($horde_portal_layout as $horde_portal_row) {
foreach ($horde_portal_row as $item) {
if (is_array($item)) {
$dimp_block_list[$collection->getName($item[‘app’], $item[‘params’][‘type’] )] = array( ‘ob’ => $collection->getBlock( $item[‘app’], $item[‘params’][‘type’], $item[‘params’][‘params’] ) );
}
}

This is only a first approach to a complete solution. Dimp allows to add a specific DOM ID to every single block and to load specific JavaScript or template markup. In the default configuration, some blocks like the Ingo Filter’s overview block look odd in dimp portal, which was not in mind when they were originally designed.

Do you need site-specific horde hacks, setups, modules or improvements? Ask B1 Systems GmbH for consulting and development.

bookmark_borderHorde Webmail 1.1.2 und Horde Groupware 1.1.2 veröffentlicht.

Das Horde-Projekt hat heute die neue Version 1.1.2 des Horde-Webmail-Paketes und des Groupware-Paketes veröffentlicht.

Das Paket Horde Webmail besteht neben einer Horde-Basisinstallation aus dem Webmailer IMP, dem Email-Filter Ingo, dem Kalender Kronolith, dem Adressbuch Turba, dem Task-Manager Nag und dem Notizblock Mnemo.

Gegenüber Horde Webmail Version 1.1.1 wurde vor allem die Update-Fähigkeit des Setup-Scripts und der SQL-Treiber verbessert. Standardmäßig ist jetzt auch ein Adressbuch mit den häufigsten Email-Empfängern aktiviert. Ein komplettes Changelog ist auch erhältlich.

Horde Groupware besteht aus einer anders vorkonfigurierten Version des Basissystems sowie den Applikationen Gollem (Datei- und FTP-Manager), Kronolith, Mnemo, Nag, Trean (Lesezeichen-Manager), und Turba. Auch hier ist ein Changelog verfügbar.

Die Applikationen der Webmail-Suite und der Groupware-Suite sowie weitere Horde-Applikationen können prinzipiell auch separat voneinander oder in anderen Kombinationen eingesetzt werden.

bookmark_borderHorde Projekt gibt Blog-Software ‘thomas’ auf

Das Horde-Projekt hat angekündigt, die bisher auch auf dieser Website benutzte Blog-Software Horde Thomas nicht weiter als eigenständiges Programm zu entwickeln. Die Funktionalität von ‘thomas’ wird sukzessive in den weiter aktiv entwickelten News- und RSS-Reader Horde ‘jonah’ integriert.