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

-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.