On Wed, Aug 18, 1999 at 04:25:48PM -0700, Chris Waters wrote: > First of all, I'm still not convinced that this is a technical issue, > as I mentioned in my objection to Manoj's proposal.
"How do we keep all the documentation `together' while we physically move
it from /usr/doc to /usr/share/doc?"
That's the technical question. The question "Do we want to?" (presumably
answered "Yes, if at all possible") otoh, is definitely an aesthetic
question. I presume you don't disagree with my answer, though?
It may well not be possible, but so far at least, the symlinks idea
(Bug#40706) seems to have no major problems.
> Oh, and I did point out a couple of very minor, but still ACTUALLY
> TECHNICAL objections to Manoj's proposal. Executive summary: symlinks
> have limitations, and if we add an extra layer of symlinks, we
> increase the (admittedly minor) risk of bumping up against those
> limitations.
"Symlinks have limitations. Therefore we shouldn't use symlinks."
This doesn't seem a particularly useful objection, but for the sake
of fair and open debate, the following script presumably triggers the
interesting behaviour:
#!/bin/sh
rm -rf ? foo l?
last=''
for x in a b c d e f g h i j; do
mkdir $x
ln -s $x l$x
if [ $last ]; then
ln -s ../l$last/$last $x/$x
else
echo "OK" >foo
ln -s .. $x/$x
fi
last=$x
echo -n "$x: "; cat $x/$x/foo 2>&1
done
It creates a directory structure like:
foo
a/
a/a -> ..
la -> a
b/
b/b -> ../la/a
lb -> b
c/
c/c -> ../lb/b
lc -> c
and then tries catting a/a/foo, b/b/foo, c/c/foo, etc.
Under 2.2.10:
a: OK
b: OK
c: OK
d: OK
e: OK
f: cat: f/f/foo: Too many levels of symbolic links
Under 2.0.33:
a: OK
b: OK
c: OK
d: OK
e: OK
f: OK
g: cat: g/g/foo: Too many levels of symbolic links
I can't invent an even vaguely realistic situation where this could
come up in normal use. So I don't think there's any point stressing about
how changing /usr/doc might impact it.
I'm also inclined to suspect that using /usr/doc/foo -> /usr/share/doc/foo
is less likely to have issues with pending symlinks than /usr/doc ->
/usr/share/doc is:
* symlinks to things like doc/foo/bar will cause pending symlinks
for both. eg,
/home/aj/cruft.readme -> /usr/doc/cruft/README.gz
will have one additional pending link for each of /usr, /usr/doc
and /usr/doc/cruft that are symlinks.
* symlinks to doc/foo will cause pending symlinks for the latter
(/usr/doc -> /usr/share/doc) only, eg,
/home/aj/cruft-doc -> /usr/doc/cruft
* the common case, symlinks from foo-dev to foo within the doc
directory won't cause pending symlinks in any case, eg
/usr/doc/kbd -> kbd-data
Or, at least, that's what it seems like to me.
Cheers,
aj
--
Anthony Towns <[EMAIL PROTECTED]> <http://azure.humbug.org.au/~aj/>
I don't speak for anyone save myself. PGP encrypted mail preferred.
``The thing is: trying to be too generic is EVIL. It's stupid, it
results in slower code, and it results in more bugs.''
-- Linus Torvalds
pgpC4ArJV0fs6.pgp
Description: PGP signature

