Subject: Re: bug#79124: emacs -Q doesn't give me a clean slate

From: Paul Eggert <[email-masked]>
Date: Thu, 31 Jul 2025 09:19:20 -0700

On 2025-07-31 08:53, Eli Zaretskii wrote:

> So this is not really "working fine".  Emacs with native compilation
> does need to access files under the user's home directory, at least in
> the -nw case and if it needs to load some Lisp.

I don't see why. If native-compiled modules aren't available Emacs can 
get by with byte-compiled or even source files. And if that doesn't 
suffice (why not?) Emacs can create a /tmp cache directory and use that.

At any rate, I'm still puzzled by the idea that Emacs doesn't work now 
in this situation. What's not working (other than the diagnostic, which 
we can easily suppress)? For example, if I run this shell command on Fedora:

HOME=/nosuch emacs -nw -D -Q

I see that Emacs attempts to access /nosuch/.emacs.d/eln-cache and a 
bunch of other files under /nosuch, the accesses all fail, and Emacs 
keeps chugging along. What am I missing? (And why does it matter whether 
I use -nw?)

>> Presumably a new -QQ option would disable that part of the startup.
> 
> You want to disable JIT native-compilation as well?  Why?

I don't necessarily want to disable it. I merely want Emacs to not rely 
on any cache in my home directory. Emacs can do whatever jitting it 
likes, so long as jits from a clean slate.

> If you want to have a working Emacs that can edit stuff, then
> disregarding Terminfo might be a problem.

For this use case that's a feature not a problem. When testing, I don't 
want Emacs to consult the user's private ~/.terminfo file even if one 
exists, because I want the run to be reproducible independent of user.