deb

package
v0.3.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 19, 2026 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Overview

Package deb implements a SystemDecomposer that reads the installed-package database used by dpkg-based distributions (Debian, Ubuntu, ...) and by distroless images, which ship the same database split into per-package files.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Decomposer

type Decomposer struct{}

Decomposer reads the dpkg database from a system filesystem and emits a protobom NodeList of the installed packages.

func New

func New() *Decomposer

New returns a ready-to-use dpkg decomposer.

func (*Decomposer) DefaultOptions

func (d *Decomposer) DefaultOptions() any

DefaultOptions returns the driver-level options used when none are set on DecomposerOptions.

func (*Decomposer) Extract

func (d *Decomposer) Extract(opts *api.DecomposerOptions) (*sbom.NodeList, error)

Extract opens opts.WorkDir as the system root and runs the FS-aware extractor against it. This lets the decomposer satisfy api.Decomposer for callers that work with on-disk paths; the SystemPackages unpacker calls ExtractFromFS directly so it can pass in non-OS filesystems too.

func (*Decomposer) ExtractFromFS

func (d *Decomposer) ExtractFromFS(source fs.FS, opts *api.DecomposerOptions) (*sbom.NodeList, error)

ExtractFromFS reads the dpkg database from source and returns the installed packages as a NodeList. Returns (nil, nil) when no dpkg database is present in the filesystem — dpkg is not the only system-package format we support and its absence is not an error.

func (*Decomposer) Requirements

func (d *Decomposer) Requirements(_ *api.DecomposerOptions) []api.Requirement

Requirements returns the decomposer's runtime requirements. The dpkg database is plain text, so there are none.

type Options

type Options struct {
	// DBPaths overrides the default search locations for the dpkg database.
	// Paths are relative to the FS root; each may point to a status file or
	// to a status.d-style directory.
	DBPaths []string
}

Options configures the dpkg decomposer.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL