Difference between revisions of "Development/Building Packages"

From Maemo Leste Wiki
Jump to navigationJump to search
(Update for new repository structure)
Line 23: Line 23:
There are currently two repositories:
There are currently two repositories:


* The main repository: https://maedevu.maemo.org/leste/
* The main repository: https://maedevu.maemo.org/leste
* The testing/development repository: https://maedevu.maemo.org/leste-devel
* The extras repository: https://maedevu.maemo.org/extras


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


There is also the (currently incomplete) Maemo Bayamo repository for Devuan Beowulf (aka Debian Buster) compatibility.
The codenames and an /etc/apt/sources.list file entry would look like the following:
 
<code>
deb https://maedevu.maemo.org/leste ascii main contrib non-free
 
deb https://maedevu.maemo.org/extras ascii main contrib non-free
</code>


Packages in this repository get build by Jenkins, to which a select group of people has access. (Parazyd, Wizzup, Spinal84)
Packages in this repository get build by Jenkins, to which a select group of people has access. (Parazyd, Wizzup, Spinal84)
Line 35: Line 41:
== How packages are built using Jenkins ==
== How packages are built using Jenkins ==


Read only access to the http frontend: http://phoenix.maemo.org/ (write-access can be granted)
Read only access to the http frontend: https://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:
All packages are hosted on https://github.com/maemo-leste and a current list of all the packages in Jenkins can be found here:

Revision as of 21:06, 3 March 2020

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:

The packages in the extras repository are not core, but useful applications nonetheless.

The codenames and an /etc/apt/sources.list file entry would look like the following:

deb https://maedevu.maemo.org/leste ascii main contrib non-free

deb https://maedevu.maemo.org/extras ascii main contrib non-free

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: https://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.