From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Thompson Subject: Re: guix-shell? Date: Fri, 29 Aug 2014 22:03:54 -0400 Message-ID: <87iolaivhx.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]:60194) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XNY1W-0005sA-RI for guix-devel@gnu.org; Fri, 29 Aug 2014 22:04:20 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XNY1Q-0001VM-BX for guix-devel@gnu.org; Fri, 29 Aug 2014 22:04:14 -0400 Received: from na3sys009aog111.obsmtp.com ([74.125.149.205]:54105) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XNY1Q-0001Up-3Z for guix-devel@gnu.org; Fri, 29 Aug 2014 22:04:08 -0400 Received: by mail-oa0-f53.google.com with SMTP id eb12so2399057oac.12 for ; Fri, 29 Aug 2014 19:04:05 -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 That sounds pretty good to me. I don't have the process clear in my head yet, though. I need to read how our build script works more. I think it would be nice to have a default file that guix environment searches for if none is specified. Tools like Ruby's bundler automatically use a file called 'Gemfile'. Perhaps guix environment could look for an 'environment.scm' file by default? --=20 David Thompson Web Developer - Free Software Foundation - http://fsf.org GPG Key: 0FF1D807 Support the FSF: https://fsf.org/donate