From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tanguy Le Carrour Subject: Re: =?utf-8?Q?=E2=80=9CGuix_Profiles_in_Practice=E2=80=9D?= Date: Sat, 2 Nov 2019 19:51:50 +0100 Message-ID: <20191102185150.sq2rvjobx5rzww7b@melmoth> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:56961) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iQyVB-0007cu-7Q for guix-devel@gnu.org; Sat, 02 Nov 2019 14:52:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iQyV9-0002Dk-HH for guix-devel@gnu.org; Sat, 02 Nov 2019 14:51:56 -0400 Received: from relay3-d.mail.gandi.net ([217.70.183.195]:36813) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iQyV9-0002Ai-BD for guix-devel@gnu.org; Sat, 02 Nov 2019 14:51:55 -0400 Content-Disposition: inline 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" To: mail@ambrevar.xyz Cc: guix-devel@gnu.org Hi Pierre, Hi Guix! Thanks for your article! It's been really useful! I have two rather simple questions: #1. why put the profile in `"$GUIX_EXTRA_PROFILES"/my-project/my-project` instead of `"$GUIX_EXTRA_PROFILES"/my-project`? I tried to create 2 profiles right under `"$GUIX_EXTRA_PROFILES"`, and it seems to work! #2. how can I remove a profile?! … actually, I figured out that removing the links works. Garbage would be (magically) collected on the next `guix gc` ("removing stale link from…"). Is point #2 the reason why the profiles are stored in subfolders?! If yes, I would use `"$GUIX_EXTRA_PROFILES"/my-project/current` instead. Does it make sense?! Does point #2 deserve a mention in the cookbook? My actual concern with profiles comes from the fact that I'm a Fish [1] user. So I cannot "just" source the profile. Work-arounds exist [2], but I don't quite like them. The good thing is I'm also a direnv [3] user and this solves the problem it a neat way! I'm working on a direnv function (`use profile my-project`) that would activate the profile whenever I `cd` to a project folder. I will eventually submit it upstream, but first, I have to figure out a way to keep fish and direnv available when I activate a profile, because PATH is overwritten and those packages are not in my profile! :-( [1]: https://fishshell.com [2]: https://github.com/edc/bass [3]: https://direnv.net This brings me to my last (but not quite related) question… where does `--search-paths` get its information from? I guess it's something in the package definition that tells it "you have to export PYTHONPATH", but I'm not sure where. Any clue welcome! Anyway, thanks again for your work on the article! -- Tanguy