Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

If a user selects a package to be installed gentoo adds it to /var/lib/portage/world. Hence it can be used to install the same software on many systems by copying this file and run # emerge -uDN world afterwards.

How can I manage a set of packages that should be installed on all machines (setA) and another set of packages which should only go to the local machine (setB)?

share|improve this question

/etc/portage/sets/* and /var/lib/portage/world_sets can be used to accomplish this.

Read more about it in man portage.

share|improve this answer
will I have to create /etc/portage/sets/mynetbook and /etc/portage/sets/myofficepc and add @mynetbook to /var/lib/portage/world_sets and then share /etc/portage/sets/* on all machines? – Jonas Stein May 12 '13 at 11:51
and how will I install new software then? emerge foo would change the worldfile, but I want to sort foo to /etc/portage/sets/basesystem – Jonas Stein May 12 '13 at 12:12
Yes, you can do it that way. To install new software, you need to adjust the set file and emerge @world. Note that this only upgrades when you specify -u and only rebuilds based on USE flags if you specify -N, therefore if you don't specify these two options you can use it to just emerge a new package. You may be able to more easily accomplish things by writing some bash functions in your .bash_profile that manipulate these files for you. – Tom Wijsman May 12 '13 at 15:22

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.