emacs-devel
[Top][All Lists]
Advanced

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

Re: Debian trouble with Info


From: Rob Browning
Subject: Re: Debian trouble with Info
Date: 12 Nov 2000 12:47:24 -0600
User-agent: Gnus/5.0807 (Gnus v5.8.7) Emacs/20.7

Eli Zaretskii <address@hidden> writes:

> How does this work in practice, i.e., what tricks does the user need
> to pull to get the Info file of a specific Emacs version?  You don't
> mean "C-u C-h i" and/or "info -f", do you?
> 
> Also, does that (whatever it is) work for both Emacs and the
> stand-alone Info reader?

Well, the current implementation doesn't work properly, but here's how
I'd like it to work (or anything similar).  The user should be able to
say

  info emacs

and get the pages for whichever of the various emacsen is the
"default" one on the system (where the default on a Debian system
should be handled with update-alternatives -- more on that below).
The user should also be able to say:

  info emacs-20

(or similar) to get the pages for a particular flavor.  Of course, as
you mention, cross-links substantially complicate things.

I had hoped, though that packages that aren't relevant to a specific
flavor should be able to reference just "emacs" and get to the right
place, and packages that are flavor specific should reference that
flavor specifically.

> And what do you do when you have a single manual of a package FOO
> which refers to the Emacs manual, and you have emacs-e19 and emacs-e20
> installed?  Where do you want Info to go, and how should Info know
> where you want it to go?

As mentioned above, there would be a "system default", and that's what
you'd get, by default.

> > Then I could use Debian's
> > alternatives mechanism to make sure that /usr/share/info/emacs-*.gz
> > pointed to /usr/share/info/emacs-{flavor}*.gz, where flavor is one of
> > e19, e20, xe21, etc.
> 
> What is that alternative mechanism?  How does it work?

On a Debian system, for cases where there's more than one "flavor" of
a given program or other item (consider grep, awk, emacs, ftp, etc.),
the actual program binary or file, say /usr/man/man1/awk.1.gz or
/usr/bin/awk, will be a symlink to a file in /etc/alternatives/ which
will itself be a symlink to a real file, say /usr/man/man1/mawk.1.gz
or /usr/bin/mawk.  These symlinks are maintained by the
update-alternatives infrastructure and are setup by packages' install
scripts.  The package and install an "alternative" with a given
priority so that if that alternative is the highest priority, it
becomes the default, and it's links become the active ones.  If a
package is installed later with alternatives of a higher priority,
those become the default.  However, the local sysadmin can run a
command that will set a manual override for a given alternative.  Once
that's done, that alternative becomes the default until/unless the
sysadmin either changes it, or sets the alternative back to --auto
mode.

As a practical matter, the update-alternatives mechanism is why, if
you install both the emacs19 and emacs20 packages, emacs20 becomes the
default, and when emacs21 comes out, I'll make it higher priority so
that it becomes the default.

Did that make sense?

-- 
Rob Browning <address@hidden> PGP=E80E0D04F521A094 532B97F5D64E3930



reply via email to

[Prev in Thread] Current Thread [Next in Thread]