Channels.cfg reference
channels.cfg
is in the master branch of pmaports.git and maps postmarketOS pmaports branches to Alpine Linux aports branches for each release channel.
Example
# Reference: https://postmarketos.org/channels.cfg
[channels.cfg]
recommended=edge
[edge]
description=Rolling release channel
branch_pmaports=master
branch_aports=master
mirrordir_alpine=edge
[stable]
description=Stable release channel (first beta v20.05, does not have many devices yet)
branch_pmaports=v20.05
branch_aports=3.12-stable
mirrordir_alpine=v3.12
Sections
channels.cfg
Metadata that does not belong in a channel section.
Variable | Description | Possibles values |
---|---|---|
recommended
|
What pmbootstrap will recommend to install for new users. Initially this will be edge, until stable is ready, then we switch to stable. | edge , stable
|
edge, stable, stable-next, legacy
Channel sections, for which it will be possible to install postmarketOS. edge
and stable
will always be present, stable-next
and legacy
only during transition phases from one release to the next one.
Variable | Description | Possibles values |
---|---|---|
description
|
Text displayed next to the branch in pmbootstrap init . May have hints that a branch is not meant to be used yet.
|
|
branch_pmaports
|
Branch of postmarketOS pmaports.git and postmarketOS binary packages mirror directory name (as found here). | master , v20.05 , ...
|
branch_aports
|
Branch of Alpine Linux aports.git | master , 3.12-stable , ...
|
mirrordir_alpine
|
Alpine binary packages mirror directory name, as found here. (This is referred to as branch in the Alpine releases page, but it is not the same as the aports branch.) | edge , v3.12 , ...
|
Location
pmbootstrap reads the file from the master/origin branch of pmaports.git. This way, it will always use the latest fetched version, even if the last checked out master branch (master without the origin/ infront) is not up-to-date. This is likely to happen if a release branch was checked out, as a git pull
would then only update the reference from the release branch related to origin's release branch, master's reference would not change.
Release branches do not have a copy of the file, this would just require us to needlessly keep them all in sync.
View it with:
$ cd $(pmbootstrap config aports) # change directory to local checkout of pmaports.git
$ git show origin/master:channels.cfg
For development and testing, it is possible to override the path with --config-channels
:
$ pmbootstrap --config-channels /tmp/channels.cfg status