> On 2018-06-26, at 15:44, Christoph Böhmwalder <christ...@boehmwalder.at>
> wrote:
>
> On Tue, Jun 26, 2018 at 03:15:09PM -0400, Andrew Udvare wrote:
>> It should not be accessing this location in any case. What is the
>> environment like? What does env show? emerge --config output?
>>
>> It would almost seem like you have $HOME set to /home/christoph while
>> Portage is running (as root).
>
> The only thing that stands out about `env` is that XDG_CONFIG_HOME is set to
> /home/christoph/.config (running as root). I'm not sure if it's supposed
> to be this way, but I didn't find anything in my dotfiles that would
> suggest that I'm overwriting it.
Use `su -` to become root so the environment you are coming from gets ignored.
I actually have su aliased to `su -` because I rarely need the opposite
functionality. Otherwise just `unset XDG_CONFIG_HOME` and other things that
reference your user when you become root.
You should only have these, if any at all:
# env | fgrep XDG
XDG_DATA_DIRS=/usr/local/share:/usr/share
XDG_CONFIG_DIRS=/etc/xdg
What it would seems to be is that npm uses configstore
https://www.npmjs.com/package/configstore and since it sees XDG_CONFIG_HOME is
set and is a real path it tries to write a file to there. It falls back to
tmpdir otherwise which would be writable by Portage.
https://github.com/yeoman/configstore/blob/master/index.js#L11
https://github.com/yeoman/configstore/blob/master/index.js#L32
>
> $HOME points to /root.
>
> I'm not sure what you mean by "emerge --config output"? Running
> `emerge --config` just gives:
Sorry I meant `emerge --info`.
Andrew