On Saturday 27 December 2008 02:18:59 Benjamin R. Haskell wrote:
> It's pretty rare that it takes me several minutes to investigate the
> output of eix. The majority of the time, I'm using it to determine what
> variant of package-naming was used for some Gentoo package I want to
> install (e.g. 'util' vs. 'utils', 'util' vs. '-util') or to see whether
> the package even exists.
>
> Of the 94 times I've used eix for simple queries this year (simple = not
> piped to something perlish), 52 had 0-4 matches. So, more than half the
> time, I can make a decision nearly instantaneously.
>
> Your argument might still be correct ("so it's irrelevant in the grand
> scheme of things"), but I'll continue using 'eix' in this case.

I have to agree here. Inquisitio does great job finding all packages including 
selected keyword, but it's pretty much useless for quick searches. And well 
update-eix  is _the_only_ hook i use from this overlay.

Ok silly (aka proof of concept) example. I want to see all available versions 
of glibc (on multilib profile - amd64) to find out the name of 32bit version.
(Each of these commands was run 3 times and best time was pasted to this 
email)

time eix glibc
* app-emulation/emul-linux-x86-glibc-errno-compat
     Available versions:  ~*2.5                  
     Homepage:            http://dev.gentoo.org/~vapier/old-broken-errno-apps
     Description:         standalone glibc for old x86 binaries that require 
errno compat

[I] sys-libs/glibc
     Available versions:  (2.2)  [P]*2.2.5-r10!s [P]2.3.2-r12!s [P]2.3.5-r3!s 
[P]2.3.6-r4!s [P]2.3.6-r5!s 2.4-r4!s 2.5-r2!s 2.5-r3!s 2.5-r4!s **2.5.1!s 
(~)2.6!s 2.6.1!s (~)2.7-r2!s (~)2.8_p20080602!s (~)2.8_p20080602-r1!s 
(~)2.9_p20081201!s (~)2.9_p20081201-r1!s                                        
                                                    
        {build crosscompile_opts_headers-only debug erandom gd glibc-compat20 
glibc-omitfp hardened linuxthreads-tls multilib nls nptl nptlonly pic profile 
selinux userlocales vanilla}                                                    
     Installed versions:  2.9_p20081201-r1(2.2)!s(00:50:01 28/12/08)(gd 
multilib nls -crosscompile_opts_headers-only -debug -glibc-compat20 -glibc-
omitfp -hardened -profile -selinux -vanilla)                                    
         
     Homepage:            http://www.gnu.org/software/libc/libc.html            
                                      
     Description:         GNU libc6 (also called glibc2) C library              
                                      

Found 2 matches.

real    0m0.061s
user    0m0.048s
sys     0m0.011s

I found out what I was searching for!

Next command:

time paludis -q glibc
palu...@1230590016: [WARNING repository.blacklisted] Repository 'paludis-
extras' is blacklisted with reason 'Repeatedly broken, full of highly buggy 
code and all round harmful. Do not use.'.
* sys-libs/glibc
    gentoo:                  (2.2.5-r10)K 2.3.2-r12 2.3.5-r3 2.3.6-r4 2.3.6-r5 
2.4-r4 2.5-r2 2.5-r3 2.5-r4 (2.5.1)K 2.6 2.6.1 2.7-r2 2.8_p20080602 
2.8_p20080602-r1 2.9_p20081201 2.9_p20081201-r1 {:2.2}
    installed:               2.9_p20081201-r1* {:2.2}
    Description:             GNU libc6 (also called glibc2) C library
    Homepage:                http://www.gnu.org/software/libc/libc.html
    License:                 LGPL-2
    Installed time:          Sun Dec 28 00:50:05 2008
    Use flags:               (-debug) (gd) (-glibc-compat20) (-glibc-omitfp) 
(-hardened) (multilib) (nls) (-profile) (-selinux) (-vanilla)
    From repositories:       gentoo
    Installed using:         paludis-0.32.4

Key to mask reasons:

* K: keyword


real    0m0.639s
user    0m0.523s
sys     0m0.044s

Sorry - no output I was looking for.

lets try another one:

time inquisitio glibc
inquisi...@1230590027: [WARNING repository.blacklisted] Repository 'paludis-
extras' is blacklisted with reason 'Repeatedly broken, full of highly buggy 
code and all round harmful. Do not use.'.                                       
    
* app-emulation/emul-linux-x86-glibc-errno-compat                               
                                      
    gentoo:                  (2.5)K* {:0}                                       
                                      
    Homepage:                http://dev.gentoo.org/~vapier/old-broken-errno-
apps                                      
    Description:             standalone glibc for old x86 binaries that 
require errno compat                          
    Herds:                   toolchain                                          
                                      
    Use flags:               Build Options: -optional_tests split strip         
                                      
    Masked by keyword:       ~x86                                               
                                      

* dev-libs/libedit
    gentoo:                  20050930 20061103 20061103-r1 20061103-r2* {:0} 
    Homepage:                
http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libedit/
    Description:             BSD replacement for libreadline                    
 
    Long Description:        GNU Readline is cool, but BSD Readline is cooler 
:) Thus here is libedit by the NetBSD folks! The glibc/bsdlibc stuff comes 
from the debian tarball, thanks to them too :) The patch is handcrafted with a 
few ideas from libedit.sf.net and a few ideas from the debian package. This 
patch aims to be as small as possible (so as to make future cvs snapshots 
cake).                                                                          
          
    Herds:                   bsd                                                
                                      
    Use flags:               Build Options: -optional_tests split strip         
                                      

* dev-libs/libiconv
    gentoo:                  (1.11)K (1.12)K* {:0} 
    Homepage:                http://www.gnu.org/software/libiconv/
    Description:             GNU charset conversion library for libc which 
doesn't implement it
    Long Description:        libiconv is a standalone package which implements 
the iconv() related functions as glibc already embed. Libraries and 
applications needs it when built in a non-glibc system.                         
         
    Herds:                   bsd                                                
                                      
    Use flags:               Build Options: -optional_tests split strip         
                                      
    Masked by keyword:       ~sparc-fbsd ~x86-fbsd                              
                                      

* dev-lisp/cl-resolver
    gentoo:                  0.7* {:0} 
    Homepage:                http://www.findinglisp.com/packages/
    Description:             Resolver is a UFFI interface to the GLIBC 
libresolv.so DNS library.
    Long Description:        Resolver is a UFFI interface to Linux's 
libresolv.so DNS library. Resolver allows you to query any type of DNS record 
and returns the full contents of a DNS reply packet, decoded in list format.    
         
    Herds:                   common-lisp                                        
                                      
    Use flags:               Build Options: -optional_tests split strip         
                                      

* dev-lisp/sbcl
    gentoo:                  1.0.9 1.0.10 1.0.11-r1 1.0.12 1.0.13 1.0.14 
1.0.15 1.0.18 1.0.19* {:0} 
    Homepage:                http://sbcl.sourceforge.net/                       
                    
    Description:             Steel Bank Common Lisp (SBCL) is an 
implementation of ANSI Common Lisp.
    Long Description:        Steel Bank Common Lisp is an open source Common 
Lisp implementation. It provides an integrated native compiler, interpreter, 
and debugger. SBCL is a fork off of the main branch of CMUCL. SBCL is 
distinguished from CMUCL by a greater emphasis on maintainability. In 
particular, the SBCL system can be built directly from its source code, so 
that the output corresponds to the source code in a controlled, verifiable 
way, and arbitrary changes can be made to the system without causing 
bootstrapping problems. SBCL also places less emphasis than CMU CL does on new 
non-ANSI extensions, or on backward compatibility with old non-ANSI features. 
Support for native threading on GNU/Linux is available for the x86 and amd64 
platforms using an NPTL enabled GLIBC. SBCL 0.8.17 and later support Unicode.  
    Herds:                   common-lisp                                        
                                      
    Use flags:               -cobalt -doc -ldb -source threads unicode Build 
Options: -optional_tests split strip     

* kde-base/kmtrace
    gentoo:                  3.5.9 3.5.10* {:3.5} 
    Homepage:                http://www.kde.org/  
    Description:             kmtrace - A KDE tool to assist with malloc 
debugging using glibc's "mtrace" functionality
    Herds:                   kde                                                
                                      
    Use flags:               -debug -kdehiddenvisibility Build Options: -
optional_tests split strip                   

* sys-libs/glibc
    gentoo:                  (2.2.5-r10)K 2.3.2-r12 2.3.5-r3 2.3.6-r4 2.3.6-r5 
2.4-r4 2.5-r2 2.5-r3 2.5-r4 (2.5.1)K 2.6 2.6.1 2.7-r2 2.8_p20080602 
2.8_p20080602-r1 2.9_p20081201 2.9_p20081201-r1* {:2.2}                         
         
    installed:               2.9_p20081201-r1 {:2.2}                            
                                      
    Homepage:                http://www.gnu.org/software/libc/libc.html         
                                      
    Description:             GNU libc6 (also called glibc2) C library           
                                      
    Herds:                   toolchain                                          
                                      
    Use flags:               -debug gd -glibc-compat20 -glibc-omitfp (-
hardened) (multilib) nls -profile (-selinux) -vanilla Build Options: -
optional_tests                                                                  
               

* sys-libs/libtrash
    gentoo:                  2.2 2.4 2.6 2.8* {:0}
    Homepage:                
http://pages.stern.nyu.edu/~marriaga/software/libtrash/
    Description:             provides a trash can by intercepting certain 
calls to glibc
    Herds:                   no-herd
    Maintainers:             [email protected]
    Use flags:               Build Options: -optional_tests split strip

* sys-libs/uclibc
    gentoo:                  (0.9.27-r1)K (0.9.28.3)K (0.9.28.3-r3)K 
(0.9.28.3-r7)K 0.9.30* {:i686-pc-linux-uclibc}
    Homepage:                http://www.uclibc.org/
    Description:             C library for developing embedded Linux systems
    Long Description:        uClibc pronounced yew-see-lib-see is a C library 
for developing embedded Linux systems. It is much smaller than the GNU C 
Library, but nearly all applications supported by glibc also work perfectly 
with uClibc. Porting applications from glibc to uClibc typically involves just 
recompiling the source code. uClibc even supports shared libraries and 
threading. It currently runs on standard Linux and MMU-less (also known as 
uClinux) systems with support for alpha, ARM, cris, i386, i960, h8300, m68k, 
mips/mipsel, PowerPC, SH, SPARC, and v850 processors.
    Herds:                   embedded
    Maintainers:             [email protected] [email protected]
    Use flags:               -build -debug -hardened iconv ipv6 -minimal nls -
pregen -savedconfig -uclibc-compat -userlocales -wordexp Build Options: -
optional_tests


real    3m4.014s
user    1m51.258s
sys     0m52.663s


I don't really fancy wasting over 3 minutes to get the list and another 20 sec 
to find out the library name im looking for.


so 0m0.061s vs ~3.5min?

Thanks,
Rob


Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
paludis-user mailing list
[email protected]
http://lists.pioto.org/mailman/listinfo/paludis-user

Reply via email to