Portage Advanced Usage: Difference between revisions

From Elvanör's Technical Wiki
Jump to navigation Jump to search
No edit summary
Line 24: Line 24:
* -t will display a tree view. It can be very useful to know which package pulls in another one.
* -t will display a tree view. It can be very useful to know which package pulls in another one.
* To emerge a particular version of a package: emerge =mypackage-0.6.3-r2
* To emerge a particular version of a package: emerge =mypackage-0.6.3-r2
== Features ==
* Collision protection cannot apparently be disabled, even with -collision-protect and -protect-owned. The only way to partly disable it is to use the environment variable COLLISION_IGNORE with a list of directories (those are not recursively ignored).


= Gentoolkit =
= Gentoolkit =

Revision as of 14:40, 19 June 2009

This article lists some neat things you can do with Portage/emerge.

/etc/portage directory

This directory contains important configuration files for Portage.

  • package.keywords lets you add keywords for individual packages.
  • package.use lets you add local USE flags for certain packages. To add/remove certain languages, you can use expanded USE flags:
USE="linguas_en -linguas_fr"
  • Note that on these two files, each line must contain only the package name and the options. Don't add any comment (comments must use a whole line) after the package name and options.

Portage world file

It is located in /var/lib/portage/world.

emerge options

  • --newuse will recompile packages that had their USE flags changed.
  • --depclean will attempt to remove packages that are no longer needed as dependencies.
  • --fetchonly will only fetch the distribution files.
  • -t will display a tree view. It can be very useful to know which package pulls in another one.
  • To emerge a particular version of a package: emerge =mypackage-0.6.3-r2

Features

  • Collision protection cannot apparently be disabled, even with -collision-protect and -protect-owned. The only way to partly disable it is to use the environment variable COLLISION_IGNORE with a list of directories (those are not recursively ignored).

Gentoolkit

  • equery files ebuild_name will list all the files installed by the specified ebuild.

Profiles

  • Profiles contain default configuration values and settings.
  • For a server machine, don't use the server profile. It is not yet production-ready. Use the generic profile, eg default/linux/x86/2008.0 (for a desktop box, use default/linux/x86/2008.0/desktop).

Useful Links