Development/Building Packages

From Maemo Leste Wiki
Revision as of 23:04, 27 July 2019 by Wizzup (talk | contribs)
Jump to navigationJump to search

How you can build package

Building a packages is easier than one might think, it requires roughly the following steps:

  1. . Access to a Devuan/Debian system (you can use a VM running Maemo Leste or a Device running Maemo Leste.
  2. . Source code of a package, obtain either via git or apt source <packagename>.
  3. . Build a package using dpkg-buildpackage -uc -b (run from source directory)
  4. . Optionally install build dependencies with apt (dpkg-buildpackage will tell you)

You can now install the package you have just built with dpkg -i somename.deb.

Also see: https://wiki.debian.org/HowToPackageForDebian

Submitting changes

If you make changes to a package, please submit a pull request for the repository of that package, likely: https://github.com/maemo-leste/PACKAGENAME

For now, we will take care of updating tags and branches.


How packages end up in the repository

There are currently two repositories:

We will in the near future have a repository with "extra" packages, which are not core, but useful applications nonetheless.

There is also the (currently incomplete) Maemo Bayamo repository for Devuan Beowulf (aka Debian Buster) compatibility.

Packages in this repository get build by Jenkins, to which a select group of people has access. (Parazyd, Wizzup, Spinal84)


How packages are built using Jenkins

Read only access to the http frontend: http://phoenix.maemo.org/ (write-access can be granted)

All packages are hosted on https://github.com/maemo-leste and a current list of all the packages in Jenkins can be found here:

https://github.com/maemo-leste/jenkins-integration/blob/master/config.py

Every repository has a branch for each release, for example:

  1. maemo/ascii - main branch for Devuan Ascii target
  2. maemo/ascii-devel - main branch for Devuan Ascii, but possibly with unstable version
  3. maemo/beowulf - main branch for Devuan Beowulf version of the package

See Development/Branches for more information on the usual branches flow.