GNU bug report logs - #30130
Add ‘guix whereis’ command

Previous Next

Package: guix;

Reported by: Mathieu Lirzin <mthl <at> gnu.org>

Date: Mon, 15 Jan 2018 17:17:02 UTC

Severity: wishlist

Done: Ricardo Wurmus <rekado <at> elephly.net>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 30130 in the body.
You can then email your comments to 30130 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#30130; Package guix. (Mon, 15 Jan 2018 17:17:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Mathieu Lirzin <mthl <at> gnu.org>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Mon, 15 Jan 2018 17:17:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Mathieu Lirzin <mthl <at> gnu.org>
To: bug-guix <at> gnu.org
Subject: Add ‘guix whereis’ command
Date: Mon, 15 Jan 2018 18:16:11 +0100
Hello,

I would find really useful if Guix was providing a tool similar to what
‘dnf whatprovides’ or ‘apt-file’ does.  I mean something to check what
packages provides a particular file (executable/manual/library).

My main use-case is when running a ‘configure’ script which checks an
arbitrary program, I would like ‘guix whereis’ to help me find out what
package I need to install to satisfy its configuration requirement.

-- 
Mathieu Lirzin
GPG: F2A3 8D7E EB2B 6640 5761  070D 0ADE E100 9460 4D37




Severity set to 'wishlist' from 'normal' Request was from Mathieu Lirzin <mthl <at> gnu.org> to control <at> debbugs.gnu.org. (Mon, 15 Jan 2018 17:18:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-guix <at> gnu.org:
bug#30130; Package guix. (Wed, 17 Jan 2018 14:06:01 GMT) Full text and rfc822 format available.

Message #10 received at 30130 <at> debbugs.gnu.org (full text, mbox):

From: ludo <at> gnu.org (Ludovic Courtès)
To: Mathieu Lirzin <mthl <at> gnu.org>
Cc: 30130 <at> debbugs.gnu.org
Subject: Re: bug#30130: Add ‘guix whereis’ command
Date: Wed, 17 Jan 2018 15:05:42 +0100
Mathieu Lirzin <mthl <at> gnu.org> skribis:

> I would find really useful if Guix was providing a tool similar to what
> ‘dnf whatprovides’ or ‘apt-file’ does.  I mean something to check what
> packages provides a particular file (executable/manual/library).

This has been discussed before, and can be summarized this way:

  1. Finding files that are already in your store could be done easily,
     using ‘updatedb’ or something similar.

  2. Finding files from packages not in your store is trickier: it
     involves getting info from a build farm server typically.

If we address #1 in a Guix-specific way (automatically populating a file
database upon build completion), then perhaps we could arrange for ‘guix
publish’ to publish that info.

Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#30130; Package guix. (Mon, 17 Dec 2018 09:40:02 GMT) Full text and rfc822 format available.

Message #13 received at 30130 <at> debbugs.gnu.org (full text, mbox):

From: swedebugia <at> riseup.net
To: 30130 <at> debbugs.gnu.org
Subject: Add ‘guix whereis’ command
Date: Mon, 17 Dec 2018 01:39:08 -0800
Hi

This could be solved by a new field in the package-record: (provides
'("list of commands provided"))

What do you think?

This could allow us to quickly let guile search the list of provided
commands and return the package name.

E.g. right now in my guixsd I have no "file" command. I have no idea
which package installs it. :p

-- 
Cheers 
Swedebugia




Information forwarded to bug-guix <at> gnu.org:
bug#30130; Package guix. (Mon, 17 Dec 2018 12:05:02 GMT) Full text and rfc822 format available.

Message #16 received at 30130 <at> debbugs.gnu.org (full text, mbox):

From: Ricardo Wurmus <rekado <at> elephly.net>
To: swedebugia <at> riseup.net
Cc: 30130 <at> debbugs.gnu.org
Subject: Re: bug#30130: Add ‘guix whereis’ command
Date: Mon, 17 Dec 2018 13:03:38 +0100
> This could be solved by a new field in the package-record: (provides
> '("list of commands provided"))

The danger with doing this in a package definition is that it can easily
go out of sync unless we also add a verification phase to compare the
output with the list of provided executables.  Another problem is that
the list might not be complete and it is yet another manual thing to
maintain for all packages.

Another approach is to shift this task to substitute servers.

> E.g. right now in my guixsd I have no "file" command. I have no idea
> which package installs it. :p

The confusingly named “file” package provides the “file” executable ;)

--
Ricardo





Information forwarded to bug-guix <at> gnu.org:
bug#30130; Package guix. (Mon, 17 Dec 2018 20:56:01 GMT) Full text and rfc822 format available.

Message #19 received at 30130 <at> debbugs.gnu.org (full text, mbox):

From: Efraim Flashner <efraim <at> flashner.co.il>
To: Ricardo Wurmus <rekado <at> elephly.net>
Cc: swedebugia <at> riseup.net, 30130 <at> debbugs.gnu.org
Subject: Re: bug#30130: Add ‘guix whereis’
 command
Date: Mon, 17 Dec 2018 22:55:47 +0200
[Message part 1 (text/plain, inline)]
On Mon, Dec 17, 2018 at 01:03:38PM +0100, Ricardo Wurmus wrote:
> 
> > This could be solved by a new field in the package-record: (provides
> > '("list of commands provided"))
> 
> The danger with doing this in a package definition is that it can easily
> go out of sync unless we also add a verification phase to compare the
> output with the list of provided executables.  Another problem is that
> the list might not be complete and it is yet another manual thing to
> maintain for all packages.
> 
> Another approach is to shift this task to substitute servers.

This is Debian's aproach, with 'apt-file'. Another option that would
keep it more local would be a custom updatedb command that would look in
bin/sbin/libexec in the store for binaries and keep track of that. The
downside of course being that you'd only know about binaries you had in
your store.

> 
> > E.g. right now in my guixsd I have no "file" command. I have no idea
> > which package installs it. :p
> 
> The confusingly named “file” package provides the “file” executable ;)

This works for file, but it's not obvious that 'clear' is in ncurses.

-- 
Efraim Flashner   <efraim <at> flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[signature.asc (application/pgp-signature, inline)]

Reply sent to Ricardo Wurmus <rekado <at> elephly.net>:
You have taken responsibility. (Tue, 30 Jan 2024 16:15:02 GMT) Full text and rfc822 format available.

Notification sent to Mathieu Lirzin <mthl <at> gnu.org>:
bug acknowledged by developer. (Tue, 30 Jan 2024 16:15:02 GMT) Full text and rfc822 format available.

Message #24 received at 30130-done <at> debbugs.gnu.org (full text, mbox):

From: Ricardo Wurmus <rekado <at> elephly.net>
To: 30130-done <at> debbugs.gnu.org
Subject: Add ‘guix whereis’ command
Date: Tue, 30 Jan 2024 17:13:32 +0100
I’m closing this because we now have “guix locate”.

-- 
Ricardo




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 28 Feb 2024 12:24:07 GMT) Full text and rfc822 format available.

This bug report was last modified 50 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.