pmbootstrap/README.md

45 lines
1.8 KiB
Markdown
Raw Normal View History

2017-05-26 20:09:50 +00:00
# pmbootstrap
2017-05-26 20:13:15 +00:00
Sophisticated chroot/build/flash tool to develop and install [postmarketOS](https://ollieparanoid.github.io/post/postmarketOS).
2017-05-26 20:09:50 +00:00
## Requirements
* GNU/Linux
* Python 3
* openssh
## Usage
Run `pmbootstrap init` first, to select a target device and the work folder, which will contain all the chroots and other data.
After that, you can run any command. All dependencies (e.g. chroots) will be installed automatically, if they are not available yet.
Here are some examples:
`./pmbootstrap.py --help`:
2017-05-26 20:09:50 +00:00
List all available commands
`./pmbootstrap.py log`:
2017-05-26 20:09:50 +00:00
Run tail -f on the logfile, which contains detailed output. Do this in a second terminal, while executing another `pmbootstrap` command to get all the details.
`./pmbootstrap.py chroot`:
2017-05-26 20:09:50 +00:00
Open a shell inside a native Alpine Linux chroot (~6 MB install size).
`./pmbootstrap.py chroot --suffix=buildroot_armhf`:
2017-05-26 20:09:50 +00:00
Open a shell inside an `armhf` Alpine Linux chroot, with qemu user mode emulation and binfmt support automatically set up.
`./pmbootstrap.py build heimdall`:
2017-05-26 20:09:50 +00:00
Build the "heimdall" package (specify any package from the `aports`-folder here).
`./pmbootstrap.py build heimdall --arch=armhf`:
2017-05-26 20:09:50 +00:00
Build the "heimdall" package for `armhf` inside the `armhf` chroot, with the cross-compiler installed in the native chroot (chroots are connected via distcc).
`./pmbootstrap.py install`:
2017-05-26 20:09:50 +00:00
Generate a system image file with a full postmarketOS installation. All required packages get built first, if they do not exist yet. You will get asked for the "user" password and the root partition password.
`./pmbootstrap.py install --sdcard=/dev/mmcblk0`:
2017-05-26 20:09:50 +00:00
Format and partition the SD card `/dev/mmcblk0`, and put a full postmarketOS installation on it
## Testsuite
2017-05-26 20:13:15 +00:00
Simply install `pytest` (via your package manager or via pip) and run it inside the pmbootstrap folder.