From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Bavier Subject: Re: Reverse dependencies Date: Thu, 11 Aug 2016 14:13:04 -0500 Message-ID: References: <20160716161333.GA29212@jasmine> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:50833) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bXvQ2-0008E4-2M for help-guix@gnu.org; Thu, 11 Aug 2016 15:13:31 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bXvPw-0008KM-1R for help-guix@gnu.org; Thu, 11 Aug 2016 15:13:28 -0400 Received: from mail2.openmailbox.org ([62.4.1.33]:33588) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bXvPv-0008K1-OO for help-guix@gnu.org; Thu, 11 Aug 2016 15:13:23 -0400 In-Reply-To: List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: Vincent Legoll Cc: help-guix On 2016-08-11 09:43, Vincent Legoll wrote: > Hello, > >>> I'm trying to understand which package(s) depends on some other >>> package, >>> kind of the reverse of what guix graph does (I think). >> >> I think that `guix refresh --list-dependent foo` is what you are >> asking >> for, or at least it's close. We use it to learn what will need to be >> rebuilt when upgrading foo. > > Not really what I want to know: > > # guix refresh --list-dependent inkscape > Building the following 5 packages would ensure 10 dependent packages > are rebuilt: frescobaldi-2.19.0 solfege-3.22.2 simple-scan-3.19.91 > termite-11 hydra-20150407.4c0e3e4 > > None of those are installed, but inkscape is pulled in by something > which I want to know > > Is there no other way to get that information ? Something like (mildly tested): (use-modules (guix packages) (gnu packages) (gnu packages inkscape) (srfi srfi-1) (srfi srfi-26)) (fold-packages (lambda (package _) (when (any (cut eq? <> inkscape) (map second (package-direct-inputs package))) (format #t "~a depends on inkscape~%" (package-full-name package)))) #t) which, when run, results in: "dblatex-0.3.5 depends on inkscape" -- `~Eric