On Mon, 10 Nov 2008, Dr Andrew C Aitchison wrote:
> On Mon, 10 Nov 2008, Sven Sternberger wrote:
>
>> Hello!
>>
>> SL5.2 64bit
>> chkfontpath-1.10.1-1.1.x86_64
>>
>> rpm -q --requires chkfontpath gives me
>> "xfs"
>
> # rpm -q --provides xorg-x11-xfs
> xorg-x11-xfs-1:1.0.5-1.fc6.x86_64.rpm
> config(xorg-x11-xfs) = 1:1.0.5-1.fc6
> xfs
> xorg-x11-xfs = 1:1.0.5-1.fc6
>
> - so xorg-x11-xfs does satisfy the dependency in chkfontpath.
>
> Hmm. That means that there are two dependencies "xfs".
> I'll submit a bug to TUV. ^H^H^H^H^H^H
> Ah xorg-x11-xfs is Red Hat but xfs is SL,
> so xfs cannot provide xfs :-)
I recently did some experiments with the xfs filesystem, and quickly
discovered a 'bug' in the packaging which is related to the message
above - or at least in how yum reacts.
Installing xfs causes xorg-x11-xfs to be removed... But I could then
re-install it...
I'm rather confused by the depencies since to avoid xorg-x11-xfs being
removed I added a hack package which depends explciitly on that, and now
attempting to install xfs gives an error.
Before adding my hack I would get behaviour like:
$ rpm -q xorg-x11-xfs xfs
xorg-x11-xfs-1.0.2-4.i386
package xfs is not installed
$ yum -d2 install xfs
Loading "list-updates" plugin
...
--> Running transaction check
---> Package xfs.i686 0:0.4-1.el5 set to be updated
--> Processing Dependency: kernel-module-xfs >= 0.4-1.el5 for package: xfs
--> Running transaction check
---> Package kernel-module-xfs-2.6.18-92.1.6.el5.i686 0:0.4-1.sl5 set to be updated
--> Finished Dependency Resolution
Beginning Kernel Module Plugin
---> Package kernel-module-xfs-2.6.18-92.1.13.el5.i686 0:0.4-1.sl5 set to be installed
---> Package kernel-module-xfs-2.6.18-92.1.18.el5.i686 0:0.4-1.sl5 set to be installed
---> Package kernel-module-xfs-2.6.18-92.1.17.el5.i686 0:0.4-1.sl5 set to be installed
Finished Kernel Module Plugin
--> Running transaction check
---> Package kernel-module-xfs-2.6.18-92.1.18.el5.i686 0:0.4-1.sl5 set to be updated
---> Package kernel-module-xfs-2.6.18-92.1.17.el5.i686 0:0.4-1.sl5 set to be updated
---> Package kernel-module-xfs-2.6.18-92.1.6.el5.i686 0:0.4-1.sl5 set to be updated
---> Package xfs.i686 0:0.4-1.el5 set to be updated
---> Package kernel-module-xfs-2.6.18-92.1.13.el5.i686 0:0.4-1.sl5 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
============================================================================
Package Arch Version Repository
Size
============================================================================
Installing:
xfs i686 0.4-1.el5 sl-mirror-base 2.0 k
Installing for dependencies:
kernel-module-xfs-2.6.18-92.1.13.el5 i686 0.4-1.sl5 sl-testedbits 3.4 M
kernel-module-xfs-2.6.18-92.1.17.el5 i686 0.4-1.sl5 sl-testedbits 3.4 M
kernel-module-xfs-2.6.18-92.1.18.el5 i686 0.4-1.sl5 sl-testedbits 3.4 M
kernel-module-xfs-2.6.18-92.1.6.el5 i686 0.4-1.sl5 sl-mirror-base 3.4 M
Transaction Summary
============================================================================
Install 5 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 14 M
**** note there is no mention of xorg-x11-xfs here ****
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: kernel-module-xfs-2.6.18-92. ######################### [1/6]
Installing: kernel-module-xfs-2.6.18-92. ######################### [2/6]
Installing: kernel-module-xfs-2.6.18-92. ######################### [3/6]
Installing: kernel-module-xfs-2.6.18-92. ######################### [4/6]
Installing: xfs ######################### [5/6]
Erasing : xorg-x11-xfs ######################### [6/6]
warning: /etc/X11/fs/config saved as /etc/X11/fs/config.rpmsave
Installed: xfs.i686 0:0.4-1.el5
Dependency Installed: kernel-module-xfs-2.6.18-92.1.13.el5.i686
0:0.4-1.sl5 kernel-module-xfs-2.6.18-92.1.17.el5.i686 0:0.4-1.sl5
kernel-module-xfs-2.6.18-92.1.18.el5.i686 0:0.4-1.sl5
kernel-module-xfs-2.6.18-92.1.6.el5.i686 0:0.4-1.sl5
Complete!
oops we lost xorg-x11-xfs, but we can put it back (well the config is lost
but we can put that back too)
$ rpm -q xorg-x11-xfs xfs
package xorg-x11-xfs is not installed
xfs-0.4-1.el5.i686
$ yum -d1 install xorg-x11-xfs
============================================================================
Package Arch Version Repository
Size
============================================================================
Installing:
xorg-x11-xfs i386 1:1.0.2-4 sl-mirror-base 68 k
Transaction Summary
============================================================================
Install 1 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 68 k
Is this ok [y/N]: y
Installed: xorg-x11-xfs.i386 1:1.0.2-4
$ rpm -q xorg-x11-xfs xfs
xorg-x11-xfs-1.0.2-4.i386
xfs-0.4-1.el5.i686
but after making my hack package depend on xorg-x11-xfs I get a strange
error from yum:
$ yum -d2 install xfs
Loading "downloadonly" plugin
Loading "protectbase" plugin
...
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package xfs.i686 0:0.4-1.el5 set to be updated
--> Processing Dependency: kernel-module-xfs >= 0.4-1.el5 for package: xfs
--> Running transaction check
---> Package kernel-module-xfs-2.6.18-92.1.6.el5.i686 0:0.4-1.sl5 set to be updated
--> Finished Dependency Resolution
Beginning Kernel Module Plugin
---> Package kernel-module-xfs-2.6.18-92.1.17.el5.i686 0:0.4-1.sl5 set to be installed
---> Package kernel-module-xfs-2.6.18-92.1.13.el5.i686 0:0.4-1.sl5 set to be installed
---> Package kernel-module-xfs-2.6.18-92.1.18.el5.i686 0:0.4-1.sl5 set to be installed
Finished Kernel Module Plugin
--> Running transaction check
---> Package kernel-module-xfs-2.6.18-92.1.18.el5.i686 0:0.4-1.sl5 set to be updated
---> Package kernel-module-xfs-2.6.18-92.1.17.el5.i686 0:0.4-1.sl5 set to be updated
---> Package kernel-module-xfs-2.6.18-92.1.6.el5.i686 0:0.4-1.sl5 set to be updated
---> Package xfs.i686 0:0.4-1.el5 set to be updated
---> Package kernel-module-xfs-2.6.18-92.1.13.el5.i686 0:0.4-1.sl5 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
============================================================================
Package Arch Version Repository
Size
============================================================================
Installing:
xfs i686 0.4-1.el5 sl-mirror-base 2.0 k
Installing for dependencies:
kernel-module-xfs-2.6.18-92.1.13.el5 i686 0.4-1.sl5 sl-testedbits 3.4 M
kernel-module-xfs-2.6.18-92.1.17.el5 i686 0.4-1.sl5 sl-testedbits 3.4 M
kernel-module-xfs-2.6.18-92.1.18.el5 i686 0.4-1.sl5 sl-testedbits 3.4 M
kernel-module-xfs-2.6.18-92.1.6.el5 i686 0.4-1.sl5 sl-mirror-base 3.4 M
Transaction Summary
============================================================================
Install 5 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 14 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
ERROR with rpm_check_debug vs depsolve:
Package DAMTP-deps needs xorg-x11-xfs, this is not available.
Complete!
(there DAMTP-deps is my hack package) so I'm a bit puzzled about why:
installing xfs removes xorg-x11-xfs - but I can put it back
having the other package depend on xorg-x11-xfs prevent xfs being
installed by yum
since we can't (easily) change TUVs xorg-x11-* packages, perhaps the xfs
package shouldn't provide 'xfs', would the following patch to the xfs.spec
make sense? Would it cause any problems?
$ diff -bu SPECS/xfs.spec{~,}
--- SPECS/xfs.spec~ 2007-11-12 18:41:10.000000000 +0000
+++ SPECS/xfs.spec 2008-12-11 14:50:26.000000000 +0000
@@ -57,7 +57,7 @@
#
-------------------------------------------------------------------------------------------
Summary: The XFS(tm) Filesystem from Silicon Graphics, Inc.
-Name: %{pkg_name}
+Name: %{pkg_name}-filesystem
Version: 0.4
Release: 1%{?dist}
Epoch: 0
ie currently xfs only provides xfs because that is the 'name' of the
package. As far as I can see nothing in the xfs suite depends on that
name so changing the package name ought to just result in different rpm
'names' and provides etc.
Perhaps calling it %{pkg_name}-meta would make it clearer that it is just
a package to pull in the various kernel-module bits.
Does this make sense? I coukld obviously rebuild things with this tweak
but then I'd have to maintain yet another private package, so I'd prefer
to have a fix in the sl version (if a good one can be found).
--
/--------------------------------------------------------------------\
| "Computers are different from telephones. Computers do not ring." |
| -- A. Tanenbaum, "Computer Networks", p. 32 |
---------------------------------------------------------------------|
| Jon Peatfield, _Computer_ Officer, DAMTP, University of Cambridge |
| Mail: [log in to unmask] Web: http://www.damtp.cam.ac.uk/ |
\--------------------------------------------------------------------/
|