PMBOOTSTRAP(1)

πŸ“¦
version 3.10.3 Β· 2 versions
, in debian trixie, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– PMBOOTSTRAP(1) πŸ’–

okay bestie, welcome to the pmbootstrap manual page, straight out of the General Commands Manual ✨ this is the whole thing, no skips, no cuts, we're going the full distance 🫢


🌸 NAME 🌸

pmbootstrap β€” Develop and install postmarketOS πŸ‘‘


✨ SYNOPSIS ✨

pmbootstrap [options] action

πŸ¦‹ DESCRIPTION πŸ¦‹

so like, pmbootstrap is the central tool used in the development and installation of postmarketOS. it's giving main character energy fr fr, it does the whole thing πŸ’…


πŸŽ€ OPTIONS πŸŽ€

  • -h, --help β€” show the built-in help message and dip out. exit, done, bye πŸ’–
  • -V, --version β€” show pmbootstrap's version number and exit.
  • -c, --config config β€” tell it where your pmbootstrap.cfg file lives; by default it's ~/.config.
  • --config-channels channels β€” point it at the path of channels.cfg. by default this gets read from the master branch of pmaports.git, iconic ✨
  • -mp, --mirror-pmOS URL β€” pick which postmarketOS mirror to use. you can turn it off with -mp=''. and yeah you can stack multiple mirrors with -mp='one' -mp='two'. the default value is http://mirror.postmarketos.org/postmarketos.
  • -m, --mirror-alpine URL β€” pick which Alpine Linux mirror to use. default value is http://dl-cdn.alpinelinux.org/alpine.
  • -j, --jobs jobs β€” set how many parallel jobs to use when compiling. multitasking queen πŸ’…
  • -E, --extra-space space β€” give it an integer, the amount of additional space to allocate to the image, measured in MB (default 0).
  • -B, --boot-size size β€” set the boot partition size on the target machine, in MB (default 128).
  • -p, --aports aports β€” specify the path to postmarketOS aports (pmaports).
  • -t, --timeout time β€” set the number of seconds before hung processes get killed (default 900).
  • -w, --work work β€” specify the folder where all the data gets stored (chroots, caches, built packages, etc). it's the stash spot πŸŽ€
  • -y, --assume-yes β€” assume 'yes' to all question prompts. no more typing, just vibes.
  • --as-root β€” allow running as root. not recommended, because it may screw up the work folder's directory permissions. like, genuinely don't πŸ™ˆ
  • -o, --offline β€” do not attempt to update the package index files.
  • --no-ccache β€” do not cache the compiled output.
  • --no-cross β€” disable cross compiler; build only with QEMU and gcc.
  • -l, --log log β€” specify the path to the log file.
  • --details-to-stdout β€” print details (e.g. build output) to stdout instead of writing them to the log.
  • -v, --verbose β€” write even more information to the log files. the way that it just keeps going 😭
  • -q, --quiet β€” do not output any log messages. shhh 🀫

πŸ”₯ ACTIONS πŸ”₯

  1. init β€” initialize the config file.
  2. shutdown β€” shut down active chroots (unmount them and unregister QEMU binfmt).
  3. index β€” re-index all repositories with custom-built packages.
  4. work_migrate β€” migrate the work folder version.
  5. kconfig β€” change or edit kernel configs.
  6. export β€” create convenience symlinks to generated image files (system, kernel, initramfs, boot.img, etc).
  7. sideload β€” push packages to a running phone connected over USB or WiFi.
  8. netboot β€” launch an nbd server with the postmarketOS rootfs.
  9. flasher β€” flash something to the target device.
  10. initramfs β€” do something with the initramfs.
  11. pkgrel_bump β€” increase the pkgrel to indicate that a package must be rebuilt because of a dependency change.
  12. aportupgrade β€” check for outdated packages that need upgrading.
  13. newapkbuild β€” get a template to package new software.
  14. lint β€” run quality checks on pmaports (required to pass CI). no cap, CI will not let you through without it πŸ’€
  15. status β€” get a quick health check for the work dir. vibe check for your work folder fr fr.
  16. log β€” follow the pmbootstrap log file.
  17. zap β€” safely delete chroot folders.
  18. stats β€” show ccache stats.
  19. update β€” update all existing APKINDEX files.
  20. build_init β€” initialize the build environment.
  21. chroot β€” start a shell in a chroot.
  22. install β€” set up a device specific chroot and install to an SD card or image file.
  23. checksum β€” update aport checksums.
  24. aportgen β€” generate a postmarketOS-specific package build recipe (aport/APKBUILD).
  25. build β€” build a package for a specific architecture.
  26. config β€” get and set pmbootstrap options.
  27. bootimg_analyze β€” extract all the information from an existing boot.img.
  28. pull β€” update all git repositories that pmbootstrap cloned.
  29. ci β€” run continuous integration scripts locally of git repo in current directory.

and that's the whole page, bestie, you ate it πŸ’…πŸŒΈ this little number comes to you courtesy of the General Commands Manual and it's filed under PMBOOTSTRAP(1) β€” periodt βœ¨πŸ’–πŸ¦‹

πŸ“¦ where this page comes from