Archive for the ‘Tech’ Category

30. Januar 2011


In: horde, Tech


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
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

27. Januar 2011


In: Allgemein, horde, Tech

1 comment

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

13. Dezember 2010


In: Allgemein, Fun, horde

Kommentare deaktiviert für Workarounds… (Why you would want Firefox to look like Internet Explorer)

Workarounds… (Why you would want Firefox to look like Internet Explorer)

(13:10:30) Ralf Lang: hi gclx
(13:10:49) gclx: some of my clients are having trouble signing in they get the horde page once they log in they get 404 page
(13:11:03) gclx: i have no trouble logging on via the same page
(13:11:40) gclx: we upgraded from older horde to latest
(13:12:10) gclx: user has explorer 8 on windows 7 home premium 64bit
(13:12:21) gclx: firefox is ok
(13:14:18) Spkka hat den Raum verlassen (quit: ).
(13:14:35) hyper_ch: use firefox then 🙂
(13:14:55) gclx: i know but user doesnt understand much of computer :p
(13:15:31) gclx: he wants internet to be behind the small blue e icon
(13:16:15) gclx: so no known issues? with this setup?
(13:22:31) Ralf Lang: you could configure the firefox application link (.lnk file) to use the ie symbol.
(13:23:19) gclx: lol
(13:24:39) gclx: 😀
(13:25:13) gclx: he will not notice a thing :p
(13:25:25) Ralf Lang: :-p
// read more >

9. Dezember 2010


In: horde, Tech

1 comment

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

29. Oktober 2010


In: Allgemein, horde, Tech

1 comment

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.

26. Oktober 2010


In: horde, Tech

Kommentare deaktiviert für Horde 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.

18. Oktober 2010


In: Allgemein, horde, Tech

Kommentare deaktiviert für Horde 3.3.9 SLES 11SP1 and OpenSUSE RPMs

Horde has been in Suse Linux for many years, but recently the packages were outdated, some even missing.

I have taken over the horde packages in the OpenSUSE and SLES 11 PHP applications repository.  Currently Horde has been updated to 3.3.9, but also mimp, mnemo, turba, and kronolith have been updated to recent versions. The dynamic ajax webmail interface dimp and the file manager gollem have been added as new packages in their current version.

While I am actively testing and using these packages, these packages come with no sort of guarantee.

The packages have a dependency on PHP < 5.3 as there are some known issues with horde 3.3.9 Alarms under PHP 5.3. While SUSE Linux Enterprise Server 11 SP1 comes with PHP 5.2, users of OpenSUSE 11.3 need to get PHP < 5.3 from another repository. I am currently trying to find out if I can easily patch this to work with PHP 5.3 and up.

One note for new users: These packages do not install mysql, php-mysql or the  php5-pear-mdb2_driver_mysqli package, which you probably want to install when using horde with mysql.

Stay tuned for more packaged horde apps, framework components and patches.

21. April 2010


In: Allgemein, horde, Tech

1 comment

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
[column] empty or array app
[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.

12. Februar 2010


In: Allgemein, Tech


AOL ICQ has silently changed the port number of its IRC Service under from standard oirt 6777 to 7012.

Der beliebte IRC-Chat von ICQ hat eine neue Portnummer bekommen und läuft jetzt unter der altbekannten Adresse auf Port 7012. Wer vergisst, seine Verbindungsinformationen zu aktualisieren, wird eine Meldung „Connection Refused“ bekommen – und draußen bleiben.

27. Januar 2010


In: horde, Tech

Kommentare deaktiviert für Horde 3.3.5 to 3.3.6 migration patch broken? Alternative Patch!

If you want to patch a Horde 3.3.5 installation pulled from  the official Horde 3.3.5 tarball
using the  official Horde 3.3.6 patch you will notice a lot of patch rejects, which render the patch file essentially broken.


The patch assumes that version identifier strings of both 3.3.5 and 3.3.6 use
the dash format for dates like 2009-01-06. The 3.3.5 files shipped with the
horde-3.3.5.tar.gz file use slash format like 2009/01/06 15:22:10.

Horde developer Michael Rubinsky stated on the developer mailing list that this happened when horde repositories moved to a new server with a different version of CVS. Future version upgrades will not be affected by this problem.

When Michael answered, I already made my own patch (click here to download) from 3.3.5 to 3.3.6 which works with the real tarballs.

Users of a 3.3.5 version CVS checkout be warned. Don’t use this patch. Use the official Horde 3.3.6 patch instead.

11. Februar 2009


In: Tech

1 comment

When you have to deal with kilobyte or kibibyte values in today’s real-world computers, you often want extremely similar values to evaluate to „equal“. An easy solution is to round them to full Mebibytes. This can be easily done in every programming language which supports integer division and the modulo operator.

For example in Perl:

sub _rnd_kbval_to_mib_borders {
      my $input  = shift;
      my $base   = $input DIV 1024;
      my $modulo = $input % 1024;
      return ( $modulo < 512 ) ? $base * 1024 : ( $base + 1 ) * 1024;

This approach is trivial but can safe you a lot of headache.

16. November 2008


In: Tech

Kommentare deaktiviert für Symlinks auf network devices per udev festlegen (geht nicht)

Bekanntlich kann man unter Linux ab Kernel 2.6 mit udev bestimmen, wie ein Gerät im /dev/-Baum heißen soll. Ebenso bietet udev die Möglichkeit, einem Gerät zusätzliche symbolische Namen zu geben. So ist es überall dokumentiert. Ebenfalls gut dokumentiert ist, dass man auch Netzwerk-Geräten wie „eth0“, „bond0“, „wlan0″ sprechendere Namen geben kann über eine udev-Regel. Zum Beispiel so:

SUBSYSTEM==“net“, SYSFS{address}==“00:16:3e:00:07:97″, NAME=“firstlan“
SUBSYSTEM==“net“, SYSFS{address}==“00:16:3e:00:07:98″, NAME=“secondlan“
SUBSYSTEM==“net“, SYSFS{address}==“00:16:3e:00:FF:54″, NAME=“wifi-lan“

Nirgendwo steht allerdings etwas dazu, dass die Option „SYMLINK=…“ bei Netzwerkgeräten nicht funktioniert. // read more >

16. Oktober 2008


In: Allgemein, Tech

Kommentare deaktiviert für Was hältst du davon, wenn wir mal schnell um die Ecke gehen und ne Runde Spam versenden?

Spam – das sind, für Dumme erklärt, unerwünschte Werbe-Nachrichten, die in großen Mengen per Email um die Welt gehen. Der Versender bildet sich ein, dass die Leute das alles lesen und dann immer brav die umworbenen Produkte kaufen – und zwar nur von ihm. Aber soll ich euch was verraten? Das machen die gar nicht! Die Empfänger von Spam-Email sind undankbare Hunde. Sie meckern, sie motzen, sie regen sich auf und verhalten sich im Großen und Ganzen sehr unsouverän, wenn Werbung ihnen rät, ihren Penis zu verlängern oder mit den richtigen Chemikalien überhaupt erstmal in Funktion zu versetzen. // read more >

16. August 2008


In: horde

Kommentare deaktiviert für Horde 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.

13. August 2008


In: horde, Tech

Kommentare deaktiviert für Horde 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.