From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark H Weaver Subject: Re: Some documentation Date: Mon, 27 Oct 2014 00:48:31 -0400 Message-ID: <87fvea15k0.fsf@netris.org> References: <20141026204105.GA20877@thebird.nl> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:50162) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XicEY-0004FR-4v for guix-devel@gnu.org; Mon, 27 Oct 2014 00:48:51 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XicES-000351-TA for guix-devel@gnu.org; Mon, 27 Oct 2014 00:48:46 -0400 Received: from world.peace.net ([96.39.62.75]:49164) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XicES-00034m-Pi for guix-devel@gnu.org; Mon, 27 Oct 2014 00:48:40 -0400 In-Reply-To: <20141026204105.GA20877@thebird.nl> (Pjotr Prins's message of "Sun, 26 Oct 2014 21:41:05 +0100") 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: Pjotr Prins Cc: guix-devel@gnu.org Hi Pjotr, Pjotr Prins writes: > I am documenting my GNU Guix journey here: > > https://github.com/pjotrp/guix-notes This is a great start, thanks for writing this up! :) I have a few comments. In your HACKING file, you mentioned this as an alternative to "guix package -i ruby": guix package -i $(guix build ruby) Passing a raw directory name to "guix package -i", while occasionally useful, is inferior in many ways. I've forgotten the detailed effects, but the main problem is that Guix doesn't really know what package it is, it just blindly merges that directory into your profile, so things like upgrades, propagated inputs, and search-path advisories aren't handled correctly. Also, in your RUBY file, you wrote: > The libraries that come with Ruby are also symlinked via > ~/.guix-profile/lib/ruby/2.1.0/. The numbering does not matter too > much since it points to an immutable (read-only) directory in > > ~/.guix-profile/lib -> /gnu/store/ziy7a6zib846426kprc7fgimggh8bz97-ruby-2.1.3/lib > > (FIXME: the symlink should be at lib/ruby level) When a profile is built, the symlinks are always placed as close to the root as possible. In the case above, your ruby package must have been the only thing in your profile that had a top-level 'lib' directory. If you later install another package that contains 'lib', you'll find that the newly-built profile will create 'lib' as a directory and move the symlinks further down. Mark