Mailinglist Archive: zypp-devel (53 mails)
| < Previous | Next > |
Re: [zypp-devel] package dependency problem with zypper or yast
- From: Ralf Becker <rb@xxxxxxxxxx>
- Date: Fri, 26 Jun 2009 10:37:53 +0200
- Message-id: <4A4488E1.6050305@xxxxxxxxxx>
Hi Michael,
thanks for your help :-)
We were not aware of a (circular) dependency from egroupware-epl-core to
egroupware-epl, as this was never explicitly specified in our spec file.
It was caused by a compatibility/workaround for suse: to be able to
start cli scripts with #!/usr/bin/php we created a symlink from
/usr/bin/php --> /usr/bin/php5 and that was created in egroupware-epl
and only implicitly required by rpm analysing the script interpreter.
Anyway thanks for pointing in the right direction :-)
Ralf
Michael Schroeder schrieb:
--
Ralf Becker
Director Software Development
Stylite GmbH
[open style of IT]
Morschheimer Strasse 15
67292 Kirchheimbolanden
fon +49 (0) 6352 70629-0
fax +49 (0) 6352 70629-30
mailto: rb@xxxxxxxxxx
www.stylite.de
www.egroupware.org
________________________________________________
Geschäftsführer Andre Keller, Gudrun Müller,
Nigel Vickers und Ralf Becker
Registergericht Kaiserslautern HRB 30575
Umsatzsteuer-Id / VAT-Id: DE214280951
--
To unsubscribe, e-mail: zypp-devel+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: zypp-devel+help@xxxxxxxxxxxx
thanks for your help :-)
We were not aware of a (circular) dependency from egroupware-epl-core to
egroupware-epl, as this was never explicitly specified in our spec file.
It was caused by a compatibility/workaround for suse: to be able to
start cli scripts with #!/usr/bin/php we created a symlink from
/usr/bin/php --> /usr/bin/php5 and that was created in egroupware-epl
and only implicitly required by rpm analysing the script interpreter.
Anyway thanks for pointing in the right direction :-)
Ralf
Michael Schroeder schrieb:
On Thu, Jun 25, 2009 at 12:42:11PM +0200, Ralf Becker wrote:
I'm building rpm packages for EGroupware (www.egroupware.org).
They have a "metapackage" requiring the default modules and then
executing a post_install script (create database, install EGroupware and
all modules via a comand line client). All modules depend of a core
module, which is also required by the metapackage and which includes the
post-install script itself. (That way you can use the metapackage for
convenience, but you can also install the single packages, if you want to).
What I expect would be the following behaviour:
1. Install required packages (including required core package)
2. Install metapackage
3. Execute post install of metapackage
(That's eg. the behaviour of yum or aptitude).
Looking at the solver testcase I see some cycles:
cycle: ----> egroupware-epl-9.1.20090618-41.1.noarch
----> egroupware-epl-registration-9.1.20090618-41.1.noarch
####> egroupware-epl-core-9.1.20090618-41.1.noarch
---->
cycle: ----> egroupware-epl-9.1.20090618-41.1.noarch
----> egroupware-epl-calendar-9.1.20090618-41.1.noarch
####> egroupware-epl-core-9.1.20090618-41.1.noarch
---->
cycle: ----> egroupware-epl-9.1.20090618-41.1.noarch
----> egroupware-epl-manual-9.1.20090618-41.1.noarch
####> egroupware-epl-wiki-9.1.20090618-41.1.noarch
----> egroupware-epl-core-9.1.20090618-41.1.noarch
---->
cycle: ----> egroupware-epl-9.1.20090618-41.1.noarch
----> egroupware-epl-manual-9.1.20090618-41.1.noarch
####> egroupware-epl-core-9.1.20090618-41.1.noarch
---->
cycle: ----> egroupware-epl-9.1.20090618-41.1.noarch
----> egroupware-epl-bookmarks-9.1.20090618-41.1.noarch
####> egroupware-epl-core-9.1.20090618-41.1.noarch
---->
cycle: ----> egroupware-epl-9.1.20090618-41.1.noarch
----> egroupware-epl-tracker-9.1.20090618-41.1.noarch
####> egroupware-epl-core-9.1.20090618-41.1.noarch
---->
CYCLE: ----> egroupware-epl-9.1.20090618-41.1.noarch
====> egroupware-epl-core-9.1.20090618-41.1.noarch
####>
----> normal dependency
====> prereq dependency
####> broken dependency
This was generated with the new transaction ordering code from
the libsatsolver library. In 11.1, libzypp does the ordering.
The zypper log contains:
dependency loop: egroupware-epl -> egroupware-epl-core
dependency loop: apache2-prefork -> apache2
dependency loop: egroupware-epl-egw-pear -> egroupware-epl-core
dependency loop: egroupware-epl-wiki -> egroupware-epl-core
dependency loop: egroupware-epl-emailadmin -> egroupware-epl-core
dependency loop: egroupware-epl-sitemgr -> egroupware-epl-core
dependency loop: egroupware-epl-filemanager -> egroupware-epl-core
dependency loop: egroupware-epl-infolog -> egroupware-epl-core
dependency loop: egroupware-epl-projectmanager -> egroupware-epl-core
dependency loop: egroupware-epl-importexport -> egroupware-epl-core
dependency loop: egroupware-epl-news_admin -> egroupware-epl-core
dependency loop: egroupware-epl-stylite -> egroupware-epl-core
dependency loop: egroupware-epl-notifications -> egroupware-epl-core
dependency loop: egroupware-epl-phpsysinfo -> egroupware-epl-core
dependency loop: egroupware-epl-developer_tools -> egroupware-epl-core
dependency loop: egroupware-epl-felamimail -> egroupware-epl-core
dependency loop: egroupware-epl-sambaadmin -> egroupware-epl-core
dependency loop: egroupware-epl-phpbrain -> egroupware-epl-core
dependency loop: egroupware-epl-syncml -> egroupware-epl-core
dependency loop: egroupware-epl-timesheet -> egroupware-epl-core
dependency loop: egroupware-epl-resources -> egroupware-epl-core
dependency loop: egroupware-epl -> egroupware-epl-polls
dependency loop: egroupware-epl-tracker -> egroupware-epl-core
dependency loop: egroupware-epl-bookmarks -> egroupware-epl-core
dependency loop: egroupware-epl-manual -> egroupware-epl-core
dependency loop: egroupware-epl-calendar -> egroupware-epl-core
dependency loop: egroupware-epl-registration -> egroupware-epl-core
So it also sees the cycles. I'm not sure if it is clever enough
to not break PreReqs if the cycle can be broken with normal
Requires, though. I may be that it treats PreReqs like Reqs, which
would be a bug.
(Actually it's a packaging error from your side: A cycle containing
a PreReq dependency is not installable.
egroupware-epl PreReq: egroupware-epl-core
means that egroupware-epl-core must be when egroupware-epl
gets installed. Working means that all dependencies are fulfilled,
but egroupware-epl-core requires egroupware-epl.)
Nevertheless, it shouldn't break PreReq deps. The new libsatsolver
code will not do this, it has computed the following order:
install egroupware-epl-registration-9.1.20090618-41.1.noarch
install egroupware-epl-calendar-9.1.20090618-41.1.noarch
install egroupware-epl-manual-9.1.20090618-41.1.noarch
install egroupware-epl-bookmarks-9.1.20090618-41.1.noarch
install egroupware-epl-tracker-9.1.20090618-41.1.noarch
install egroupware-epl-core-9.1.20090618-41.1.noarch
install egroupware-epl-polls-9.1.20090618-41.1.noarch
install egroupware-epl-projectmanager-9.1.20090618-41.1.noarch
install egroupware-epl-wiki-9.1.20090618-41.1.noarch
install egroupware-epl-stylite-9.1.20090618-41.1.noarch
install egroupware-epl-developer_tools-9.1.20090618-41.1.noarch
install egroupware-epl-sambaadmin-9.1.20090618-41.1.noarch
install egroupware-epl-infolog-9.1.20090618-41.1.noarch
install egroupware-epl-resources-9.1.20090618-41.1.noarch
install egroupware-epl-news_admin-9.1.20090618-41.1.noarch
install egroupware-epl-timesheet-9.1.20090618-41.1.noarch
install egroupware-epl-phpsysinfo-9.1.20090618-41.1.noarch
install egroupware-epl-notifications-9.1.20090618-41.1.noarch
install egroupware-epl-egw-pear-9.1.20090618-41.1.noarch
install egroupware-epl-phpbrain-9.1.20090618-41.1.noarch
install egroupware-epl-sitemgr-9.1.20090618-41.1.noarch
install egroupware-epl-importexport-9.1.20090618-41.1.noarch
install egroupware-epl-filemanager-9.1.20090618-41.1.noarch
install egroupware-epl-syncml-9.1.20090618-41.1.noarch
install egroupware-epl-emailadmin-9.1.20090618-41.1.noarch
install egroupware-epl-felamimail-9.1.20090618-41.1.noarch
install egroupware-epl-9.1.20090618-41.1.noarch
Michael Andres, any comments about the libzypp behaviour?
Cheers,
Michael.
--
Ralf Becker
Director Software Development
Stylite GmbH
[open style of IT]
Morschheimer Strasse 15
67292 Kirchheimbolanden
fon +49 (0) 6352 70629-0
fax +49 (0) 6352 70629-30
mailto: rb@xxxxxxxxxx
www.stylite.de
www.egroupware.org
________________________________________________
Geschäftsführer Andre Keller, Gudrun Müller,
Nigel Vickers und Ralf Becker
Registergericht Kaiserslautern HRB 30575
Umsatzsteuer-Id / VAT-Id: DE214280951
--
To unsubscribe, e-mail: zypp-devel+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: zypp-devel+help@xxxxxxxxxxxx
| < Previous | Next > |