From mboxrd@z Thu Jan 1 00:00:00 1970 From: Leo Famulari Subject: Re: [PATCH 4/7] gnu: Add spice-gtk. Date: Sun, 24 Jul 2016 12:21:28 -0400 Message-ID: <20160724162128.GE32009@jasmine> References: <20160723131859.13525-1-david@craven.ch> <20160723131859.13525-4-david@craven.ch> <20160723223959.GD26113@jasmine> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:55987) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bRM9z-0007bs-41 for guix-devel@gnu.org; Sun, 24 Jul 2016 12:21:48 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bRM9u-0001iI-3J for guix-devel@gnu.org; Sun, 24 Jul 2016 12:21:46 -0400 Received: from out5-smtp.messagingengine.com ([66.111.4.29]:39177) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bRM9r-0001fJ-QH for guix-devel@gnu.org; Sun, 24 Jul 2016 12:21:42 -0400 Content-Disposition: inline In-Reply-To: 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: David Craven Cc: guix-devel On Sun, Jul 24, 2016 at 01:34:13PM +0200, David Craven wrote: > What are valid reasons to propagate inputs? Ideally, dependencies can be found by their callers with an absolute path to /gnu/store/...-foo. But, some software lacks this facility, and can only find dependencies in the environment, for example on $PATH. So, when a user installs the calling application into their profile, propagated-inputs are installed along with it. So, with ~/.guix-profile/bin on the user's PATH, the dependencies are also on $PATH. This increases the number of potential conflicts in the profile, so we try to avoid propagating when we can. This is why I asked about the propagated-inputs in your packages. Wrappers can be used to avoid propagating in some cases. For example, the python-build-system wraps all executables with a $PYTHONPATH containing a list of absolute paths in /gnu/store. You can look at the store directory of some Python package to see the wrappers. I'll be happy if someone can correct any inaccuracies in this explanation :) It's still a bit cloudy for me.