From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Thompson Subject: Re: guix-shell? Date: Wed, 17 Sep 2014 22:22:43 -0400 Message-ID: <878ulhmzv0.fsf@izanagi.i-did-not-set--mail-host-address--so-tickle-me> References: <87fvgo3mlx.fsf@gnu.org> <87zjesgqc5.fsf_-_@gnu.org> <878umb30sx.fsf@izanagi.i-did-not-set--mail-host-address--so-tickle-me> <87vbpc8vgr.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]:40264) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XURN5-0002rG-M7 for guix-devel@gnu.org; Wed, 17 Sep 2014 22:23:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XURMz-0001Bh-OI for guix-devel@gnu.org; Wed, 17 Sep 2014 22:22:59 -0400 Received: from na3sys009aog108.obsmtp.com ([74.125.149.199]:38691) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XURMz-0001B1-GA for guix-devel@gnu.org; Wed, 17 Sep 2014 22:22:53 -0400 Received: by mail-qa0-f50.google.com with SMTP id k15so283154qaq.37 for ; Wed, 17 Sep 2014 19:22:46 -0700 (PDT) In-Reply-To: <87vbpc8vgr.fsf@gnu.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: guix-devel Ludovic Court=C3=A8s writes: > David Thompson skribis: > >> I will implement 'guix shell' if I can get your opinion on the best >> approach to take. Would you tweak guix/scripts/build.scm to handle >> the special case or export the necessary procedures and create a >> guix/scripts/shell.scm module? > > The problem with a command that spawns a shell IMO is that it does not > compose well: you get a new shell (which shell program is actually > run?), and you can influence a running shell, or use it in a script, > etc. > > So instead I would imagine a command like: > > guix environment emacs > > which would build the dependencies of Emacs, and then output the search > path as per =E2=80=98guix package --search-paths=E2=80=99, so that one ca= n just source > it and be done. > > In addition, one could do things like: > > guix environment -l foo.scm > I started working on this. As a test, I wrote a script that loads a list of packages from a file, builds them, and then outputs the search paths. One crucial search path is missing though: PATH. Should 'guix environment' create a new profile with all of the necessary packages in it? IIRC, nix shell doesn't do this, but I don't fully understand why and how. --=20 David Thompson Web Developer - Free Software Foundation - http://fsf.org GPG Key: 0FF1D807 Support the FSF: https://fsf.org/donate