Scroll to navigation

PMBOOTSTRAP(1) General Commands Manual PMBOOTSTRAP(1)

NAME

pmbootstrap - Develop and install postmarketOS

SYNOPSIS

pmbootstrap [options] action

DESCRIPTION

pmbootstrap is the central tool used in the development and installation of postmarketOS.

OPTIONS

Show the built-in help message and exit.
Show pmbootstrap's version number and exit.
Specify path to pmbootstrap.cfg file; defaults to ~/.config.
Specify path to channels.cfg, which is by default read from the master branch of pmaports.git.
Specify postmarketOS mirror to use. Can be disabled with -mp=''. Multiple mirrors can be specified with -mp='one' -mp='two'. The default value is http://mirror.postmarketos.org/postmarketos.
Specify Alpine Linux mirror to use. The default value is http://dl-cdn.alpinelinux.org/alpine.
Specify number of parallel jobs to use when compiling.
Specify an integer with the amount of additional space to allocate to the image, in MB (default 0).
Specify the boot partition size on target machine in MB (default 128).
Specify the path to postmarketOS aports (pmaports).
Specify the seconds after which hung processes get killed (default 900).
Specify the folder where all data gets stored (chroots, caches, built packages, etc).
Assume 'yes' to all question prompts.
Allow running as root. This is not recommended, as it may screw up the work folder's directory permissions.
Do not attempt to update the package index files.
Do not cache the compiled output.
Don't use the new, faster 'crossdirect' method; use the old 'distcc-sshd' method instead. Use if crossdirect broke something.
When using the cross compiler via distcc fails, do not fall back to compiling slowly with QEMU.
Disable cross compiler; build only with QEMU and gcc.
Specify path to log file.
Print details (e.g. build output) to stdout instead of writing to the log.
Write even more information to the log files.
Do not output any log messages.

ACTIONS

Initialize the config file.
Shut down active chroots (unmount them and unregister QEMU binfmt).
Re-index all repositories with custom-built packages.
Migrate the work folder version.
Change or edit kernel configs.
Create convenience symlinks to generated image files (system, kernel, initramfs, boot.img, etc).
Push packages to a running phone connected over USB or WiFi.
Launch an nbd server with the postmarketOS rootfs.
Flash something to the target device.
Do something with the initramfs.
Increase the pkgrel to indicate that a package must be rebuilt because of a dependency change.
Check for outdated packages that need upgrading.
Get a template to package new software.
Run quality checks on pmaports (required to pass CI).
Get a quick health check for the work dir.
Follow the pmbootstrap log file.
Follow the distccd log file.
Safely delete chroot folders.
Show ccache stats.
Update all existing APKINDEX files.
Initialize the build environment.
Start a shell in a chroot.
Set up a device specific chroot and install to an SD card or image file.
Update aport checksums.
Generate a postmarketOS-specific package build recipe (aport/APKBUILD).
Build a package for a specific architecture.
Get and set pmbootstrap options.
Extract all the information from an existing boot.img.
Update all git repositories that pmbootstrap cloned.