[dev] Installation Thoughts

Jan Schneider jan at horde.org
Fri Oct 18 19:39:53 UTC 2013


Zitat von Michael M Slusarz <slusarz at horde.org>:

> Quoting Jan Schneider <jan at horde.org>:
>
>> Zitat von Mathieu Parent <math.parent at gmail.com>:
>>
>>> Hi Michael,
>>>
>>> 2013/10/17 Michael M Slusarz <slusarz at horde.org>:
>>>> Going through our installation process on a Debian VM  
>>>> (specifically using a
>>>> distro that has given us issues), and here's what I think so far.  
>>>>  (This is
>>>> simply on the PEAR install process - this is independent of
>>>> configuring/running any of our code.)
>>>
>>> (with my Debian packager hat).
>>>
>>> Shouldn't the recommended way to install Horde on distributions be
>>> using the native package manager?
>>
>> At least for those distros that keep the horde packages up-to-date,  
>> yes, probably. But that doesn't mean that we shouldn't make the  
>> pear installation easier, even on package-supported distros.
>
> And from our perspective, we have no control what happens  
> downstream.  So we have to provide an installation path that is  
> easy-to-use under the assumption that this is the only way people  
> are going to install.
>
>>> For Debian jessie, this can be done with:
>>> apt-get install php-horde-webmail # for example
>>>
>>> Complete instructions (including Debian 7) are at:  
>>> https://wiki.debian.org/Horde
>>>
>>> This provide better upgrade mechanism as well as proper dependency
>>> tracking (PEAR lacks in those both areas, and Composer is not really
>>> better).
>>
>> Agreed.
>
> Can't speak for Composer, since I don't have too much experience  
> with it.  But putting together the proof of concept script last  
> night in a few hours would never have happened without it.  I was  
> stressing over how I was going to use PEAR to install the necessary  
> Horde libs for the installer script in a temp directory to package  
> via phar.  When I used composer instead, I had in running in  
> probably 5 minutes.

Correct, it's a nice tool for developers and deployments, but horrible  
for distribution.

>>>> * Two immediate fatal flaws I see.  beta/alpha packages are NEVER  
>>>> installed
>>>> and packages from foreign channels are NEVER installed.  At least with the
>>>> default PEAR settings on Debian 7.
>>>
>>> This seems a reasonable default.
>>>
>>> [...]
>>>>
>>>> This can be fixed by doing a force install (-f).  But I have to  
>>>> admit that,
>>>> as someone familiar with PEAR/PECL, this is not apparent to me at  
>>>> all.  For
>>>> someone -- i.e. pretty much every one else -- they are going to think that
>>>> horde_lz4 is properly installed on their system.
>>>
>>> Yes. PEAR is broken in handling PECL packages.
>>>
>>>> Takeaways from all this:
>>>> 1. Not saying we should remove -B, but we have to workaround this.
>>>
>>> Why don't you simply remove -B?
>>
>> Because it requires build permissions and environments and  
>> dependencies like external libraries that cannot simply be pulled  
>> in. Installing without -B is explicitly documented by the way.
>
> To me it's simply the fact that you are potentially building a whole  
> mess of modules that a) you are never going to use or b) won't  
> compile on your system, which I believe is Jan's concern.
>
> The issue is that certain PECL features - like horde_lz4 - are  
> entirely self-contained, so there's no reason NOT to build them.
>
> Hiding the install process behind a script allows us to force  
> install things like horde_lz4 without the confusion/complexity of  
> trying to explain to a novice user in an INSTALL file why they  
> should do it (and why they should do it for a small selection of  
> packages, but not all packages).
>
> michael
>
> ___________________________________
> Michael Slusarz [slusarz at horde.org]


-- 
Jan Schneider
The Horde Project
http://www.horde.org/



More information about the dev mailing list