Skip to content
Release 3.1.0

This relaese allows using pmbootstrap with Alpine 3.21 / pmOS v24.12,
adds support for ppc64le, adds code to install keyboard configuration based on
chosen locale and has a bunch of fixes. Thanks to everybody who
contributed!

Features:
* pmb.config.apk_tools_min_version: add v3.21
* core: arch: Add ppc64le as a supported architecture (MR 2476)
* core: arch: Add ppc64le qemu mapping (MR 2476)
* qemu: run: Add support for ppc64le (MR 2476)
* pmb.helpers.repo.update: support PMB_APK_FORCE_MISSING_REPOSITORIES (MR 2505)
* pmb.helpers.locale: new module (MR 2497)
* pmb.helpers.locale: add unit tests (MR 2497)
* pmb.install._install: add setup_locale() (MR 2497)

Fixes:
* pmb.config.init: Call pmb.helpers.cli.confirm() correctly (MR 2489)
* helpers: git: ignore case in get_upstream_remote()
* pmb.helpers.git: fix get_upstream_remote() (MR 2496)
* pmb/aportgen: lookup package in APKINDEX with correct arch (MR 2493)
* build: newapkbuild: initialize chroot before use (MR 2495)
* helpers: pmaports: Fix package detection for cross g++ and musl-dev (MR 2476)
* helpers: pmaports: Always fall back to parsing all APKBUILDS (MR 2476)
* qemu: run: Invoke the correct qemu command (MR 2476)
* pmb.core.arch: Handle unsupported arches in from_machine_type() better (MR 2498)
* Fix apkbuild parsing in edge cases (MR 2503)
* pmb.aportgen.device: fix skipping when analyzing boot image (MR 2507)

Other:
* pmb: Add more type hints (MR 2489)
* build: envkernel: cleanup behaviour (MR 2491)
* .ci/docs.sh: add py3-sphinxcontrib-jquery to fix the failing search (MR 2500)
* tests: Assert that riscv64 is supported (MR 2476)
* core: chroot: Deduplicate supported arch list (MR 2476)
* pmb.core.arch: Use match statement instead of mappings (MR 2498)
* pmb.core.arch: Use annotations from future instead of quoted Arch type (MR 2498)
* Revert "CI: Add bootimg analysis integration test (MR 2467)" (MR 2483)
* test: conftest: adjust pmaports fixture (MR 2477) (MR 2483)
* test: parse: add tests for bootimg parsing (MR 2477) (MR 2483)
* test: aportgen: test deviceinfo fastboot content (MR 2477) (MR 2483)
* test: conftest: require_programs() automatically (MR 2483)
* build: envkernel: default to .output again (MR 2504)
* docs/api/pmb.commands: fix "failed to import" (MR 2506)
* docs: fix 'WARNING: Title underline too short' (MR 2506)
* CI: docs: fail on warning (MR 2506)
* docs: add env vars page with PMB_SUDO (MR 2506)
* docs: document PMB_APK_FORCE_MISSING_REPOSITORIES (MR 2506)
* .gitignore: add note for missing text editors (MR 2501)