pmbootstrap(1)

Develop and install postmarketOS

Section 1 pmbootstrap bookworm source

Description

PMBOOTSTRAP

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

-h, --help

Show the built-in help message and exit.

-V, --version

Show pmbootstrap’s version number and exit.

-c, --config config

Specify path to pmbootstrap.cfg file; defaults to ˜/.config.

--config-channels channels

Specify path to channels.cfg, which is by default read from the master branch of pmaports.git.

-d, --port-distccd distccd
-mp
, --mirror-pmOS URL

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.

-m, --mirror-alpine URL

Specify Alpine Linux mirror to use. The default value is http://dl-cdn.alpinelinux.org/alpine.

-j, --jobs jobs

Specify number of parallel jobs to use when compiling.

-E, --extra-space space

Specify an integer with the amount of additional space to allocate to the image, in MB (default 0).

-B, --boot-size size

Specify the boot partition size on target machine in MB (default 128).

-p, --aports aports

Specify the path to postmarketOS aports (pmaports).

-t, --timeout time

Specify the seconds after which hung processes get killed (default 900).

-w, --work work

Specify the folder where all data gets stored (chroots, caches, built packages, etc).

-y, --assume-yes

Assume ’yes’ to all question prompts.

--as-root

Allow running as root. This is not recommended, as it may screw up the work folder’s directory permissions.

-o, --offline

Do not attempt to update the package index files.

--no-ccache

Do not cache the compiled output.

--no-crossdirect

Don’t use the new, faster ’crossdirect’ method; use the old ’distcc-sshd’ method instead. Use if crossdirect broke something.

--distcc-nofallback

When using the cross compiler via distcc fails, do not fall back to compiling slowly with QEMU.

--no-cross

Disable cross compiler; build only with QEMU and gcc.

-l, --log log

Specify path to log file.

--details-to-stdout

Print details (e.g. build output) to stdout instead of writing to the log.

-v, --verbose

Write even more information to the log files.

-q, --quiet

Do not output any log messages.

ACTIONS

init

Initialize the config file.

shutdown

Shut down active chroots (unmount them and unregister QEMU binfmt).

index

Re-index all repositories with custom-built packages.

work_migrate

Migrate the work folder version.

kconfig

Change or edit kernel configs.

export

Create convenience symlinks to generated image files (system, kernel, initramfs, boot.img, etc).

sideload

Push packages to a running phone connected over USB or WiFi.

netboot

Launch an nbd server with the postmarketOS rootfs.

flasher

Flash something to the target device.

initramfs

Do something with the initramfs.

pkgrel_bump

Increase the pkgrel to indicate that a package must be rebuilt because of a dependency change.

aportupgrade

Check for outdated packages that need upgrading.

newapkbuild

Get a template to package new software.

lint

Run quality checks on pmaports (required to pass CI).

status

Get a quick health check for the work dir.

log

Follow the pmbootstrap log file.

log_distccd

Follow the distccd log file.

zap

Safely delete chroot folders.

stats

Show ccache stats.

update

Update all existing APKINDEX files.

build_init

Initialize the build environment.

chroot

Start a shell in a chroot.

install

Set up a device specific chroot and install to an SD card or image file.

checksum

Update aport checksums.

aportgen

Generate a postmarketOS-specific package build recipe (aport/APKBUILD).

build

Build a package for a specific architecture.

config

Get and set pmbootstrap options.

bootimg_analyze

Extract all the information from an existing boot.img.

pull

Update all git repositories that pmbootstrap cloned.

ci

Run continuous integration scripts locally of git repo in current directory.