Subject: Re: bug#50103: Pulseaudio doesn't export XDG_CONFIG_DIRS

From: Leo Prikler <[email-masked]>
Date: Wed, 18 Aug 2021 18:35:31 +0200

Hi John,

For the record, you should try to cite in a way, that lines don't get
broken.  I have no idea why this is happening

Am Mittwoch, den 18.08.2021, 16:06 +0000 schrieb John Kehayias:
> Hi Leo,
> 
> On Wednesday, August 18th, 2021 at 11:19 AM, Leo Prikler  wrote:
> [...]
> .config/guix is hardcoded in a few places already isn't it? (or is
> that just for root? took just a quick look) Personally, I prefer
> everything in .config to keep the home folder cleaner, but we all
> know there's a strong mix of things like $HOME/.something and
> $HOME/.config/something.
$(HOME)/.config is particularly hard-coded in the current /etc/profile,
which is why I dub it "fake XDG conformance".  I personally disagree
with the use for $(HOME)/.config for software packages.

> [...]
> 
> I suppose that still leaves the question of search paths. I don't
> think I know enough of the internals to have a helpful input here so
> far. Handling multiple profiles together would help pull in some
> search-paths and maybe alleviate #48538 (dbus)? Would then /etc be
> constructed from all the profiles together (by passing this
> XDG_CONFIG_DIRS issue)? If it is still /etc in each profile relying
> on env to find things, then at least in this case XDG_CONFG_DIRS
> still has to appear somewhere. Search paths in profiles could be
> good, conceptually works for how profiles are used, to me.
For context, `guix package --search-paths' would implement the merged
approach IIUC, but then you would have to invoke guix from
/etc/profile, which reportedly is not every person's tea.  You could
still manually source $GUIX_PROFILE/etc/profile, but would then get an
incomplete view depending on what your profiles look like.

As for the XDG_CONFIG_DIRS, I don't think your scenario is the only
possible one, but with things being as they are currently, it is among 
the likeliest outcomes.  Another approach would be to define "precious"
search paths, which would be considered even if not explicitly
mentioned by any package/profile.  (I think this somewhat overlaps
with/complements search paths as a first-class manifest citizen).  I'm
just throwing out ideas here, so you shouldn't necessarily take any of
them as *the* solution to all our problems or something that can be
easily implemented given the status quo, but if you want, you can take
some inspiration from them or try out your own (thought) experiments.

Regards