Pmaports.git

(GitLab) holds the package build recipes of postmarketOS, in the format. It is automatically checked out by pmbootstrap during  (unless overridden with  ). The default location of the local checkout is :

Remember the  command, it will print this path as well as the checked out branch and some other useful status information.

Naming
pmaports stands for postmarketOS aports, and aports in turn are the Alpine ports. The name pmaports was chosen when pmaports.git was split from pmbootstrap.git in 2018, to make obvious that this is not a fork of Alpine's aports.git repository. Before that, it was a subdirectory called  in the pmbootstrap.git repository. Therefore pmbootstrap sometimes refers to pmaports as "aports" (e.g.  and   are both about pmaports, not Alpine's aports).

Differences to Alpine's aports

 * pmaports support an arbitrary amount of subdirectories. All packages created will end up in the same index file, whereas in Alpine's aports, the contents of each directory ( , , ...) will end up in a separate index (and deeper directory levels are not supported). This was chosen so users only need to download one additional   for all of the postmarketOS packages, while still having a flexible directory structure in the git repository.
 * pmaports has metadata about compatibility with pmbootstrap in pmaports.cfg
 * pmaports has metadata about release channels in channels.cfg (master branch only)