eix-test-obsolete does not handle currently wildcard-atoms. Reproducible: Always Steps to Reproduce: 1. install portage-2.2 2. set *games*/* to the /etc/portage/package.keywords 3. run eix-test-obsolete brief Actual Results: ... Redundant in /etc/portage/package.accept_keywords: [N] dev-games/KXL (1.1.7-r2): Development Library for making games for X [N] dev-games/cardpics (0.4): set of free cards sets ... Found 798 matches. Not installed but in /etc/portage/package.accept_keywords: [N] dev-games/KXL (1.1.7-r2): Development Library for making games for X [N] dev-games/cardpics (0.4): set of free cards sets ... Found 1025 matches. Expected Results: The atom "*games*/*" is redundant only if all installed matched packages are stable. (No change by removing atom) The atom "*games*/*" is "not installed" only if no matched packages are installed.
This is expected and correct behavior: The package dev-games/KXL (and many others) are unmasked by an entry in package.accept_keywords although they are not installed and although it would not be necessary to unmask them; so your mask is indeed redundant for all these packages. Note that eix tests on a per-package basis, i.e. eix does not care whether you used one or ten lines to unmask packages; for instance the two lines <dev-games/KXL-1.1.7-r2 >=dev-games/KXL-1.1.7-r2 or dev-games/KXL would produce identical output. Redundancy tests on a per-line basis of /etc/portage/package.* are not compatible with tests on a per-package basis which eix does; hence, they are not (and never will be) supported by eix. As a solution of your problem, since obviously you decided to consider your *games*/* entry not redundant (although it is in a sense), I suggest that you create a /etc/portage/package.nowarn file or directory and add there the line *games*/* no_change in_keywords This will prevent the "false" (in your opinion) positives but will still give you a warning about duplicate unmasking if you have another entry like dev-games/KXL in your /etc/portage/package.accept_keywords.
Thanks, the "nowarn" Option solved the problem for me.
I am aware that the solution is not perfect: The package-based strategy of eix has many disadvantages, but the line-based strategy does not fit into eix; it would require an implementation rather independent of eix. Thus, I close this bug as CANTFIX.
*** Bug 354723 has been marked as a duplicate of this bug. ***
*** Bug 371855 has been marked as a duplicate of this bug. ***