Usage

This section tries to give a concise usage overview and may serve as a quick lookup reference.
However, it does not and will not replace the official documentation.

Basics and installing a package

The most basic form is:

root #cave resolve <category>/<package-name>

This will try to solve the dependencies and print out the results. It will not actually perform the resolution (as in: install the target package). To actually carry out the resolution we would have to pass the -x option. You should only do that if you know what you are doing, because paludis is truly non-interactive and will not ask in between. The more common workflow is to save the resolution information in a so called resume file, review the changes that would be performed (like installing and uninstalling packages) and then execute them:

Since we don't use Portage, we have to do this instead for the above case:

root #cave config =app-admin/hddtemp-0.3_beta15-r7

Tell the resolver how much work it should perform

There are three main options that change the default behavior:

Option

Description

-z (--lazy)

Does as little work as possible, typically used when quickly installing a single package only.

-c (--complete)

Does all optional work, typically used when updating the 'world' set.

-e (--everything)

Does all optional work and always re-installs, typically used when you want to rebuild everything after a major gcc upgrade for example.

If none of the above options are passed, then the default behavior is roughly in between --lazy and --complete. These options are in fact just shorthands for more fine-grained options. Check the man page of cave-resolve for additional information on this subject.

Keep output logs

Add the following file:

FILE/etc/paludis/output.conf

always_keep_output_logs = true

Make Paludis quiet

Add the following file:

FILE/etc/paludis/output.conf

quiet = true

Speed up cave-search

cave search can make use of a search index, similar to what eix does. First, we have to generate the index:

root #cave manage-search-index --create ~/cave-search-index

And then we can use it:

root #cave search --index ~/cave-search-index <pattern>

Troubleshooting

Subslots

Although subslot handling in Paludis technically meets the spec, it misbehaves from a user perspective. Paludis will not pull in installed packages with mismatched subslots into the depgraph which are not part of the resolution, nor does it allow the user to easily do that. There exist various hacks and scripts to work around that. Another way is to pass -D dev-libs/foo if installed dependant packages of foo use an older subslot than the one that is about to be installed. However, that will also reinstall packages that are not affected. Also see the upstream bug report.

Clang

Paludis frequently fails to build with Clang. Your best bet is to use the stable gentoo releases which have a better chance of containing a patch. The live ebuild will most likely fail to build.

Gentoo rsync mirrors

Some rsync gentoo mirrors are out of date and don't run rsync-3.1 yet. These cause trouble. You can either overwrite the default rsync syncer with your own syncer or pick a gentoo mirror that works properly.

See also

Pkgcore — an alternative package manager for Gentoo that aims for high performance, extensibility, and a clean design.