forked from Mirror/pmbootstrap
Alpine APKBUILDs have the concept of "provider priorities" that affect the choice of the provider to install when multiple packages provide a virtual package. One use case for this is to allow installation of different firmware versions. bq-paella can run unsigned firmware, therefore you have the choice between using the original firmware from the manufacturer, or a slightly newer version from Qualcomm for the Dragonboard 410c. We add provides="firmware-qcom-msm8916-wcnss" (the "virtual package") to both firmware-qcom-db410c-wcnss and firmware-bq-picmt-wcnss. At this point, attempting to install "firmware-qcom-msm8916-wcnss" would still fail with apk. (Because it does not know which provider to install.) To pick a default we can set e.g. provider_priority=100 for firmware-qcom-db410c-wcnss (the slightly newer version). In that case, firmware-qcom-db410c-wcnss should be installed by default. However, the user can choose to do "apk add firmware-bq-picmt-wcnss" to override the default choice in case of problems. In that case, the conflicting firmware-qcom-db410c-wcnss will be automatically removed. At the moment, pmbootstrap does not respect the "provider_priority" at all. In the above case, it would always install "firmware-bq-picmt-wcnss" during "pmbootstrap install" since that has the shortest name. Extend the pmbootstrap code to pick a provider with the highest priority (if any of the providers has a priority set). |
||
---|---|---|
.. | ||
pmb_test | ||
testdata | ||
static_code_analysis.sh | ||
test_apk_static.py | ||
test_aportgen.py | ||
test_aportgen_device_wizard.py | ||
test_bootimg.py | ||
test_build_is_necessary.py | ||
test_build_package.py | ||
test_chroot_interactive_shell.py | ||
test_config_init.py | ||
test_config_pmaports.py | ||
test_config_user.py | ||
test_config_workdir.py | ||
test_cross_compile_distcc.py | ||
test_crossdirect.py | ||
test_envkernel.py | ||
test_file.py | ||
test_folder_size.py | ||
test_frontend.py | ||
test_helpers_git.py | ||
test_helpers_lint.py | ||
test_helpers_package.py | ||
test_helpers_pmaports.py | ||
test_helpers_repo.py | ||
test_helpers_repo_missing.py | ||
test_helpers_status.py | ||
test_helpers_ui.py | ||
test_install.py | ||
test_kconfig_check.py | ||
test_keys.py | ||
test_mount.py | ||
test_newapkbuild.py | ||
test_parse_apkbuild.py | ||
test_parse_apkindex.py | ||
test_parse_depends.py | ||
test_pkgrel_bump.py | ||
test_qemu_running_processes.py | ||
test_questions.py | ||
test_run_core.py | ||
test_shell_escape.py | ||
test_version.py | ||
test_version_validate.py | ||
testcases_fast.sh |