spdx2debian - An SPDX to debian/copyright converter
This tool converts SPDX metadata from a source repository into the
debian/copyright format.
It is intended for Debian maintainers packaging software whose upstream projects are fully compliant with the REUSE specification and therefore provide complete SPDX licensing metadata.
A detailed description of the design principles, requirements, and usage can be found in the User Manual.
The project is active and in constant development.
Don't hesitate to voice your wishes and opinions by utilizing the
issue section.
The initial developer and sole maintainer is
buhtz.
Donations
are collected via
Liberapay and
Ko-fi, but going to him as a person,
not a specific project, though much of the support also benefits this
project.
March 2026
Table of contents
Installation
There are two ways to install this application: For users and for developers contributing to the application's development.
Regular installation for users
If pipx is not available on your system check your GNU/Linux distributions
package repository or install it from PyPi (pip install pipx).
spdx2debian is not yet available in a GNU/Linux distribution and there are no plans to release it on PyPi.
Variant A - Latest stable release
See the Releases section or run the following command to install the latest stable release from upstream repository:
$ pipx install https://codeberg.org/buhtz/spdx2debian/archive/v0.0.1.zip
Variant B - Latest development version
Clone the repository (or unpack the source tarball) and run pipx in this
directory.
$ git clone https://codeberg.org/buhtz/spdx2debian.git
$ cd spdx2debian
$ pipx install .
Editable installation for developers to contribute
First of all fork/clone/copy the repository to the local machine and navigate
into the repositories directory. Use a virtual environment and the extra
[develop] dependency target:
$ git clone https://codeberg.org/buhtz/spdx2debian.git
$ cd spdx2debian
# Create the environment
$ python3 -m venv .venv
# Activate the environment
$ source .venv/bin/activate
# Install
$ pip3 install --editable .[develop]
# Later, when finished with the work, deactivate the environment.
$ deactivate
Branching model - OneFlow
The OneFlow branching model
(as described by Adam Ruka)
is used. There is only one branch. The latest development state is represented
by the most recent commit on the default branch, named latest. The stable
version (the most recent release) resides in the same branch and is identified
by the highest version tag (e.g. v0.1.2).
Technologies & Standards
- Python 3
- Semantic Versioning
- OneFlow branching model
- Common Changelog
- Conventional Commits
- REUSE Software and SPDX (ISO/IEC 5962:2021) specifications
- debian/copyright formally known as DEP-5
Licensing of contributed material
Please keep in mind that code, documentation and other material submitted to the project are considered licensed under the same terms (see LICENSES) as the rest of the work. The project does use the specifications from REUSE Software and SPDX to store license and copyright information. See the projects REUSE compliance status.