random thoughts on software installation
Kevin Kofler
kevin.kofler at chello.at
Fri May 18 13:57:31 UTC 2007
Colin Walters <walters <at> redhat.com> writes:
> For the first part - developer software, my ideal tool would look
> something like this. Just a search box, and a list of result hits.
> Like a web search engine basically.
> /-----
> | Search: [ ssh python ]
> |
> | Package: python-paramiko _Install_
> | "Paramiko is an implementation of ssh for Python..."
> |
> | Package: openssh _Install_
> | - /usr/bin/ssh
> \-----
> Searches descriptions and names too.
This is essentially how Synaptic works already. Searching ssh python on an FC6
system gives you: cobbler, denyhosts, pexpect, python-paramiko,
python-twisted-conch, rdiff-backup.
> /-----
> | Search: [ hg ]
> |
> | Package: mercurial _Install_
> | - /usr/bin/hg
> |
> \-----
> Searches executable names
>
> /-----
> | Search: [ db.h ]
> |
> | Package: libdb2-devel _Install_
> | - /usr/include/db2/db.h
> |
> | Package: libdb3-devel _Install_
> | - /usr/include/db3/db.h
> \-----
> Searches files.
Those 2 are essentially the same thing. Unfortunately, Synaptic won't help you
here, but this works:
repoquery -f /usr/bin/hg
as does this:
repoquery --whatprovides /usr/bin/hg
However, both these only work by full path name, searching for just db.h won't
work.
But I think all this could easily be done with the already-available RPM and
repomd infrastructure, which already contains full file lists for all packages
in the repositories. No new packaging system needed, no additions to the
repository even, just some work on the client side. (In fact, you could even
write a shell script which does a repoquery -a, then repoquery -l on all the
results, and greps for the file name in this. But it's a lot faster faster if
you read the metadata in only once, of course.)
Kevin Kofler
More information about the devel
mailing list