From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Kost Subject: bug#20255: 'search-paths' should respect both user and system profile. Date: Sun, 22 Nov 2015 21:44:00 +0300 Message-ID: <877fl9q3gv.fsf@gmail.com> References: <877ftschjt.fsf@gmail.com> <87fv8fip01.fsf@gnu.org> <87d23j1bxk.fsf@gmail.com> <871tjyfnl8.fsf@gnu.org> <876199q4z1.fsf@gmail.com> <87ioca4ojo.fsf@gnu.org> <87lh9tvcws.fsf@gnu.org> <87h9kguwc4.fsf@gmail.com> <87ziy7d90z.fsf@gnu.org> <874mgfkxee.fsf@gmail.com> <87wptb5d1y.fsf@gnu.org> <87r3jisc76.fsf@gmail.com> <87lh9q1f2i.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:55163) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a0ZdN-0006rG-M4 for bug-guix@gnu.org; Sun, 22 Nov 2015 13:45:10 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a0ZdK-0006Mv-G8 for bug-guix@gnu.org; Sun, 22 Nov 2015 13:45:09 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:58808) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a0ZdK-0006Mq-D6 for bug-guix@gnu.org; Sun, 22 Nov 2015 13:45:06 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1a0ZdK-0007rA-2p for bug-guix@gnu.org; Sun, 22 Nov 2015 13:45:06 -0500 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87lh9q1f2i.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Sun, 22 Nov 2015 11:52:37 +0100") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 20255@debbugs.gnu.org Ludovic Court=C3=A8s (2015-11-22 13:52 +0300) wrote: > Alex Kost skribis: > >>>> At first, because of the slowdown: it may be a few hundred milliseconds >>>> for you, but it's several seconds for me. >>> >>> Really? Can you show the output of: >>> >>> time guix package -p /run/current-system/profile \ >>> -p ~/.guix-profile --search-paths >> >> real 0m2.634s >> user 0m0.568s >> sys 0m0.080s > > Ouch, that=E2=80=99s a problem. This suggests that this is 2 seconds of = I/O. > I=E2=80=99m not sure what can be done to improve that. > >>> In the discussion of this bug, we tried hard to avoid resorting to >>> invoking a program, but ultimately no other solution came out. >> >> I don't need a solution for this bug, I just want to have an option to >> avoid invoking "guix package --search-paths" in my "/etc/profile". > > Are you denying that this is a bug? Are you denying that there=E2=80=99s= a > usability issue at hand? I agree it's a usability issue. > To me, what =E5=AE=8B=E6=96=87=E6=AD=A6 reported at the beginning of this= thread is a > usability issue. We=E2=80=99ve hacked around it so far, but we know ther= e are > cases where the hacks aren=E2=80=99t enough. > > We could declare it as =E2=80=9Cwon=E2=80=99t fix=E2=80=9D, but I=E2=80= =99m not comfortable with that. No, no, I'm against =E2=80=9Cwon't fix=E2=80=9D. I don't mind if it's call= ed a bug, and a solution you suggest is the best, 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. >>>> For example, when I do: >>>> >>>> GUIX_IGNORE_SYSTEM_PROFILE_ENV=3D1 guix system build my-config.scm >>>> >>>> the "etc/profile" of the built system will not contain those 'eval ...' >>>> lines. WDYT? >>> >>> This would be unreasonable. We=E2=80=99re talking about a basic featur= e here. >>> If basic features are broken to the point that we prefer to offer ways >>> to bypass them, and have a semi-broken system, then there=E2=80=99s a p= roblem, >>> IMO. >> >> Sorry, but I would really like to bypass this feature > > [...] > > I very well understand your concern, so thanks for chiming in. > Please let=E2=80=99s also consider the bug at hand. 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. > 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 =E2=80=9Cwontf= ix.=E2=80=9D It is adequate and I'm not against it. > 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=E2=80=A6 =E2=80=A6 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). If this 'profile-file' field appears, I will gladly use it, and I will not object to any future changes in /etc/profile. --=20 Alex