Subject: bug#20255: 'search-paths' should respect both user and system profile.

From: [email-masked] (Ludovic Courtès)
Date: Mon, 23 Nov 2015 00:04:09 +0100

Alex Kost <[email-masked]> skribis:

> Ludovic Courtès (2015-11-22 13:52 +0300) wrote:

[...]

>> To me, what 宋文武 reported at the beginning of this thread is a
>> usability issue.  We’ve hacked around it so far, but we know there are
>> cases where the hacks aren’t enough.
>>
>> We could declare it as “won’t fix”, but I’m not comfortable with that.
>
> No, no, I'm against “won't fix”.  I don't mind if it's called a bug, and
> a solution you suggest is the best,

OK.

> but it suits only the default case of a single user profile.  If I
> have several user profiles, it does nothing useful for me, only wastes
> the time.

I think this is fine.  ~/.guix-profile is treated specially in many
ways.  I think users do not expect other profiles to be magically taken
into account.

> OK, for the bug at hand, invoking "guix package --search-paths" looks
> like the only possible solution, but please don't commit this patch
> without giving a user a chance to decide what to put in /etc/profile.

OK.

>> The solution I came up with might be inadequate.  Then we need to come
>> up with an alternate proposal, or to resign and mark it as “wontfix.”
>
> It is adequate and I'm not against it.

OK.  To me, that it takes 2 seconds on your machines suggests that it’s
not great either.

>> What would you suggest?
>
> After all, I realized what is my main concern: "/etc/profile" is
> non-editable.  If I don't like some pieces of this file, I can do
> nothing, and I just have to live with it and suffer.  Ideally I would
> like to decide what pieces I want to put in /etc/profile and what I
> don't.  But it's probably not possible, so…
>
> … what I suggest now is just to give an option to avoid generating the
> default /etc/profile.  What about making an 'operating-system' field for
> this file (similar to 'sudoers-file' or 'hosts-file')?  So when such
> 'profile-file' is specified, it will be used instead of the default one
> (of course, it should be mentioned in the manual that it's only for
> those users who are sure what they do).

I think we could make an /etc/profile-service that receives snippets
meant to be glued together into the final /etc/profile.  Users could
specify the top or bottom of the file.

There could be a combined-search-paths-service that implements the
solution I proposed here.

WDYT?

> If this 'profile-file' field appears, I will gladly use it, and I will
> not object to any future changes in /etc/profile.

Of course we want to offer this flexibility.  But I think it’s also
important to discuss the defaults, to make sure they are acceptable to
many and that they improve the “user experience.”

Thanks,
Ludo’.