Q applets

The package is a collection of very fast utilities written in C, which are meant to offer a faster but more limited alternative to their  counterparts. Please note that q applets are not meant to replace gentoolkit. The utilities may be much more efficient than the equivalent ones from gentoolkit and might be better suited to be used in scripts that need to call Portage repeatedly, but they do not offer the same functionality. q applets do not consider eclasses and do not provide tools like or.

Emerge
Install the q applets:

Build the cache
Before using the applets first initialize the cache:

Invocation
The complete list of applications that are provided by can be listed by typing  or. Please read the man page for each utility described, as this guide is only meant to be a short reference for the most useful functions and does not include all the information about each application.

To see the available applets with a short description of their function, use :

How to find a package to which a file belongs (qfile)
The command finds the package to which a file belongs:

Verifying package integrity (qcheck)
To check the MD5 checksums or modification times of the files installed by some package, use the application:

All the files which were changed after installation will be reported here. Configuration files which have been manually edited after installation are reported too. Most packages do not require root permissions. However, if a package has files that are only accessible to root should be run as root.

To check the integrity of all packages installed, enter:

Listing package dependencies (qdepends)
can list the dependencies of a package in either direction. Use the  option to list all the DEPEND, RDEPEND , and PDEPEND installed dependencies needed by a package.

To list all of the installed packages that depend on a package use the  option.

Search ebuilds or eclasses for a pattern (qgrep)
can be used to find ebuilds that mention an ebuild's name ("libechonest" is used in the example below) which will list all packages (installed or not) which depend on some package:

The  option will limit the search to installed packages.

Listing files that belong to an ebuild (qlist)
The command gives a list of all files that belong to an ebuild.

Looking for packages that use some USE flag (quse)
Listing used USE flags is done with, which must be run with root permissions. It may take some time to first create/update the ebuild cache.

Finding package sizes (qsize)
To show the size of a package, use the application:

Searching the Portage tree (qsearch)
One of the most powerful tools of is. This tool allows to search the Portage tree much faster than using the command.

Here are some examples of its usage:

The homepage of packages can be queried using the  option:

In another example, let's look for a jabber client:

Extracting information from emerge logs (qlop)
allows to extract useful information from the file. It can be useful when package compilation times need to be estimated or to compare build times with other systems. It also allows to check what is compiling at the moment and how long it will probably take - which is handy when working in the console and don't have any other means to check it.

Estimate how long a build takes:

See what is emerging at the moment and how long the process has been running already: