From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Marusich Subject: Given a file, find the package that builds it Date: Fri, 30 Mar 2018 06:53:58 +0200 Message-ID: <87h8oy4109.fsf_-_@gmail.com> References: <87lgee3sfw.fsf@gmail.com> <87d0zpx2rw.fsf@gnu.org> <87y3id7rdb.fsf@gmail.com> <87efk5utd5.fsf@gnu.org> <87lgecx10r.fsf@gmail.com> <87o9j8lzmr.fsf@fastmail.com> <87woxv4inn.fsf@gmail.com> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:57929) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f1m3B-0005Ly-Ud for help-guix@gnu.org; Fri, 30 Mar 2018 00:54:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f1m3B-0002qI-1M for help-guix@gnu.org; Fri, 30 Mar 2018 00:54:06 -0400 Received: from mail-pf0-x22d.google.com ([2607:f8b0:400e:c00::22d]:45807) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1f1m3A-0002pm-Rk for help-guix@gnu.org; Fri, 30 Mar 2018 00:54:04 -0400 Received: by mail-pf0-x22d.google.com with SMTP id l27so4726948pfk.12 for ; Thu, 29 Mar 2018 21:54:04 -0700 (PDT) In-Reply-To: <87woxv4inn.fsf@gmail.com> (Pierre Neidhardt's message of "Thu, 29 Mar 2018 09:50:28 +0530") 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: Pierre Neidhardt Cc: help-guix --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Pierre Neidhardt writes: >>> A more general question: How do I find to which non-installed package a >>> filename belongs? >> >> Guix does not currently know anything about the files inside each >> package, I typically do a web search... > > This is too bad, I believe it's an important feature for any package > manager. > As far as I can tell, `portage` and `pacman` can both do it. > > Any plan regarding guix? I don't know of any plan at the moment. Nothing is stopping a motivated individual from creating a mapping of packages to programs, of course, and then making it available to anyone who is interested. Here's one idea: what if somebody defined a package which used every other package as input, scanned their output paths and created such a mapping, and then wrote that mapping (or built a tool to easily query that mapping) as its own output? You could call it the "xiug" package! ;-) Until a solution is created, I find that the following heuristic usually works (where $program is the name of the program I'm interested in): * Try: guix package --search=3D$program * Search the Internet for $program, and find out what package provides the $program on existing distributions. Then try "guix package --search=3D$package" where $package is the package name used in the other distro. The name is often the same or similar. * Brute force search your local store for the build output: find -L /gnu/store -iname "*${program}*" * Ask on IRC or email! =2D-=20 Chris --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEy/WXVcvn5+/vGD+x3UCaFdgiRp0FAlq9wuYACgkQ3UCaFdgi Rp3xWg/+Mn+Hiwo7FUKLu4Vi2iIkpTH74p5oJv2k2TGUNIO2CgPqJ9F/JUnLjAIM sJvg3/srPMQW5u7yRwEerC26h+MEDgwO9N4LDYBJ2p2mx/6AQ2yWIPd/Px/vD1AX /xcaAXSlU6S6gik0yFjjEJkzvTVFwts3ZJ7J8H+nM9Waun/pKMBX6Qun7FHscOtn 4cTM3J7Qh6UK/lGgU9Ky7OeOfLenmu4mFkNclEPkrJnNk/c3OnTjEC4prUAijoND wlFaQjbeXs/To9wKI1SBXE+EqWVWs0iOyHRRJwi8CW0hHZnvnSLR3H/YRrDNanX2 HseR6u0otlbEKA2TjPeAijux+d8L6G33Rw/fY53LwnLHOwGfD5wx6xm0RJUTkwFO wGUTzWW4PtSPvQDvQJkn9sOoPEW8b7USh9Vj/+Ubb6wCejhLtxBDHWxqQKC0lAIO RjCpu+Oe4ZYVwjExc9oh4ZmJXlWSJfJWpjk9L8OWZLy8EJXSVEFtlTgiM1sKQvSV r9l9SGscgyP+nmnUvYJR4P+enWIa2ox28tl5btt6+QE8zQWhrZR+Erspfw681LoN +9Svg/rajNtwQ7eQIcvi6XQjZTgFuhua97gkoSLlS1eeVyyEYuCSf70k/j7L/LLq 7ndSe4uEWQl1O/uFWUqOab4CTkOprlv0xPspsXIvNyBnEz/fPvA= =QUwB -----END PGP SIGNATURE----- --=-=-=--