Skip to content

SBOM4RPMs analyzes the runtime dependencies of RPMS and outputs SBOMs in SPDX or CycloneDX format

License

Notifications You must be signed in to change notification settings

engelmi/sbom4rpm

Repository files navigation

SBOM for RPM

SBOM4RPM uses existing rpm and dnf features to resolve all dependencies of one or multiple RPM packages and generates an SBOM for each .rpm.

Usage

Start a container for building the custom RPM project and mount its directory into it. For example:

podman run -it -v <path-to-project>:/var/<your-project> <build-container> /bin/bash

Proceed by building the custom RPM project and create a repomd (xml-based rpm metadata) repository for your output directory:

# assuming all rpms have been put into '/tmp/custom-artifacts'
createrepo_c /tmp/custom-artifacts

Then install and run SBOM4RPMs:

pip install sbom4rpms
sbom4rpms --rpm-dir=/tmp/custom-artifacts/ --collect-dependencies --sbom-format=spdx --sbom-dir=sboms

Example: BlueChi

The example directory provides collected data and generated SBOMs for BlueChi.

About

SBOM4RPMs analyzes the runtime dependencies of RPMS and outputs SBOMs in SPDX or CycloneDX format

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages