From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: guix-shell? Date: Sun, 21 Sep 2014 21:54:36 +0200 Message-ID: <87y4tcvjer.fsf@gnu.org> 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> <878ulhmzv0.fsf@izanagi.i-did-not-set--mail-host-address--so-tickle-me> <87k3511hq7.fsf@gnu.org> <87iokgans5.fsf@izanagi.i-did-not-set--mail-host-address--so-tickle-me> 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]:40513) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XVnDc-00049q-Hs for guix-devel@gnu.org; Sun, 21 Sep 2014 15:54:54 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XVnDV-0001tR-QO for guix-devel@gnu.org; Sun, 21 Sep 2014 15:54:48 -0400 Received: from hera.aquilenet.fr ([2a01:474::1]:52717) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XVnDV-0001sn-Ja for guix-devel@gnu.org; Sun, 21 Sep 2014 15:54:41 -0400 In-Reply-To: <87iokgans5.fsf@izanagi.i-did-not-set--mail-host-address--so-tickle-me> (David Thompson's message of "Sun, 21 Sep 2014 13:25:46 -0400") 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: David Thompson Cc: guix-devel David Thompson skribis: > I abandoned the profile approach and tried to implement something > similar to what nix-shell does: Build all input derivations and set the > environment variables that a builder would set. My primary reason for > using the low-level derivations instead of high-level package inputs is > that the derivations include information about all of the implicit > inputs as well. That makes sense. What about: 1. Computing the list of search-path-specifications of all the transitive inputs of the package, the way =E2=80=98package-derivation= =E2=80=99 does it; 2. Computing, based on these specifications and all the input derivations, the actual search paths, the way =E2=80=98set-paths=E2=80= =99 does it? Unless I=E2=80=99m mistaken, this would be equivalent to what happens with =E2=80=98build-system=E2=80=99 implementations, so that should work. HTH! Ludo=E2=80=99.