Subject: bug#36828: 27.0.50; Uninstalled emacs shows installed documentation

From: Eli Zaretskii <[email-masked]>
Date: Mon, 29 Jul 2019 21:13:34 +0300

> From: Štěpán Němec <[email-masked]>
> Cc: [email-masked],  [email-masked]
> Date: Mon, 29 Jul 2019 19:44:25 +0200
> 
> On Mon, 29 Jul 2019 19:57:55 +0300
> Eli Zaretskii wrote:
> 
> > Once again, we are talking about the situation where there's both an
> > installed NEWS file and an uninstalled one for the same Emacs
> > version.  The situation where there's just one of them works exactly
> > as you want.  Right?
> 
> Yes. [Although I wouldn't use the formulation "the same Emacs version"
> myself, or at least would need to clarify its definition, i.e. typically
> the source tree build would be newer than the installed version, but
> would end up in the same installation directory, yes, so that's probably
> not relevant here.]

data-directory is versioned.  E.g., for Emacs 26.2.90 I'm using to
type this, data-directory is "/usr/share/emacs/26.2.90/etc/".  So yes,
we are talking about having an installed and an uninstalled NEWS
_for_the_same_Emacs_version_.  I use "version" in the sense of
"version number".

> I can live with "this is how it works, the code is hairy, let's just
> keep this as a wishlist item" or something to that effect, but you
> somehow seem to insist on the current behaviour not being wrong at all
> or at least seem to have some kind of "the right thing" notion
> apparently quite different from the expectation of myself, the OP and I
> suspect most users, and at the same time you fail to explain what that
> TRT is and why it is right or more right than our expectation.

I wasn't aware that Óscar meant to change entirely how Emacs finds all
of its directories.  I still don't think that's what he meant.

You certainly do, though.  And my response to that was not to describe
the implementation, it was to describe the _design_.  Emacs looks for
its directories according to how it was configured _by_design_.  I
understand now that you want to change that design from the ground up,
but in that case this specific use case with data-directory in two
places is really not what's important.  What's important is that you
are asking for a radical change in how Emacs is configured, and
basically redesign and reimplement a large chunk of its startup code.
You are also asking it to start behaving unlike most other programs
out there, almost all of them looking for auxiliary files in
directories computed at configure time.  Programs that are
"relocatable", i.e. look for the directories relative to their binary,
are a minority; one reason is that this requires them to know where
the binary lives, something that not every program knows (Emacs does).
In any case, it's a very significant change, way more than just make
this particular use case behave as Óscar expected.

> Failing all that, if there is no prospect of change at all, would it be
> possible to at least warn the user in cases like this? Something like
> "The NEWS file you are accessing is not the one you probably think it
> is"?

You mean, instead of using the first NEWS we find, look in _all_ the
possible places and print a warning if we find more than one NEWS
file?