Debian packaging guide#

Note

This guide is still a work in progress. Please help us complete this document.

Native vs. non-native packages#

Native packages#

Native packages (e.g. https://gitlab.com/ubports/core/lomiri-system-settings) are repositories that contain a debian/ folder with the source used to create the Debian source package.

The name of the Debian source package generated from the repository and the name of the Git-repository should be the same.

Non-native packages#

Non-native package repositories (e.g. https://gitlab.com/ubports/core/packaging/sensorfw) contain a debian folder, usually without the source used to create the Debian source package. The URL of the upstream source tarball and filename of the .orig.tar.gz archive must be specified on a separate line each in a file called ubports.source_location inside the debian directory. The CI system uses this information to download and rename the upstream sources and to create a Debian source package.

Note

Some non-native package repositories may contain source code. However, if they contain debian/ubports.source_location, they are still packaging repos. Any customization has to still be done using patches in debian/patches. Do NOT modify files outside of debian/, or CI will fail to build the package.