[Owncloud] App Requirements

Klaas Freitag freitag at owncloud.com
Thu Apr 19 14:52:33 UTC 2012


On 18.04.2012 23:25, Florian Hülsmann wrote:
> Hey Tom,
>
> actually I wrote a proposal about dependencies of apps (mainly apps
> depending on other apps) to this mailing list on 8th of april, hoping to
> start a constructive discussion about it...
>
> I thought about something like this:
>
> <info>
> <!-- app info -->
> <requires id="required_app">
> <!-- to define specific versions of required_app, optional -->
> <min>0.2</min> <!-- optional -->
> <max>0.5</max> <!-- optional -->
> <version>0.15</version> <!-- a specific version; optional -->
> <version>0.16</version> <!-- optional -->
> </requires>
> <requires id="another_app" />
>
> <conflicts id="evil_app">
> <max>0.3</max> <!-- same version properties as above -->
> </conflicts>
> <!-- ... -->
> </info>
I like this for inter app deps.

> But we could make this even possible for PHP libraries etc.
Yes. Well. I know most of you don't want to hear and face it, but we're 
talking about to reimplement a dependency system of software packages. 
There are already systems that cover that. See every Linux distro.

I really suggest to stay away from reimplementing that. Its hell.

I agree we need something for the apps. But for all system dependant 
stuff such as php extensions and programs, I would try to reuse the 
underlying package system until we have a huge coding community. 
Currently we will loose ourselfes.

Maybe we can and should maintain a list of packages per distro times 
distro-version which package names are needed for the app, together with 
a function that is provided by the module. If a call to that fails, we 
can say its not there.
Than we could either install (if the user is allowed which is off by 
default probably) but at least we can give a good error message to the 
one who installs.

For the beginning, I would leave it with a "This app requires the PHP GD 
module. Please make sure to install it."

I'd rather suggest to work on getting also the apps properly packaged 
for the distros so that problem goes away naturally.

Klaas

> Am 18.04.2012 23:17, schrieb Tom Needham:
>> Hi All,
>>
>> Had an idea of how to implement requirements when installing apps. For
>> example, when the gallery is installed, it need to check if gd is
>> installed, rather than just giving an error. So I though about adding a
>> <requirements> section to the apps info.xml. In there we can list
>> <functions> <classes> and <extensions> that we can check exists when
>> enabling the app.
>>
>> We can also do a check when we do the overall owncloud install to check
>> that the default enabled apps have all their requirements met.
>>
>> What do you think, is this flexible enough for apps?
>>
>> Thanks,
>> Tom
>>
>> Tom Needham
>> tom at owncloud.com <mailto:tom at owncloud.com>
>>
>>
>>
>>
>>
>> _______________________________________________
>> Owncloud mailing list
>> Owncloud at kde.org
>> https://mail.kde.org/mailman/listinfo/owncloud
>




More information about the Owncloud mailing list