reuse - Man Page

A tool for compliance with the REUSE recommendations

Examples (TL;DR)

Synopsis

reuse [options] <command>

Description

reuse is a helper tool for the REUSE initiative. Its main functionality in reuse-lint(1) is to verify whether a project is compliant with the REUSE Specification. It also contains an array of convenience functions to enable developers to become compliant.

For more information on how to use reuse beyond a reference of the command-line options, see the accompanying documentation or read it at https://reuse.readthedocs.io. For further information about REUSE, see https://reuse.software.

Details

When searching for copyright and licensing tags inside of files, the tool does not strictly limit itself to the header comment as prescribed by the specification. It searches the entire file for REUSE information, whether in comments or not. This makes sure that the tool can parse any type of plain-text file, even if the comment style is not recognised.

The tool does not verify the correctness of copyright notices. If it finds any line containing '©', 'Copyright', or 'SPDX-FileCopyrightText:', then the tag and everything following it is considered a valid copyright notice, even if the copyright notice is not compliant with the specification.

Options

--debug

Enable debug logging.

--suppress-deprecation

Hide deprecation warnings.

--include-submodules

Do not ignore Git submodules; they are treated as though they are part of the project. This is not strictly compliant with the specification.

--include-meson-subprojects

Do not ignore Meson subprojects (i.e. the subprojects directory in the root of the project); they are treated as though they are part of the project. This is not strictly compliant with the specification.

--no-multiprocessing

Disable multiprocessing performance enhancer. This may be useful when debugging.

--root PATH

Set the root of the project to PATH. Normally this defaults to the root of the current working directory's VCS repository, or to the current working directory.

--help

Display help and exit. If no command is provided, this option is implied.

--version

Display the version and exit.

Environment

reuse respects the following environment variables.

REUSE_ENCODING_MODULE

Instead of automatically picking the best module to detect the encodings of files, reuse will use the module defined here. Its value must be python-magic, file-magic, charset_normalizer, or chardet.

Commands

reuse-annotate(1)

Add REUSE information to files.

reuse-convert-dep5(1)

Convert .reuse/dep5 to REUSE.toml.

reuse-download(1)

Download license files.

reuse-lint(1)

Verify whether a project is compliant with the REUSE Specification.

reuse-lint-file(1)

Verify whether individual files are compliant with the REUSE Specification.

reuse-spdx(1)

Generate SPDX bill of materials.

reuse-supported-licenses(1)

Print a list of supported licenses.

Author

Free Software Foundation Europe

Info

Oct 29, 2025 6.2.0