Skip to content

KEYWORDS filtering in solver #48

@kolkov

Description

@kolkov

Problem

GRPM solver currently doesn't filter packages by KEYWORDS. This means unkeyworded packages (like live/9999 ebuilds) are selected even though Portage would filter them out.

Example: sys-devel/gcc-16.0.9999 has no KEYWORDS, so Portage won't select it by default. But GRPM does.

Root Cause

The pkg.Package struct doesn't have a Keywords field, and there's no keyword filtering in the solver.

Expected Behavior

Solver should:

  1. Parse KEYWORDS from ebuild
  2. Filter packages that don't have KEYWORDS matching ACCEPT_KEYWORDS from make.conf
  3. By default, accept only stable keywords (e.g., amd64)
  4. With ~amd64 in ACCEPT_KEYWORDS, also accept testing packages

Implementation Plan

  1. Add Keywords []string field to pkg.Package
  2. Parse KEYWORDS in ebuild parser
  3. Add KeywordManager similar to MaskManager
  4. Integrate keyword filtering in solver

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions