[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: I'm confused... where do X11 bins go?



On Sat, May 29, 1999 at 08:06:13AM -0600, Marcelo E. Magallon wrote:
>  Where should I install X11 binaries?  In /usr/bin/X11 or
>  /usr/X11R6/bin?  If I have undestood this correctly, the idea is that
>  /usr/bin/X11 points to the current X11 release, i.e., if X11R7 comes
>  out, /usr/bin/X11 will point to /usr/X11R7/bin, right?

Maybe.  I've long been mulling over the thought of moving X into /usr.

That is the traditional reasoning, though, yeah.  /usr/bin/X11 points to
/usr/X11Rx/bin.

>  What happens with installed packages?  I have foo, which contains:
> 
>  /usr/X11R6/bin/foo
> 
>  and it's accessible via /usr/bin/X11/foo, but after xlib6g (or
>  xfree86-common?) decides to change the symlink, /usr/bin/X11/foo
>  won't work anymore.

That's correct.

>  OTOH, if foo contains
> 
>  /usr/bin/X11/foo

...it will break horribly.  /usr/bin/X11 is a symlink and dpkg is not very
good about following symlinks when it unpacks a package.  Use
/usr/X11R6/bin/foo instead.

See my recent proposed rewrite of section 5.7 for an explanation of this.

>  after xlib6g changes the symlink, /usr/bin/X11/foo will continue to
>  work,

No, it would never have worked in the first place.  Unless, of course,
package foo got unpacked BEFORE xfree86-common, which provides the
symlinks.  But then the installation of xfree86-common would fail.


>  IFF foo is installed after xlib6g.  More important, if foo is
>  already installed, dpkg will loose track of /usr/bin/X11/foo, because
>  it's actually installed on /usr/X11R6/bin/foo, but the file list says
>  it's on /usr/bin/X11/foo, which points to /usr/X11R7/bin/foo.

If and when X moves at all, a whole bunch of packages will have to move
with it.  That's the main reason there hasn't been any such migration yet.

>  If this is correct, binaries should be installed in /usr/X11R6/bin...
>  so what's the point of referencing them via /usr/bin/X11?  Am I
>  missing something here?

Historical practice.  It's also designed to insulate the user and external
programs from changes in the installed version of the X Window System.

Most X programs don't need to worry about whether X11R5 or R6 is installed,
except to take advantage of new features, and to my knowledge all X11
releases are backwards-compatible with previous releases of X11 (X10 -> X11
was the big change that impacted everything).

As far as X being tucked away in its own little fiefdom under /usr, my
guess is that this is due simply to the fact that X has always been of
prodigious size, and this was even more true 10 years ago when a 100 MB
drive was a luxury.  So system administrators often had no choice but to
put X on its own filesystem.

Like I said before, we can do away with that, and move everything into
/usr.  But it will mean changing a heck of a lot of packages.

>  Either way, I have to fix some of my packages, but I need to know
>  which one is the proper fix...

See my proposed rewrite of section 5.7 elsewhere on this list (I think it
is also bug #38212).  This has sustained no objections so far; in other
week it will be bumped up to amendment status if nothing untoward happens
in the meantime.

-- 
G. Branden Robinson              |    A committee is a life form with six or
Debian GNU/Linux                 |    more legs and no brain.
branden@ecn.purdue.edu           |    -- Robert Heinlein
cartoon.ecn.purdue.edu/~branden/ |

Attachment: pgpZT1BoZAluT.pgp
Description: PGP signature


Reply to: