Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 87797 - X11, openwin: Poor decision /usr/openwin /usr/X11R6 -> /usr
Summary: X11, openwin: Poor decision /usr/openwin /usr/X11R6 -> /usr
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: x86 All
: High enhancement (vote)
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords:
: 93344 (view as bug list)
Depends on:
Blocks:
 
Reported: 2005-04-03 09:08 UTC by L.Stohlmann
Modified: 2005-05-20 10:42 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description L.Stohlmann 2005-04-03 09:08:34 UTC
I can see absolutely no advantage in throwing X11R6 and openwin stuff alltogether into /usr. Not only does it mess up thinks like olvwm
Comment 1 L.Stohlmann 2005-04-03 09:08:34 UTC
I can see absolutely no advantage in throwing X11R6 and openwin stuff alltogether into /usr. Not only does it mess up thinks like olvwm´ s directory menus, but also e.g. openssh uses /usr/openwin/bin/xauth as a hardcoded path to xauth, making it fail on systems where the symlink does not exist. Or having a look at which X programs exist is now so much harder.

I preferred the clean /usr/X11R6 /usr/openwin /usr etc separation as it was before. Whatever was the role model for this new directory layout, it is braindead and unnecessary IMO and I cannot see ANY benefit coming from this but having less entries in the different paths.

Please stop Windozing gentoo by messing up good practices and structure! I cannot see any reason for this in the FHS or in other un*x OSses.
Comment 2 Seemant Kulleen (RETIRED) gentoo-dev 2005-04-04 05:40:22 UTC
maybe you should have a look at the roadmap for xorg-x11 then?
Comment 3 L.Stohlmann 2005-04-04 06:22:25 UTC
In whatever info file in the x.org CVS tree I read, I cannot find any recommendation to use something different from /usr/X11R6.

Please tell me what "roadmap" you mean.
Comment 4 L.Stohlmann 2005-04-04 06:33:48 UTC
Add:
I can only see lots of changes & much work because of that.
Was this an X.org decision or a Gentoo decision.

If it was a Gentoo decision, IMO Oct 18th 2004 was a very black day.

Comment 5 Adam Jackson 2005-04-04 09:26:40 UTC
speaking as someone working on Xorg:

this has been discussed on the xorg mailing list for quite some time now.  the general consensus is that /usr/X11R6 is a bad idea and that it will go away in the future.  this will bring X into conformance with the FHS and make it a more natural citizen of the modern unix desktop.

the work that gentoo - and donnie in particular - has done towards blazing this path and exposing the assumptions programs make about the X install path, has been invaluable.

regarding your specific complaints:

- the path to xauth is configurable within openssh, even on a per-host basis.  please see the XAuthLocation option in the ssh_config(5) man page.  if you feel that the default setting in gentoo is wrong, please open a new bug for it.

- program enumeration is properly a facility of the package management system and not of the filesystem.

- most of the sample applications under /usr/X11R6/bin are not widely used on modern desktop systems.  in the future these will be packaged separately, so the task of listing them falls to the package manager as described above.

- if anything, having separate installation directories for various packages is more like windows than like unix.

this move is reflective of upstream decisions, and gentoo is a courageous early adopter whom we at Xorg owe a great debt to.  if you feel this decision is invalid, please bring it up for discussion on the xorg mailing list:

http://lists.freedesktop.org/pipermail/xorg/
Comment 6 L.Stohlmann 2005-04-05 01:23:09 UTC
I dont know what the most recent version of the FHS is, what I found is that in rev 2.3 the usage of /usr/X11[R6] is still recommended, so either you or me is misreading the FHS:

http://www.pathname.com/fhs/pub/fhs-2.3.html#USRX11R6XWINDOWSYSTEMVERSION11REL

I am not against changes in general, but I dont see any benefit in the removal of the /usr/X11[R6] tree as this begins mixing absolutely non-related binaries.  In discussions with other Gentoo users I found either ignorance towards this subject ("I dont care") or dislike - and no one thinking this is an improvement  of the old, maybe not perfect but better than now hierarchy.

I wanted to have a look at the Xorg discussion, but the mailing list archive is too hard to search and I have other things to do. If you have at least a date/month when this discussion started, please share this info with me so I can get into that subject.

Thanks.
Comment 7 Adam Jackson 2005-04-05 09:12:00 UTC
having spoken with people from LSB about it, the /usr/X11R6 tree is allowed for historical purposes, but it is by no means required or even recommended.  notice the following important phrases:

"/usr/X11R6 : X Window System, Version 11 Release 6 (optional)

Purpose

This hierarchy is reserved for the X Window System, version 11 release 6, and related files.

To simplify matters and make XFree86 more compatible with the X Window System on other systems, the following symbolic links must be present _if_ _/usr/X11R6_ _exists_: [emphasis added]"

email from alan cox corroborating FHS's intent:
http://lists.freedesktop.org/pipermail/xorg/2004-October/003856.html

in fact that whole thread is a good read about the general sentiment regarding /usr/X11R6.  start here:

http://lists.freedesktop.org/pipermail/xorg/2004-October/003802.html

your argument about mixing non-related binaries is invalid, in my opinion.  look under /bin; what does echo have to do with fsck?  likewise look at your /usr/bin sometime.  ghostview and xmms are not related, but they both live in /usr/bin.  sorry, that's unix.

if you want individual directory trees for packages, they properly belong under /opt.  but that's really a hack for closed-source applications, and in general package maintenance is the responsibility of the package manager, not the filesystem.
Comment 8 L.Stohlmann 2005-04-05 13:18:53 UTC
Thanks for the links to the mailing list "postings". I am still browsing through them, but still cannot see why /usr/X11R6 allegedly was such a bad idea :(

I still hold up the argument not to mix X11 binaries/libraries with /usr, while "echo" and "fsck" being in /bin is not a contradiction IMO, as both are (most probably) needed to boot up the system, like the files in /sbin and /lib, so I cannot see a contradiction here.

The mixing of the various different binaries like xmms and ghostview is not such a good example, as both use X and therefore, in my view, would belong in /usr/X11/bin ;) Of course your objection holds for lets say emacs with X support - should it go to /usr/bin or /u/X/bin? Again, as one may still run emacs -nw, /usr/bin would be the place.

My interpretation of /usr/X11R6 being "optional" was (and still is) that it is by no means necessary to have X11 installed on a box (e.g. a server for something) never being used with graphical applications. So maybe "optional" is a little bit misleading here as it is more like "optional for historical reasons but not recommended" or whatever.

I seem to have to close this, as it is obviously not a bug and the "wrong" configuration of openssh appears to be the result of first moving all /usr/openwin stuff to /usr/X11R6 and then everything to /usr and openssh being built somewhere between, automagically finding xauth in the first place by accident being /usr/openwin/bin - i.e., either the openssh ebuild or underlying configure script.

From the sentence in the FHS "Large software packages must not use a direct subdirectory under the /usr hierarchy." Shouldnt we see a move of the /usr/portage tree somewhere else, according to this? /usr/share for arch-independent stuff would not the worst choice, of course.

I have to say: I still dont like it this way. I always liked having X11 on a seperate partition, mounting into a running server if it became a workstation. Maybe I just dont have the same trust in the package management as you have. I felt putting some entries into /etc/ld.so.conf and /etc/profile (yeah yeah or  /etc/env.d in Gentoo) easier than getting rid of tons of binaries for the case the package db was somehow broken, or even worse, having to install something in order to have it uninstalled cleanly again.

Bug closed, still unhappy - and hoping the BSD guys wont do the same. At least its LSB only...
Comment 9 Jakub Moc (RETIRED) gentoo-dev 2005-05-20 10:42:34 UTC
*** Bug 93344 has been marked as a duplicate of this bug. ***