forked from Mirror/pmbootstrap
Move all kconfig rules from pmb.config to a separate toml file pmb/data/kconfigcheck.toml. This is a fallback, pmbootstrap now prefers loading kconfigcheck.toml from the currently checked out pmaports branch if it exists. This finally allows having separate kconfig check rules per pmaports branch and makes the workflow of adjusting these rules much more pleasant as the rules and kernel configs can just be adjusted at the same time in pmaports! This patch also moves the definition of what rules should be checked for community and main devices, those that have pmb:kconfigcheck-community in their linux APKBUILD, to the new kconfigcheck.toml. This should make it much more intuitive, previously one needed to find the place in the pmbootstrap source and edit it there. Furthermore the "enforce_check" logic is removed. Previously pmbootstrap would print warnings for failed config checks in some cases, but not exit with error which was very confusing. Now exit 0 means all checks passed and exit 1 means, that there is at least one error. Use toml for the file, as discussed in pmbootstrap issue 2165. Python 3.11 has a native toml reader, use tomli for previous Python versions for compatibility.
60 lines
1.4 KiB
ReStructuredText
60 lines
1.4 KiB
ReStructuredText
|
|
#####
|
|
Usage
|
|
#####
|
|
|
|
pmbootstrap offers many options and actions and is normally ran from a shell.
|
|
|
|
|
|
Before pmbootstrap can be used, a number of configuration questions need to be answered. The sections below go into detail for the various questions.
|
|
|
|
.. code-block:: shell
|
|
|
|
$ pmboostrap init
|
|
|
|
If you already ran this before, run the following to update your local clone of pmaports.git instead, before moving straight onto the installation step:
|
|
|
|
.. code-block:: shell
|
|
|
|
$ pmbootstrap pull
|
|
|
|
For further details on the different actions please see below and refer to the wiki-arcticle on `pmbootstrap`_.
|
|
|
|
.. autoprogram:: pmb.parse:get_parser()
|
|
:prog: pmbootstrap
|
|
:groups:
|
|
|
|
Requirements
|
|
============
|
|
|
|
pmbootstrap requires the following:
|
|
|
|
* Linux distribution on the host system (`x86`, `x86_64`, `aarch64` or `armv7`)
|
|
|
|
.. note::
|
|
Windows subsystem for `Linux (WSL)`_ does **not** work! Please use `VirtualBox`_ instead.
|
|
|
|
|
|
* Linux kernel 3.17 or higher (`oldkernel`_)
|
|
|
|
.. note::
|
|
Kernel version 5.8 - 6.0 might have issues with loop-devices
|
|
|
|
|
|
* Python 3.9+
|
|
* For python3 <= 3.10: tomli
|
|
* OpenSSL
|
|
* git
|
|
* ps
|
|
* tar
|
|
* sudo or doas
|
|
|
|
|
|
.. _pmbootstrap: https://wiki.postmarketos.org/wiki/Pmbootstrap#Using_pmbootstrap
|
|
|
|
.. _Linux (WSL): https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux
|
|
|
|
.. _virtualbox: https://www.virtualbox.org/
|
|
|
|
.. _oldkernel: https://postmarketos.org/oldkernel
|
|
|