Red Hat Bugzilla – Bug 466690
Unnecessary dependencies required to install openoffice
Last modified: 2014-01-21 18:06:13 EST
Description of problem:
In order to install openoffice, Yum package manager requests installing hsqldb driver which in turn requires installing apache tomcat server. Actually those packages are not necessary to get openoffice work.
Version-Release number of selected component (if applicable):
Install openoffice (writer / impress / calc)
Steps to Reproduce:
2.choose to install openoffice
package manager indicates that hsqldb and apache tomcat are required in order to install openoffice
hsqldb and apache tomcat not required to install openoffice
*** This bug has been marked as a duplicate of bug 459193 ***
I don't think this is a duplicate of 459193 because the dependencies are not required by packagekit, but by plain yum. When I use yum typing on a console:
yum install openoffice.ogr-core
it still requires hsqldb which in turn requires apache-tomcat5 (both of them aren't required).
So yum is wrong in its dependencies management (the problem doesn't lie in packagekit).
rpm -qR openoffice.org-core | grep hsqldb
it's explicitly required.
Then rpm -qR hsqldb
will show you that servletapi5 is required by hsqldb
and the only thing providing servletapi5 is tomcat5-servlet.
Not sure why you think yum is bringing in deps it should not.
So I should have said rpm is asking for unnecessary dependencies (not yum). For example, installing openoffice from sun's web site doesn't require you to install hsqldb or tomcat. Also, using Ubuntu, when I apt-get openoffice, it doesn't ask me to download hsqldb or tomcat.
rpm isn't pulling in those dependencies. They are being listed explicitly in openoffice.org-core's spec file and in hsqldb's.
reassigning to the openoffice.org-core maintainer
OOo needs hsqldb for openoffice.org-base to work, that require in F-10 is now just in openoffice.org-base rather than core now that openoffice.org-base has been better factored out into a more truly standalone application.
Anything that hsqldb requires I'm sure is there because it needs it to work and not because of some random desire to pull in other packages. But the hsqldb maintainer can have his chance to bite at that.
Making hsqldb a dependency of openoffice.org-base and not openoffice.org-core is a first good step, but still Fedora is forcing the user to install hsqldb. the openoffice.org-base package could for example SUGGEST Mysql driver OR PostgreSQL OR SQLite...which is how the same package is behaving in Ubuntu. I know hsqldb is not so heavy to install, but this behaviour hurts the flexibility and freedom given to the user.
We had a similar case in the past in a product we had. The solution was to request a virtual provides datasource and provide that in the many possible, one per database, subpackages, which would them require the specific database. But we had to ask people to install at least one of the subpackages in the products installation instructions, which always bothered me. One wants it the main package to work by default. So, some sort of scheme where the hsqldb one is always installed but when one of the others when installed takes precedence would be necessary. As you see, it gets increasingly complex...
Another example of really badly defined dependencies is bluecurve-icon-theme of which 102 packages are dependent !! when actually nothing depends from bluecurve icon theme. I think a difference should really be made between a package being dependent of other packages and a package suggesting the use of other packages.