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
[email protected] <mailto:[email protected]>





_______________________________________________
Owncloud mailing list
[email protected]
https://mail.kde.org/mailman/listinfo/owncloud


_______________________________________________
Owncloud mailing list
[email protected]
https://mail.kde.org/mailman/listinfo/owncloud

Reply via email to