Bug 183428

Summary: Some packages still put files in /usr/X11R6
Product: [Fedora] Fedora Reporter: Luke Hutchison <luke.hutch>
Component: xorg-x11Assignee: X/OpenGL Maintenance List <xgl-maint>
Status: CLOSED NOTABUG QA Contact: David Lawrence <dkl>
Severity: medium Docs Contact:
Priority: medium    
Version: 5   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-03-01 02:43:06 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Luke Hutchison 2006-02-28 23:58:40 UTC
Description of problem:
In FC5-test3, some packages are still putting files in /usr/X11R6, e.g.
xloadimage and xorg-x11-font-utils.  I discovered this because FreeNX for X11R7
doesn't work if /usr/X11R6 still exists.

Here is a file listing:

# ls -R /usr/X11R6
/usr/X11R6:
bin  include  lib  man

/usr/X11R6/bin:
mkfontdir  mkfontscale  X  xauth  xloadimage  xsetbg  xview

/usr/X11R6/include:
X11

/usr/X11R6/include/X11:
bitmaps  extensions

/usr/X11R6/include/X11/bitmaps:

/usr/X11R6/include/X11/extensions:

/usr/X11R6/lib:
libXvMCW.so.1  libXvMCW.so.1.0.0  modules  X11

/usr/X11R6/lib/modules:
input

/usr/X11R6/lib/modules/input:

/usr/X11R6/lib/X11:
app-defaults  bindings  fonts  getconfig  locale  proxymngr  system.mwmrc  xdm

/usr/X11R6/lib/X11/app-defaults:
Editres  Editres-color  UXTerm  Viewres  Xfd  XFontSel  Xloadimage 
XScreenSaver.rpmsave  XTerm  XTerm-color

/usr/X11R6/lib/X11/bindings:
acorn   dec        doubleclick  hitachi  ibm         intergraph17  motorola 
ncr_vt  sgi           siemens_wx200  sni_97801  sun     tek
apollo  dg_AViiON  hal          hp       intergraph  megatek       ncr_at    pc
     siemens_9733  sni            sony       sun_at  xmbind.alias

/usr/X11R6/lib/X11/fonts:
100dpi  75dpi  korean  OTF  Type1

/usr/X11R6/lib/X11/fonts/100dpi:
fonts.dir

/usr/X11R6/lib/X11/fonts/75dpi:
fonts.dir

/usr/X11R6/lib/X11/fonts/korean:

/usr/X11R6/lib/X11/fonts/OTF:
fonts.cache-2

/usr/X11R6/lib/X11/fonts/Type1:
fonts.cache-2  fonts.dir

/usr/X11R6/lib/X11/getconfig:

/usr/X11R6/lib/X11/locale:
pt_BR.UTF-8

/usr/X11R6/lib/X11/locale/pt_BR.UTF-8:

/usr/X11R6/man:
man1  man4  man5  man7

/usr/X11R6/man/man1:
xloadimage.1x.gz

/usr/X11R6/man/man4:

/usr/X11R6/man/man5:

/usr/X11R6/man/man7:

Comment 1 Mike A. Harris 2006-03-01 02:43:06 UTC
Out of all of the files in /usr/X11R6 above, the only things that are owned
by any X package, are mkfontdir and mkfontscale, and those are symbolic links
for backward compatibility so that when the OS is upgraded, all of the old
packages which reference /usr/X11R6/bin/mkfont* in their rpm %post scripts
wont fail due to the files not missing.

The modular X.Org packages currently do not contain any other files in
/usr/X11R6.

Any other packages which own files in /usr/X11R6 are broken in any OS release
as nothing else should own any files in that hierarchy.

A yum query of "yum provides xloadimage" gives no results for me, so it
doesn't appear we even ship xloadimage.  Run "rpm -qf $(which xloadimage)"
to determine what package owns xloadimage, and "rpm -qi" on that package to
find out who created it.  Then file a bug report to wherever the package
came from.


> I discovered this because FreeNX for X11R7
> doesn't work if /usr/X11R6 still exists.

Then FreeNX is broken, because it should not care at all in any way wether or
not the /usr/X11R6 directory exists.  File a bug report to the FreeNX
developers to tell them they need to fix it to not care wether or not
that directory exists or not.




Comment 2 Luke Hutchison 2006-03-01 04:20:36 UTC
Hmm, xloadimage is a RH package, but I just assumed it was needed by xorg.  I
guess it's not.

# rpm -qi xloadimage
Name        : xloadimage                   Relocations: (not relocatable)
Version     : 4.1                               Vendor: Red Hat, Inc.
Release     : 33                            Build Date: Fri 21 Jan 2005 04:04:30
PM EST
Install Date: Sun 23 Jan 2005 03:47:55 AM EST      Build Host:
tweety.build.redhat.com
Group       : Amusements/Graphics           Source RPM: xloadimage-4.1-33.src.rpm
Size        : 238929                           License: MIT
Signature   : (none)
Packager    : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>
Summary     : An X Window System based image viewer.
Description :
The xloadimage utility displays images in an X Window System window,
loads images into the root window, or writes images into a file.
Xloadimage supports many image types (including GIF, TIFF, JPEG, XPM,
and XBM).



Also, I should have realized most of those files were just somehow left over
junk from multiple upgrades -- the only ones that are still associated with
packages are:

# for i in `rpm -qal | grep /usr/X11R6` ; do echo -n "$i: " ; rpm -q
--whatprovides $i ; done
/usr/X11R6/lib/libXvMCW.so.1: libXvMCW-0.9.3-1.2.fc4
/usr/X11R6/lib/libXvMCW.so.1.0.0: libXvMCW-0.9.3-1.2.fc4
/usr/X11R6/bin/xloadimage: xloadimage-4.1-33
/usr/X11R6/bin/xsetbg: xloadimage-4.1-33
/usr/X11R6/bin/xview: xloadimage-4.1-33
/usr/X11R6/lib/X11/app-defaults/Xloadimage: xloadimage-4.1-33
/usr/X11R6/man/man1/xloadimage.1x.gz: xloadimage-4.1-33
/usr/X11R6/bin: xorg-x11-font-utils-1.0.1-3
/usr/X11R6/bin/mkfontdir: xorg-x11-font-utils-1.0.1-3
/usr/X11R6/bin/mkfontscale: xorg-x11-font-utils-1.0.1-3



# rpm -qi libXvMCW
Name        : libXvMCW                     Relocations: (not relocatable)
Version     : 0.9.3                             Vendor: Freshrpms.net
Release     : 1.2.fc4                       Build Date: Wed 27 Apr 2005 04:17:32
PM EDT
Install Date: Wed 13 Jul 2005 02:06:16 PM EDT      Build Host: python2.freshrpms.net
Group       : User Interface/X              Source RPM:
libXvMCW-0.9.3-1.2.fc4.src.rpm
Size        : 16325                            License: MIT
Signature   : DSA/SHA1, Mon 13 Jun 2005 11:25:39 AM EDT, Key ID
692ac459e42d547bPackager    : Matthias Saou <matthias>
URL         : http://sourceforge.net/projects/unichrome
Summary     : A Wrapper for run-time loading of XvMC libraries
Description :
A Wrapper for XvMC libraries that allows the X server or user to specify the
hardware dependent library at run-time.



Sorry I didn't do more research first.  Thanks for your detailed explanations.

Comment 3 Mike A. Harris 2006-03-01 08:06:59 UTC
(In reply to comment #2)
> Hmm, xloadimage is a RH package, but I just assumed it was needed by xorg.  I
> guess it's not.

pts/44 mharris@porkchop:~$ l dist-fc5 xloadimage
__ERROR_PKG_xloadimage_DEPRECATED_OR_NOT_INCLUDED__
pts/44 mharris@porkchop:~$ l dist-fc4 xloadimage
__ERROR_PKG_xloadimage_DEPRECATED_OR_NOT_INCLUDED__
pts/44 mharris@porkchop:~$ l dist-fc3 xloadimage
/mnt/redhat/beehive/comps/dist/fc3/xloadimage/4.1-32/SRPMS/xloadimage-4.1-32.src.rpm

Last time xloadimage was shipped was in FC3, so your package is from FC3
or newer, and of course will be installed wherever that version of the OS
installed it.  ;o)

That's not a bug in FC5, but a bug in FC3 technically, since nothing should
ever have ever installed anything ever into /usr/X11R6 except for well...
X11R6. ;o)  Unfortunately many upstream packages suck, and install wherever
they want to, and whenever whoever packaged them, assumed that it was ok,
and that /usr/X11R6 would never disappear I guess.  ;o)

So basically, only X11R6 (XFree86 or xorg-x11) should ever have owned
files in that directory.  Many packages both in the OS and 3rd party software
abused that however, and so if anyone has any old OS components left over
from upgrades, or from 3rd party packages that abuse /usr/X11R6, there
may still be files in there.

To the best of my knowledge, we have scrounged through all of FC5 and removed
all traces of things using /usr/X11R6, however we've added back a few
backward compatible symbolic links, and may need to add more as people
report bugs and problems that are considered serious enough to fix.  Eventually
though, /usr/X11R6 should end up empty in the longrun.


> Also, I should have realized most of those files were just somehow left over
> junk from multiple upgrades -- the only ones that are still associated with
> packages are:

Note the ".fc4." in the package name.  These are not Red Hat provided
packages, but probably old FC5 development packages, recompiled for FC4
by somebody.  Just rpm -e them to be safe.

> /usr/X11R6/lib/libXvMCW.so.1: libXvMCW-0.9.3-1.2.fc4
> /usr/X11R6/lib/libXvMCW.so.1.0.0: libXvMCW-0.9.3-1.2.fc4

The FC3 xloadimage package:
> /usr/X11R6/bin/xloadimage: xloadimage-4.1-33
> /usr/X11R6/bin/xsetbg: xloadimage-4.1-33
> /usr/X11R6/bin/xview: xloadimage-4.1-33
> /usr/X11R6/lib/X11/app-defaults/Xloadimage: xloadimage-4.1-33
> /usr/X11R6/man/man1/xloadimage.1x.gz: xloadimage-4.1-33

These 3 are legitimate backward compatibility stuff:
> /usr/X11R6/bin: xorg-x11-font-utils-1.0.1-3
> /usr/X11R6/bin/mkfontdir: xorg-x11-font-utils-1.0.1-3
> /usr/X11R6/bin/mkfontscale: xorg-x11-font-utils-1.0.1-3


> # rpm -qi libXvMCW
> Name        : libXvMCW                     Relocations: (not relocatable)
> Version     : 0.9.3                             Vendor: Freshrpms.net
                                                          ^^^^^^^^^^^^^

Uggh...  Who should I send guido to visit?  ;o)


> Sorry I didn't do more research first.  Thanks for your detailed explanations.

No prob.  Beware of 3rd party rpm repositories.  Many of them rebuild
OS supplied libraries/core packages/etc.  and if you enable their repos,
you may be inadvertently installing xorg packages from ATRpms, or freshrpms,
or somewhere else, and not realizing it, then reporting bugs to Red Hat.

Of course we don't support 3rd party rebuilt packages (modified or not),
and they do often modify the packages with various changes which can cause
problems.

That's unfortunate, as the users are the ones that get burned by it.   ;o/