1

I have installed and adjusted Gentoo distro with GNOME-3.1. To achieve this installation I had to add many-many lines to package.accept_keywords. Now (after a couple of months) I've decided to update my system with the following command:

emerge --sync
emerge -pv --update --deep --with-bdeps=y --newuse world

as was proposed by Gentoo Handbook and I've got many conflicts. The reason of many of these was that the updated software (mutter-3.6 as example) used the same SLOT as installed mutter-3.1. And some line like this:

=bla-bla-bla/mutter-3.1 ~amd64

was added to my package.accept_keywords.

As I understand I need to update my package.accept_keywords deleting =bla-bla-bla/mutter-3.1 ~amd64 and adding =bla-bla-bla/mutter-3.6 ~amd64. Thus the situation is the following (as I understand):

mutter-3.6 and mutter-3.1 can't coexist on the system (and shouldn't be). mutter-3.6 is going to update mutter-3.1, but as it is still not well tested it is marked with "~amd64". Thereby I need to add the following line proposed by emerge:

>=bla-bla-blah/mutter-3.6 ~amd64

to my package.accept_keywords file.

Questions:

  1. Can I add proposed line without deleting the old mutter-3.1 related line? It it safe, correct?
  2. If the 1st question is OK, hot can I get it reliable and automatically?
  3. How in general maintain (delete/update) package.accept_keywords file, especially when it contains many lines (preferred way is automatically)?
  4. Can I just trancate package.accept_keyword file and then update world or run emerge ... --autounmask-write? Is it safe, what will happen?
  5. Why I'm getting unstable mutter-3.6 on my system if package.accept_keyword contains exactly =bla-bla-bla/mutter-3.1 ~amd64 saying that only this version of mutter is possible to be unstable?
malvikus
  • 111
  • 3

1 Answers1

1
1. Can I add proposed line without deleting the old mutter-3.1 related line? It it safe, correct?

Yes, it's just fine. Once you have the upgrades done, just remove the old version lines.

2. If the 1st question is OK, hot can I get it reliable and automatically?

--autonunmask-write will work fine for this. I maintain my accept_keywords manually, but I have become quite fluent at it over the years.

3. How in general maintain (delete/update) package.accept_keywords file, especially when it contains many lines (preferred way is automatically)?

Full "magic" automation of this is a Holy Grail type thing. Everybody's machine is different, therefore it cannot be 100% automated. As a general rule, I keep my accept_keywords in alphabetical order + only accept a single version of a package.

4. Can I just trancate package.accept_keyword file and then update world or run emerge ... --autounmask-write? Is it safe, what will happen?

Sure, you can safely kill it. Just that it will affect the dependency calculations a lot. A lot of packages will be keyword-masked and portage will not be able to solve your dependencies, or it will simply downgrade everything to as stable as possible.

5. Why I'm getting unstable mutter-3.6 on my system if package.accept_keyword contains exactly =bla-bla-bla/mutter-3.1 ~amd64 saying that only this version of mutter is possible to be unstable?

Because some packages have a hard requirement of needing higher version of mutter. That's how portage will know to even suggest it for unmasking. Without this, portage would just let you start building these packages against mutter-3.1 and very likely that build would just fail somewhere in the middle.

lkraav
  • 786
  • 1
  • 8
  • 22