[horde] Installation Horde 6

Dmitry Petrov dpetrov67 at gmail.com
Mon Feb 2 16:43:45 UTC 2026


The apps have specific code in migration/ folder which is exactly for the
purpose of automated DB upgrades.

You really should not be modifying DB tables manually.

Instead, visit https://your.horde.site/horde/admin/config/  (or whatever
the right path is in your case) and do "Update all DB schemas".

[ Since you already made changes to that table, you might need to undo your
change(s) first. ]

Alternatively there is a command line script horde-db-migrate (see
vendor/horde/bin folder) that can be used for upgrading the database
schemas. Call it without any parameters to upgrade schemas for all
installed applications and components, or specify the application,
component, or migration/ directory that you want to upgrade individually.


On Sun, Feb 1, 2026 at 5:30 PM <R.J.Baart at prompt.nl> wrote:

> Just found the problem:
>
> modify the table:
>
> alter table turba_objects add column object_photoorig bytea ;
>
>
> Op 1-2-2026 om 22:48 schreef R.J.Baart at Prompt.nl:
> > Finally almost everything works. I will publish the way I installed
> > Horde6 + nginx. It was far from easy. Every time there was something
> > else that was a problem.
> >
> > For now I have Horde working with Dovecot, nginx and Postfix on a
> > Debian Trixie system. Also cCalendar, tasks, mail, contacts. Also with
> > active sync (on Android) en Dav calendars.
> >
> > One problem though, I can't see the details of a contact in detail. I
> > see the contact list but not the detail of a contact. Database error:
> >
> > ERROR:  column "object_photoorig" does not exist at character 300
> > 2026-02-01 22:36:36.650 CET [1031446] dba_horde6 at horde6 STATEMENT:
> > SELECT object_id, owner_id, object_type, object_members, object_uid,
> > object_firstname, object_lastname, object_middlenames,
> > object_nameprefix, object_namesuffix, object_alias,
> > object_yomifirstname, object_yomilastname, object_bday,
> > object_anniversary, object_spouse, object_photo, object_phototype,
> > object_photoorig, object_homestreet, object_homepob, object_homecity,
> > object_homeprovince, object_homepostalcode, object_homecountry,
> > object_workstreet, object_workpob, object_workcity,
> > object_workprovince, object_workpostalcode, object_workcountry,
> > object_otherstreet, object_otherpob, object_othercity,
> > object_otherprovince, object_otherpostalcode, object_othercountry,
> > object_department, object_manager, object_assistant, object_tz,
> > object_email, object_homephone, object_homephone2, object_homefax,
> > object_workphone, object_workphone2, object_cellphone,
> > object_carphone, object_radiophone, object_companyphone,
> > object_assistantphone, object_fax, object_pager, object_title,
> > object_role, object_company, object_logo, object_logotype,
> > object_notes, object_url, object_freebusyurl, object_pgppublickey,
> > object_smimepublickey, object_imaddress, object_imaddress2,
> > object_imaddress3 FROM turba_objects WHERE object_id IN ('<some id>')
> > AND owner_id = '<email address>'
> >
> > Someone?
> >
> > Op 26-1-2026 om 10:14 schreef R.J.Baart at prompt.nl:
> >> Op 25-1-2026 om 23:50 schreef Brent:
> >>>
> >>> Ensure that your <installdir>/horde/* is writable by the web user,
> >>> typically apache. If it isn't, then obviously apache can't write the
> >>> conf.php file to disk.
> >>>
> >> yes it is. I realize I wasn't clear: I can change the conf.php from
> >> web interface only if I does not change the database settings. In the
> >> beginning I think I made an error with file ownership. At some point
> >> I did "chown -R www-data:www-data" for the whole filestructure. I did
> >> the first installation however as root.
> >>>
> >>> I have dovecot 2.4.1 and use it to auth Horde 6.
> >>>
> >> Same Dovecot version here. But I see no emails. Dovecot is working. I
> >> have a working Thunderbird client on distance and did a telnet test
> >> local.
> >>>
> >>> Webroot dir setup in apache would be <install-dir>/web...not just
> >>> <installdir>.
> >>>
> >> so have I
> >>>
> >>>
> >>> So, I have /var/www/horde as my install dir, but my web root is
> >>> /var/www/horde/web
> >>>
> >> me too
> >>>
> >>>
> >>> This is a little different than H5.
> >>>
> >>> The REAL conf.php is in:
> >>>
> >>> <install-dir>/var/config/horde/conf.php
> >>>
> >>> There will be a symlink to this in vendor...
> >>>
> >>> <install-dir>/vendor/horde/horde/config/conf.php  ->
> >>> <install-dir>var/config/horde/conf.php
> >>>
> >> <install-dir>/vendor/horde/horde/config/conf.php was missing. I think
> >> after the update procedure following the instructions from Ralf Lang
> >> - see below. However <install-dir>var/config/horde/conf.php is there.
> >> The error "Please create...." is coming from the index.php. The test
> >> in this file does not work correctly in my setup (after the Ralf Lang
> >> instructions). If I bypass this check and go directly to
> >> horde/index.php I get the login screen.
> >>
> >> Even after adding the link the home page does not work.
> >>
> >> ls -l  horde/vendor/horde/horde/config/conf.php
> >> lrwxrwxrwx 1 www-data www-data 63 Jan 25 17:19
> >> horde/vendor/horde/horde/config/conf.php ->
> >> /home/websites/webmail.tiswe.fr/horde/var/config/horde/conf.php
> >>
> >>>
> >>> $ ls -l  /var/www/horde/vendor/horde/horde/config/conf.php
> >>> lrwxrwxrwx 1 apache apache 40 Jul  3  2025
> >>> /var/www/horde/vendor/horde/horde/config/conf.php ->
> >>> /var/www/horde/var/config/horde/conf.php
> >>>
> >>> Here's the relevant sql stuff for my working config in conf.php:
> >>>
> >>> $conf['sql']['username'] = 'hordeuser';
> >>> $conf['sql']['password'] = '****pass***';
> >>> $conf['sql']['socket'] = 'localhost';
> >>> $conf['sql']['port'] = 5432;
> >>> $conf['sql']['protocol'] = 'unix';
> >>> $conf['sql']['database'] = 'horde6';
> >>> $conf['sql']['charset'] = 'utf-8';
> >>> $conf['sql']['splitread'] = false;
> >>> $conf['sql']['logqueries'] = false;
> >>> $conf['sql']['phptype'] = 'pgsql';
> >>>
> >> I have some differences:
> >>
> >> $conf['sql']['username'] = '<dba user>';
> >> $conf['sql']['password'] = '******';
> >> $conf['sql']['hostspec'] = 'localhost';
> >> $conf['sql']['protocol'] = 'tcp';
> >> $conf['sql']['database'] = 'horde6';
> >> $conf['sql']['charset'] = 'utf-8';
> >> $conf['sql']['splitread'] = false;
> >> $conf['sql']['logqueries'] = false;
> >> $conf['sql']['phptype'] = 'pgsql';
> >>
> >> But my connection to the database works.
> >>
> >>>
> >>>
> >>> brent
> >>>
> >>> Quoting R.J.Baart at prompt.nl:
> >>>
> >>>> All in all, I find it rather difficult. One of the problems I have
> >>>> is that the configuration horde/conf.php cannot be saved because
> >>>> every time I try, I get an error saying that the database details
> >>>> are incorrect, and then the error mentioned in my previous email
> >>>> appears in the logging.
> >>>>
> >>>> Not finding a solution for this problem, I decided to write the
> >>>> configuration myself in horde/conf.php. That works, and I then have
> >>>> a connection to the database. The database is also filled with
> >>>> tables, so that's fine.
> >>>>
> >>>> I can now also log in, so authentication via imp works.
> >>>>     $conf[‘auth’][‘params’][‘app’] = ‘imp’;
> >>>>     $conf[‘auth’][‘driver’] = ‘application’;
> >>>> After the login screen looks pretty good, like with Horde 5.
> >>>>
> >>>> But still problems.
> >>>>
> >>>> - error writing conf.php it is not practical at all.
> >>>>
> >>>> - I can't read my email. Dovecot is the imap server. In Horde 5
> >>>> that worked immediately, now it doesn't. I don't see why. Nog
> >>>> errors in the logfiles, on screen "error when communicating with
> >>>> the server". I suppose it is something between dovecot (2.4) and
> >>>> Horde 6.
> >>>>
> >>>> Desperate I followed some update procedures from Ralf Lang:
> >>>>
> >>>>     # Allow unreleased development code from branch
> >>>>     composer config minimum-stability dev
> >>>>     # Prefer released alpha, beta or stable code over less stable
> >>>> versions
> >>>>     composer config prefer-stable true
> >>>>     # Install the new version of the installer plugin
> >>>>     composer require horde/horde-installer-plugin "^3 ||
> >>>> dev-FRAMEWORK_6_0"
> >>>>     # Update everything according to environment set above
> >>>>     composer update
> >>>>     # Transition from symlink mode to proxy mode and rewrite
> >>>> registry files
> >>>>     composer horde:reconfigure --force
> >>>>
> >>>> That resulted in some updates but not the result I hoped for. In
> >>>> ended that the login screen says:
> >>>>
> >>>>     Please create a /<website
> >>>> directory>/horde/var/config/horde/conf.php file and then run
> >>>> 'composer horde-reconfigure' to activate Horde
> >>>>
> >>>> The file can't be created, it exists already and is read if login
> >>>> using the link
> >>>>
> >>>>     https://<myserver>/horde/index.php
> >>>>
> >>>> This way I skip the error. But still not see my mail.
> >>>>
> >>>> I think I'm close but pff....
> >>>>
> >>>> Op 25-1-2026 om 19:15 schreef Brent:
> >>>>
> >>>>>  I'd type in the port used for your database, just to be complete.
> >>>>> I had not setup postgresql before, so I just did it and it works
> >>>>> for me. A few things to test/check:
> >>>>>
> >>>>> Enable the test.php and ensure that you have all necessary php
> >>>>> modules installed, key would be php-pgsql
> >>>>>
> >>>>> Verify that you can connect to this db from the shell using this
> >>>>> user AND create a table.
> >>>>>
> >>>>> $ psql -h localhost -p 5432 -U mydatabase_user mydatabase_name
> >>>>> (type in password)
> >>>>>
> >>>>> If that also works, then be sure you can create a table as that user:
> >>>>>
> >>>>> mydatabase_name->   create table test123 (testname varchar(255)  );
> >>>>>
> >>>>> If that works, then the database is operational.
> >>>>>
> >>>>> Next up would be the verify that you have the right stuff
> >>>>> installed via composer. Critical could be the DB package:
> >>>>>
> >>>>> $ sudo -u apache composer show | grep -i db
> >>>>> horde/db                     3.0.0alpha6   Database abstraction
> >>>>> library
> >>>>>
> >>>>> See if any of that helps you.
> >>>>>
> >>>>> Good luck!
> >>>>>
> >>>>> brent
> >>>>>
> >>>>> Quoting Ruud Baart <r.j.baart at prompt.nl>:
> >>>>>
> >>>>>> Hi,
> >>>>>>
> >>>>>> Hope anyone can help.
> >>>>>>
> >>>>>> Thanks to Brent's brief instructions, I have now made
> >>>>>> considerable progress with the installation of Horde 6 on my new
> >>>>>> Debian trixie server (PHP8.4, Posgresql 17, nginx). I can now
> >>>>>> configure the server. It's pretty similar to Horde 5, so I think
> >>>>>> I understand it reasonably well. However, I'm going around in
> >>>>>> circles because I'm getting an error message that I can't resolve.
> >>>>>>
> >>>>>> The message is:
> >>>>>>
> >>>>>>     Undefined variable $results [pid 329592 on line 1242 of "/<my
> >>>>>> webroot
> >>>>>>
> dir>/horde/vendor/horde/db/lib/Horde/Db/Adapter/Postgresql/Schema.php"]
> >>>>>>
> >>>>>> This message appears when I configure the “SQL Database Settings”:
> >>>>>>
> >>>>>> $conf[sql][phptype] PostgreSQL
> >>>>>>
> >>>>>> $conf[sql][username] mydatabase_user
> >>>>>>
> >>>>>> $conf[sql][password] ****
> >>>>>>
> >>>>>> $conf[sql][protocol] tcp/ip
> >>>>>>
> >>>>>> $conf[sql][hostspec] localhost
> >>>>>>
> >>>>>> $conf[sql][port] <empty>
> >>>>>>
> >>>>>> $conf[sql][database] mydatabase_name
> >>>>>>
> >>>>>> $conf[sql][charset] utf-8
> >>>>>>
> >>>>>> $conf[sql][splitread] Disabled
> >>>>>>
> >>>>>> Nothing fancy there, I think.
> >>>>>>
> >>>>>> --
> >>>>>> Horde mailing listFrequently Asked Questions:
> >>>>>> http://horde.org/faq/To unsubscribe, mail:
> >>>>>> horde-unsubscribe at lists.horde.org
> >>>>>>
> >>>>
>
> --
> Horde mailing list
> Frequently Asked Questions: http://horde.org/faq/
> To unsubscribe, mail: horde-unsubscribe at lists.horde.org
>


More information about the horde mailing list