Skip to content

feat(suse): add support for openSUSE MicroOS and Leap Micro detection - #10988

Open
RajeshRajendiran wants to merge 1 commit into
aquasecurity:mainfrom
RajeshRajendiran:feat/opensuse-microos-leap-micro
Open

feat(suse): add support for openSUSE MicroOS and Leap Micro detection#10988
RajeshRajendiran wants to merge 1 commit into
aquasecurity:mainfrom
RajeshRajendiran:feat/opensuse-microos-leap-micro

Conversation

@RajeshRajendiran

Copy link
Copy Markdown

Description

Adds OS detection for openSUSE MicroOS (rolling release, Tumbleweed-based) and openSUSE Leap Micro (versioned, Leap-based) via their /etc/os-release ID values (opensuse-microos and opensuse-leap-micro).

As noted in the issue, exact vulnerability-advisory matching isn't feasible yet for either OS — MicroOS is versioned by build timestamp rather than a real release number, and no advisory data source currently covers either OS's versioning scheme. Per the issue's suggested compromise, this PR is scoped to detection only: users get correct OS family/name in package listings and SBOM output, and can pass --distro <family>/<version> to force vulnerability matching against a supported family/version if they want it.

Changes:

  • pkg/fanal/types/const.go: new OpenSUSEMicroOS/OpenSUSELeapMicro constants, wired into PurlNamespace() and OSTypes
  • pkg/fanal/analyzer/os/release/release.go: detect the two new ID values
  • pkg/purl/purl.go: map both to the rpm PURL type (same family as the other openSUSE/SUSE variants), so SBOM PURLs come out correct
  • New test fixtures + test cases mirroring the existing Tumbleweed/SLE Micro patterns
  • Docs (docs/guide/coverage/os/index.md, suse.md) updated with the new supported OSes and a note on the vulnerability-matching limitation

/etc/os-release ID values were not present anywhere in this repo, so they were cross-checked against two independent external sources (chef/ohai's platform-detection test fixtures and k0sctl's openSUSE detection code) rather than assumed.

Deliberately out of scope: pkg/detector/ospkg/detect.go / suse.go are untouched. Wiring up real vulnerability matching depends on trivy-db gaining a data source for these OSes first (currently it has none for MicroOS and only partial, disconnected plumbing for Leap Micro) — that's a separate PR against that repo.

Related issues

Checklist

  • I've read the guidelines for contributing to this repository.
  • I've followed the conventions in the PR title.
  • I've added tests that prove my fix is effective or that my feature works.
  • I've updated the documentation with the relevant information (if needed).
  • I've added usage information (if the PR introduces new options) — N/A, no new options introduced.
  • I've included a "before" and "after" example to the description (if the PR is a user interface change) — N/A, not a UI change.

Detect openSUSE MicroOS and Leap Micro via their /etc/os-release ID
so package listing and SBOM generation work for these OSes. Advisory
matching isn't wired up since no data source covers their versioning
scheme yet; --distro can be used to force matching against a
supported family/version in the meantime.

Close aquasecurity#8409
@CLAassistant

CLAassistant commented Jul 22, 2026

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@CLAassistant

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(opensuse): add MicroOS and Leap Micro support

2 participants