Licomp Toolkit

~/opt/software-compliance-org/licomp-toolkit ~/opt/software-compliance-org/www Already up to date. ~/opt/software-compliance-org/www

Licomp Toolkit

Licomp Toolkit … Compatibility without the guesswork

The licomp-toolkit is a Python-based utility designed to evaluate license compatibility between different software components. It serves as a bridge to multiple compatibility resources, allowing developers and legal teams to determine if an inbound license (e.g., a library they want to use) is legally compatible with their project’s outbound license.

Example question with a licomp-toolkit answer

Can I use an inbound component under license LGPL-2.1-or-later AND Apache-2.0 to my program licensed under BSD-3-Clause?

$ licomp-toolkit -of text verify --inbound-license "LGPL-2.1-or-later AND Apache-2.0" --outbound-license "BSD-3-Clause"
outbound:      BSD-3-Clause
inbound:       Apache-2.0 AND LGPL-2.1-or-later
resources:     licomp_osadl, licomp_reclicense
provisioning:  binary-distribution
usecase:       library
compatibility: yes

Introduction

Licomp can be used to help determine if an inbound license is compatible with an outbound license. These compatibility checks need context which is often missing in tools, resources and discussions. The context above must be provided to licomp-toolkit. In short the context is:

Who should use licomp-toolkit?

It is particularly valuable for the following roles:

Software Developers and Engineers

Open Source Program Office (OSPO) Managers

Product Managers and Release Engineers

Release teams use the toolkit to avoid “legal blockers” that could delay a product launch.

Architectural overview

Graphical overview of Licomp Toolkit and its resources

Licomp toolkit is using the Licomp api to communicate with the Licomp resources. For a better understanding of Licomp we suggest you read:

Licomp resources

Licomp toolkit uses the following compatibility resources using the Licomp api: licomp-hermione, licomp-osadl, licomp-proprietary, licomp-reclicense, licomp-dwheeler and licomp-gnuguide.

Using Licomp Toolkit

Command line interface (brief intro)

If you want to check if the following is compatible:

$ licomp-toolkit verify -il MIT -ol LGPL-2.0-or-later | jq .summary.results
{
  "nr_valid": "1",
  "yes": {
    "count": 1,
    "percent": 100.0
  }
}

In the above example, licomp-toolkit by default chose:

For more detailed guides to licomp-toolkit, please check out:

Python module

If you want to check if the following is compatible:

>>> from licomp_toolkit.toolkit import LicompToolkit
>>> licomp_toolkit = LicompToolkit()
>>> compatibilities = licomp_toolkit.outbound_inbound_compatibility("MIT", "LGPL-2.0-or-later", "library", "binary-distribution")
>>> print(str(compatibilities['summary']['results']))
{'nr_valid': '1', 'yes': {'count': 1, 'percent': 100.0}}

For a more detailed guide to the licomp-toolkit Python api, please check out: Licomp Toolkit - Python module

License

Licomp Toolkit is released in GPL-3.0-or-later

Installing Licomp Toolkit

See Installing Licomp Toolkit

What tools use Licomp Toolkit

Sponsors

As part of Automated FOSS License Compliance, Licomp Toolkit is sponsored (2025-2026) by:

NLnet logo NGI0Core logo

About this page

This page was automatically generated from ssh://git@codeberg.org/software-compliance-org/licomp-toolkit/src/branch/main/README.md