http://bugzilla.wpkg.org/show_bug.cgi?id=117 --- Comment #7 from Rainer Meier <r.meier at wpkg.org> 2008-05-09 16:46:00 --- I clearly have to state here that a dependency clearly means to me that a package really does not work at all if the package it depends upon is not installed. For example I use dependencies on a package called "shortcut" which itself has very low priority as it is not a user program important to be on the system for users. However the applications which depend on it will fail to install (or at least to create the shortcuts) if this program is not installed. So for me this is a dependency. Each time an application which depends on "shortcut" is installed it makes sure "shortcut" is actually installed properly (before). If it wouldn't do that then I could also simply omit the dependency. However I would have to add both packages to the profile then. In my eyes you're not talking about real dependencies. You're talking about includes! So you say that if a package is installed another one is automatically pulled to the profile (regarding its priority). There is anyway an ongoing discussion for "chained installations" (see Bug 111). To me it looks like your goal would simply be to "pull" some packages to the profile which are not actually add to the profile. Each package should be able to pull some other packages while the install order completely depends on the package priorities. To allow this I would clearly add a new XML node like <include... />. I am absolutely against re-defining the meaning of dependencies as I totally disagree that dependencies should be related in any way to priorities. In general I don't like priorities at all (almost all my packages have priority 50). Why? It's quite simple - if one uses a proper dependency management it would even be possible to install all packages in parallel. But this only works if you know all the dependencies between them because some of them have to wait until others are finished (no matter what their priority is). Hava a look at Unix init scripts. Older systems are based on priorities which are controlled by the file name. This does not allow to start multiple scripts in paralle. All newer systems (look at Gentoo or BSD) define dependencies between modules and allow to run them independently. This works perfectly if dependencies are inserted properly. OK, I have to admit that parallel package installation is not so easy (Windows installer does not work in parallel) but you get the idea. Bug 111 goes into a slightly different directory. It asks for chained installation. Therefore the algorithm using dependencies, includes and chained installations would be as follows (simplified): - add included packages of all applying packages to the profile - sort packages - start installation - check for dependencies, install them if required - install actual package - run chained packages in order Again, cheined packages will not regard priorities as a package with very high priority will also install a chained package even with lowest priority before proceeding to the next package. Again, dependencies are called dependencies since the package specifying the dependency really needs the specified package to run or even to install. So I will not change that as it will potentially break a lot of systems. However as I wrote I could probably offer a kind of <include /> syntax to add a specified package to the profile on run-time while taking care of the priorities. -- Configure bugmail: http://bugzilla.wpkg.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug. |