[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Package file indexing
From: |
zimoun |
Subject: |
Re: Package file indexing |
Date: |
Thu, 9 Jan 2020 14:53:34 +0100 |
Hi Pierre,
On Thu, 9 Jan 2020 at 14:01, Pierre Neidhardt <address@hidden> wrote:
>
> zimoun <address@hidden> writes:
> >> To avoid confusion, I think this should be an option/subcommand of
> >> search. Something like -path and -name in find(1).
> >
> > I agree that explicit keywords, e.g., "file:" and "package:", avoid
> > confusion.
>
> I disagree. What about matching a path which contains "file:" or
> "package:"? Then you end up with confusing commands.
About "file:", no issue:
guix search file:file:
However, yes there is an ambiguous behaviour of:
guix search package:
Currently, the command
guix search
returns an error.
Does "guix search package:" return an error as "guix search"? Meaning
search about 'empty'.
Or does it return the packages matching the term "package:"? For
example the package "perl-package-stash-xs" containing "Package:" in
its description or the package "r-vctrs" containing "package:" in its
description too. Note it is the only two packages.
For backward compatibility, the ambiguity needs to be fixed by the latter.
> Using "/" as a filter makes sense because it's the only character that's
> not allowed in filenames (with \0) and it's safe to assume that it's not
> useful to match against "/" in description / synopsis.
>
> Simon, regarding your examples:
>
> > - guix search bin/gmsh gimp
> > - guix search file:ieee*.sty bin/gmsh latex
> > - guix search file:bin/gmsh
>
> why mixing both the "file:" prefix and the "/"?
Yes, I am suggesting to mix both.
I would like to have all this syntax:
> - guix search file:gmsh.h gimp
> - guix search bin/gmsh gimp
> - guix search file:ieee*.sty bin/gmsh latex
> - guix search file:bin/gmsh
> - guix search package:gimp
Now, if we speak about the "search" command-line syntax, today the way
is to write a regexp and then to filter with 'recsel'. It is UNIX
philosophy to compose via pipes but the drawback is: one *has to*
first (read the Guix manual [1] to) know the existence of 'recsel' and
second read the documentation of 'recutils' for complex filtering. So,
long time ago, I was thinking to add more syntax [2]. Today, the
syntax is:
guix search "" | recsel -C -e 'name ~ "agda" && !(name ~ "mode")'
-p synopsis
and I find more welcoming something avoiding the pipe, e.g.,
guix search 'name ~ "agda" && !(name ~ "mode") -p synopsis'
Cheers,
simon
[1]
http://guix.gnu.org/manual/devel/en/html_node/Invoking-guix-package.html#Invoking-guix-package
[2] https://lists.gnu.org/archive/html/guix-devel/2018-12/msg00480.html
- Re: Package file indexing, (continued)
- Re: Package file indexing, Christopher Baines, 2020/01/12
- Re: Package file indexing, Pierre Neidhardt, 2020/01/13
- Re: Package file indexing, Christopher Baines, 2020/01/13
- Re: Package file indexing, Pierre Neidhardt, 2020/01/13
- Re: Package file indexing, Christopher Baines, 2020/01/13
- Re: Package file indexing, Pierre Neidhardt, 2020/01/14
Re: Package file indexing, zimoun, 2020/01/02
- Re: Package file indexing, raingloom, 2020/01/03
- Re: Package file indexing, zimoun, 2020/01/06
- Re: Package file indexing, Pierre Neidhardt, 2020/01/09
- Re: Package file indexing,
zimoun <=
- Re: Package file indexing, Pierre Neidhardt, 2020/01/09
- Re: Package file indexing, zimoun, 2020/01/09
- Re: Package file indexing, Pierre Neidhardt, 2020/01/09
- Re: Package file indexing, zimoun, 2020/01/09
Re: Package file indexing, Pierre Neidhardt, 2020/01/09
Re: Package file indexing, Pierre Neidhardt, 2020/01/09