Gentoo Logo

Portage Frequently Asked Questions (FAQ)

1.  Frequently Asked Questions

How can "blocks" between packages be resolved?

See the Blocked Packages section in the Gentoo Handbook.

Why is it that emerge does not update all packages?

By default, the dependency graph may not include some packages. For example, it will not include any packages that are listed in the output of emerge --pretend --depclean. It will also not include any build time dependencies for installed packages or binary packages. If you would like to include such build time dependencies even though they are not strictly required, use --with-bdeps=y. You can set EMERGE_DEFAULT_OPTS="--with-bdeps=y" in /etc/make.conf if you would like this option to be enabled by default. If you would like a specific package to be updated in any case, you can use emerge --noreplace <atom> to have it added to the world set.

After running emerge --deep --with-bdeps=y --update world, it is a good idea to use emerge --pretend --depclean to see if there are any packages that it would remove. If that command shows a package that you would like to keep, use emerge --noreplace <atom> to have it added to the world set.

Warning: When you use emerge --depclean to remove unwanted packages, it is a good idea to run revdep-rebuild (from the gentoolkit package) afterwards.

Note: Run man emerge to view the manual page which documents all emerge options.

How can I check for reverse dependencies of a package, to know if it can be safely uninstalled?

Run emerge --depclean --pretend --verbose [atom]... to see if there are any reverse dependencies for matched packages.

Warning: When you use emerge --depclean to remove unwanted packages, it is a good idea to run revdep-rebuild (from the gentoolkit package) afterwards.

Can I mount the portage tree (/usr/portage) via NFS?

It is possible to share the portage tree (/usr/portage) over NFS so that emerge --sync only needs to be run on an NFS server. However, even though NFS clients do not need to run emerge --sync, they must run emerge --metadata each time that the portage tree is updated since otherwise their dependency calculations will slow down due to their metadata cache (located in /var/cache/edb/dep) becoming stale.

Note: NFS clients do not need to run emerge --metadata if they have the metadata_overlay cache module enabled in /etc/portage/modules. The portage manual page (run man portage) describes the steps necessary to enable this.

Note: With versions of portage >=2.1.5_rc6 there is never any need to run emerge --metadata as long as the user has not enabled FEATURES="metadata-transfer" in make.conf. When metadata-transfer is disabled, metadata cache from the /usr/portage/metadata/cache/ directory will be used directly. Run man make.conf to learn more about metadata-transfer.

If you encounter problems with an NFS setup it is important that you ensure you have the proper locking daemons on both the NFS client machines and the NFS server machine. Portage uses hardlinks over NFS in an attempt to lock files; if the locking daemon fails to lock files Portage may complain about failed or stale locks. There is a script /usr/lib/portage/bin/clean_locks that can be used to clean out old lockfiles.



Print

Updated September 21, 2007

Summary: FAQ Frequently Asked Questions about Portage.

Alec Warner
Author

Zac Medico
Contributor

Chris White
GuideXML

Donate to support our development efforts.

Support OSL

Support OSL

Gentoo Centric Hosting: vr.org

VR Hosted

Tek Alchemy

Tek Alchemy

SevenL.net

SevenL.net

Global Netoptex Inc.

Global Netoptex Inc.

Bytemark

Bytemark

Copyright 2001-2009 Gentoo Foundation, Inc. Questions, Comments? Contact us.