[horde] git install help

Simon B simon.buongiorno at gmail.com
Fri Jan 3 17:06:14 UTC 2020


On Fri, 3 Jan 2020 at 16:48, Michael J Rubinsky <mrubinsk at horde.org> wrote:
>
>
> Quoting Simon B <simon.buongiorno at gmail.com>:
>
> > On Thu, 2 Jan 2020 at 19:34, Michael J Rubinsky <mrubinsk at horde.org> wrote:
> >>
> >>
> >> Quoting Simon B <simon.buongiorno at gmail.com>:
> >>
> >> > On Wed, 1 Jan 2020 at 15:54, Simon B <simon.buongiorno at gmail.com> wrote:
> >> >>
> >> >> On Tue, 31 Dec 2019 at 20:46, Michael J Rubinsky
> >> <mrubinsk at horde.org> wrote:
> >> >> >
> >> >> >
> >> >> > Quoting Simon B <simon.buongiorno at gmail.com>:
> >> >> >
> >> >> > > On Fri, 27 Dec 2019 at 16:14, Simon B
> >> >> <simon.buongiorno at gmail.com> wrote:
> >> >> > >>
> >> >> > >> On Fri, 27 Dec 2019 at 13:12, Arjen de Korte
> >> >> > >> <build+horde at de-korte.org> wrote:
> >> >> > >> >
> >> >> > >> > Citeren Simon B <simon.buongiorno at gmail.com>:
> >> >> > >> >
> >> >> > >> > > Hi
> >> >> > >> > >
> >> >> > >> > > It's been nearly 2 years, since the git repository was
> >> >> split, and I am
> >> >> > >> > > finally getting to trying to update my configuration...
> >> >> > >> > >
> >> >> > >> > > Following these instructions...
> >> >> > >> > >
> >> >> > >> > > https://github.com/horde/git-tools
> >> >> > >> > >
> >> >> > >> > > I did this:
> >> >> > >> > > cp config/conf.php.dist config/conf.php
> >> >> > >> > >
> >> >> > >> > > I did this:
> >> >> > >> > >  10 // Target directory for git checkouts.
> >> >> > >> > >  11 $conf['git_base'] = '/my/current/5.2/git/clone/';
> >> >> > >> > >  12
> >> >> > >> > >  13 // Target directory for installation, i.e. the webroot .
> >> >> > >> > >  14 $conf['web_base'] = '/my/current/git/webroot';
> >> >> > >> > >  15
> >> >> > >> > >  16 // Group name to use for the static directory. Should
> >> >> be the web
> >> >> > >> > > server's
> >> >> > >> > >  17 // group.
> >> >> > >> > >  18 $conf['static_group'] = 'www-data';
> >> >> > >> > >
> >> >> > >> > > I tried to do this:
> >> >> > >> > > horde-git-tools --help
> >> >> > >> > >
> >> >> > >> > > but I got this:
> >> >> > >> > > root at mail:/ /my/current/5.2/git/clone/horde-git-tools#
> >> >> > >> bin/horde-git-tools
> >> >> > >> > > --help
> >> >> > >> > > You need to run "composer install" first.
> >> >> > >> > > For more information on composer see https://getcomposer.org/.
> >> >> > >> > >
> >> >> > >> > > So, then I did this:
> >> >> > >> > > php -r "copy('https://getcomposer.org/installer',
> >> >> > >> 'composer-setup.php');"
> >> >> > >> > > php -r "if (hash_file('sha384', 'composer-setup.php') ===
> >> >> > >> > >
> >> >> > >>
> >> >>
> >> 'baf1608c33254d00611ac1705c1d9958c817a1a33bce370c0595974b342601bd80b92a3f46067da89e3b06bff421f182')
> >> >> > >> > > { echo 'Installer verified'; } else { echo 'Installer corrupt';
> >> >> > >> > > unlink('composer-setup.php'); } echo PHP_EOL;" php
> >> >> > >> composer-setup.php php
> >> >> > >> > > -r "unlink('composer-setup.php');"
> >> >> > >> > >
> >> >> > >> > > But I still get this:
> >> >> > >> > > root at mail:/ /my/current/5.2/git/clone/horde-git-tools#
> >> >> > >> bin/horde-git-tools
> >> >> > >> > > --help
> >> >> > >> > > You need to run "composer install" first.
> >> >> > >> > > For more information on composer see https://getcomposer.org/.
> >> >> > >> > >
> >> >> > >> > > Is there a more step-by-step tutorial?
> >> >> > >> >
> >> >> > >> > If you need a step-by-step tutorial, I'd recommend to
> >> stick with the
> >> >> > >> > versions from the pear.horde.org repository.
> >> >> > >> >
> >> >> > >> > I have one of those - as you answered in the other thread.   And
> >> >> > >> I don't intend to decommission it - but there are reasons it is not
> >> >> > >> working for me.
> >> >> > >>
> >> >> > >> I actually managed to make some progress - for the archives, I
> >> >> had to...
> >> >> > >> add some directories and chown them to the webserver user (chown
> >> >> > >> www-data:www-data /var/www/.composer/cache/)
> >> >> > >> run the command as: "php composer.phar install" instead of just
> >> >> > >> "composer.phar install" using the www-data user
> >> >> > >> upgrade PHP to > 5.5.0
> >> >> > >>
> >> >> > >> However, now I have this error...
> >> >> > >> $ php composer.phar install
> >> >> > >> Loading composer repositories with package information
> >> >> > >> Installing dependencies (including require-dev) from lock file
> >> >> > >> Package operations: 66 installs, 0 updates, 0 removals
> >> >> > >>
> >> >> > >>
> >> >> > >>   [RuntimeException]
> >> >> > >>   /my/current/5.2/git/clone/horde-git-tools/vendor does not
> >> exist and
> >> >> > >> could not be created.
> >> >> > >>
> >> >> > >> Apparently, this is because www-data needs rw access to
> >> >> > >> horde-git-tools/ - so...
> >> >> > >> chmod -R 774 /usr/share/git-horde5/horde-git-tools/
> >> >> > >>
> >> >> > >> at least for now...
> >> >> > >>
> >> >> > >> That directory is filling up with 66 packages, but what the
> >> next steps
> >> >> > >> are, I have no idea.
> >> >> > >>
> >> >> > >>
> >> >> > >> Overall, I think more people using the git clone is better for the
> >> >> > >> project, because it gives the developers more information and better
> >> >> > >> support.   The previous way of cloning the git repository - AND
> >> >> > >> updating it! - was relatively simple.  The added complexity seems to
> >> >> > >> be caused by assumed competence in other tools (composer) -
> >> which can
> >> >> > >> be avoided by better documentation, rather any other cause.
> >> >> > >
> >> >> > > I restarted and things were going to going better until this error...
> >> >> > >
> >> >> > > root at mail:/usr/share/2020-git-horde/horde-git-tools#
> >> >> > > bin/horde-git-tools git clone
> >> >> > > [  INFO  ] Listing repositories from
> >> >> https://api.github.com/orgs/horde/repos
> >> >> > > PHP Fatal error:  Uncaught exception 'Horde_Http_Exception' with
> >> >> > > message 'name lookup timed out' in
> >> >> >
> >> >> > This sounds like a DNS lookup timeout.
> >> >>
> >> >> Hi Michael,
> >> >>
> >> >> I thought that too - but...
> >> >>
> >> >> root at mail:~# nslookup api.github.com
> >> >> Server:         8.8.8.8
> >> >> Address:        8.8.8.8#53
> >> >>
> >> >> Non-authoritative answer:
> >> >> Name:   api.github.com
> >> >> Address: 140.82.118.5
> >> >>
> >> >> root at mail:~# nslookup github.com
> >> >> Server:         8.8.8.8
> >> >> Address:        8.8.8.8#53
> >> >>
> >> >> Non-authoritative answer:
> >> >> Name:   github.com
> >> >> Address: 140.82.118.3
> >> >>
> >> >> > FWIW I just ran through a new install of git-tools without and issues
> >> >> > following the instructions at https://github.com/horde/git-tools
> >> >
> >> > Hi Michael,
> >> >
> >> > In the above mentioned instructions...
> >> >
> >> > ..."Full directory paths will be needed in
> >> > horde-git/horde/config/registry.php due to the symlinks. The easiest
> >> > way to setup full paths is to set the $app_fileroot parameter in this
> >> > file."
> >> >
> >> > Do you mean
> >> > root at mail:/usr/share/2020-git-horde# find .  -name "registry.php" -print
> >> > ./base/config/registry.php
> >>
> >> Yes, it's talking about the config/registry.php file. In that file
> >> header are similar instructions. Actually, you'll want to make the
> >> edit in registry.local.php file in that same directory.
> >
> > the webpage needs need to change from "horde/config" to "base/config: then :)
>
> Fixed, should be live soonish. Thanks for the heads up, that was
> written before we renamed the horde module.
>
>
> > I have a registry.local.php containing
> >
> > $app_fileroot = '/usr/share/horde-beta/';
> > $app_webroot = '..';
> > #$app_webroot = '/';
>
> These should be *absolute* paths, not relative. If you are serving
> horde directly from the webroot, i.e., www.example.com, $app_webroot
> should be "/". If you are serving it from a directory within the web
> server's webroot, i.e., www.example.com/horde, it should be "/horde".

That was how I got it working in the previous git install :)  I've
changed it back to /, since all the URLs should appear as
webmail.example.com/imp etc.

> > /usr/share/horde-beta/ is the folder from which Apache serves the
> > files and contain the symlinks.
> > It's copied from the previous registry.local.php I had/have.
> >
> >> > Is there anyway to preserve any modified *.local.php files (from the
> >> > previous git clone) in the web-accessible directory specified in
> >> > git-tools/config/conf.php?
> >>
> >> Not exactly sure what you are asking. Those files shouldn't be
> >> overwritten with updates/checkouts... Oh, unless these are files that
> >> only exist in the web directory and are not symlinked? The tools
> >> script will symlink the config directories, so you'll have to copy any
> >> existing local config files into your checkout.
> >
> > So, my previous git clone was in /usr/share/git-horde5
> >
> > It obviously contains a ton of *.local.php modifications.
> >
> > Originally my plan was to overright /usr/share/git-horde5 with new git
> > clone, so that the *.local.php would stay in place.   I couldn't get
> > that to work, hence the new git clone is in
> > /usr/share/20202-git-horde.  So, the question is largely redundant, I
> > can manually copy them over.
> >
> > Currently I am facing a white page of death, having copied over
> > horde/config/conf.php and horde/config/registry.local.php into the
> > base/config directory.
>
> Anything in the webserver/horde/error logs?
>
> Can you navigate *directly* to any page within the install?

Sometimes.  Sometimes not.  I haven't figured out a pattern.  Since
sending that, I managed to get in and update all the DB schemas and
most of the critical application configs...

The annoying thing is, non-admin users seem to have no issue.  The
page loads pretty much straight away and the whole application suites
functions as one would expect.

The webserver error logs have this:
[Fri Jan 03 14:19:58 2020] [error] [client my.ip.adr.ess] PHP Strict
Standards:  Declaration of Horde_Form_Type_assign::init() should be
compatible with Horde_Form_Type::init() in
/usr/share/2020-git-horde/Form/lib/Horde/Form/Type.php on line 3600,
referer: https://webmail.example.net/admin/config/index.php?action=schema
[Fri Jan 03 14:19:58 2020] [error] [client my.ip.adr.ess] PHP Strict
Standards:  Declaration of Horde_Form_Type_assign::getValues() should
be compatible with Horde_Form_Type::getValues() in
/usr/share/2020-git-horde/Form/lib/Horde/Form/Type.php on line 3600,
referer: https://webmail.example.net/admin/config/index.php?action=schema
[Fri Jan 03 14:19:58 2020] [error] [client my.ip.adr.ess] PHP Strict
Standards:  Declaration of Horde_Form_Type_dblookup::init() should be
compatible with Horde_Form_Type_enum::init($values, $prompt = NULL) in
/usr/share/2020-git-horde/Form/lib/Horde/Form/Type.php on line 3751,
referer: https://webmail.example.net/admin/config/index.php?action=schema
[Fri Jan 03 14:19:58 2020] [error] [client my.ip.adr.ess] PHP Strict
Standards:  Declaration of Horde_Form_Type_figlet::init() should be
compatible with Horde_Form_Type::init() in
/usr/share/2020-git-horde/Form/lib/Horde/Form/Type.php on line 3804,
referer: https://webmail.example.net/admin/config/index.php?action=schema
[Fri Jan 03 14:19:58 2020] [error] [client my.ip.adr.ess] PHP Strict
Standards:  Declaration of Horde_Form_Type_invalid::init() should be
compatible with Horde_Form_Type::init() in
/usr/share/2020-git-horde/Form/lib/Horde/Form/Type.php on line 3873,
referer: https://webmail.example.net/admin/config/index.php?action=schema

All the users were getting this:
 25653 2020-01-03T14:50:51+00:00 ERR: HORDE-BETA [imp] IMP is marked
as authenticated, but no credentials can be found in the session. [pid
17154 on line 622 of "/usr/share/2020-git-horde/imp/lib/  25653
Imap.php"]

but it seems now to only be my admin user...  which additionally is
generating...

[Fri Jan 03 16:58:49 2020] [error] [client my.ip.adr.ess] client
denied by server configuration: /usr/share/horde-beta/config

==> /var/log/apache2/logs/lydiard-webmail-access_log <==
my.ip.adr.ess - - [03/Jan/2020:16:58:49 +0000] "GET /config HTTP/1.1" 403 7277
my.ip.adr.ess - - [03/Jan/2020:16:59:21 +0000] "GET /imp HTTP/1.1" 301 7336
my.ip.adr.ess - - [03/Jan/2020:16:59:42 +0000] "GET /services/portal
HTTP/1.1" 301 7356

(quite why Apache is not logging in UTC, I'll open a ticket for as
soon as Whups is working...)

Thanks

Simon


More information about the horde mailing list