openwrt / asu

An image on demand server for OpenWrt based distributions

Home Page:https://sysupgrade.openwrt.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Server response: Error: Impossible package selection

rmappleby opened this issue · comments

This error was encountered when attempting to upgrade a BT Home Hub 5a from 22.03.5 to 23.05.3 using the attended sysupgrade:

Error building the firmware image
Server response: Error: Impossible package selection

Please report the error message and request
Request Data:

{
"url": "https://sysupgrade.openwrt.org",
"revision": "r20134-5f15225c1e",
"advanced_mode": "1",
"branch": "22.03",
"efi": null,
"request_hash": "a8f1f7ea3e0b09d2d18b4e5ea458066e",
"profile": "bt,homehub-v5a",
"target": "lantiq/xrx200",
"version": "23.05.3",
"packages": [
"ath10k-firmware-qca988x-ct",
"base-files",
"br2684ctl",
"bspatch",
"busybox",
"ca-bundle",
"cgi-io",
"dnsmasq",
"dropbear",
"dsl-vrx200-firmware-xdsl-a",
"dsl-vrx200-firmware-xdsl-b-patch",
"firewall4",
"fstools",
"fwtool",
"getrandom",
"iwinfo",
"jansson",
"jshn",
"jsonfilter",
"kernel",
"kmod-ath10k-ct",
"kmod-ath9k",
"kmod-atm",
"kmod-crypto-aead",
"kmod-crypto-crc32c",
"kmod-crypto-des",
"kmod-crypto-hash",
"kmod-crypto-manager",
"kmod-crypto-null",
"kmod-gpio-button-hotplug",
"kmod-leds-gpio",
"kmod-lib-crc-ccitt",
"kmod-lib-crc32c",
"kmod-ltq-atm-vr9",
"kmod-ltq-deu-vr9",
"kmod-ltq-ifxos",
"kmod-ltq-ptm-vr9",
"kmod-ltq-vdsl-vr9",
"kmod-ltq-vdsl-vr9-mei",
"kmod-ltq-vectoring",
"kmod-nf-conntrack",
"kmod-nf-conntrack6",
"kmod-nf-flow",
"kmod-nf-log",
"kmod-nf-log6",
"kmod-nf-nat",
"kmod-nf-reject",
"kmod-nf-reject6",
"kmod-nfnetlink",
"kmod-nft-core",
"kmod-nft-fib",
"kmod-nft-nat",
"kmod-nft-offload",
"kmod-owl-loader",
"kmod-ppp",
"kmod-pppoa",
"kmod-pppoe",
"kmod-pppox",
"kmod-slhc",
"kmod-usb-dwc2",
"libblobmsg-json",
"libbz2",
"libc",
"libiwinfo",
"libiwinfo-data",
"libiwinfo-lua",
"libjson-c",
"libjson-script",
"liblua",
"liblucihttp",
"liblucihttp-lua",
"libmnl",
"libnftnl",
"libnl-tiny",
"libubox",
"libubus",
"libubus-lua",
"libuci",
"libuclient",
"libucode",
"libustream-wolfssl",
"libwolfssl",
"linux-atm",
"logd",
"ltq-dsl-base",
"ltq-vdsl-app",
"ltq-vdsl-vr9-vectoring-fw-installer",
"lua",
"luci",
"luci-app-attendedsysupgrade",
"luci-app-firewall",
"luci-app-opkg",
"luci-base",
"luci-i18n-attendedsysupgrade-en",
"luci-lib-base",
"luci-lib-ip",
"luci-lib-jsonc",
"luci-lib-nixio",
"luci-mod-admin-full",
"luci-mod-network",
"luci-mod-status",
"luci-mod-system",
"luci-proto-ipv6",
"luci-proto-ppp",
"luci-ssl",
"luci-theme-bootstrap",
"mtd",
"netifd",
"nftables-json",
"odhcp6c",
"odhcpd-ipv6only",
"openwrt-keyring",
"opkg",
"ppp",
"ppp-mod-pppoa",
"ppp-mod-pppoe",
"procd",
"procd-seccomp",
"procd-ujail",
"px5g-wolfssl",
"rpcd",
"rpcd-mod-file",
"rpcd-mod-iwinfo",
"rpcd-mod-luci",
"rpcd-mod-rrdns",
"ubi-utils",
"ubox",
"ubus",
"ubusd",
"uci",
"uclient-fetch",
"ucode",
"ucode-mod-fs",
"ucode-mod-ubus",
"ucode-mod-uci",
"uhttpd",
"uhttpd-mod-ubus",
"urandom-seed",
"urngd",
"usign",
"wpad-basic-wolfssl"
],
"diff_packages": true,
"filesystem": "squashfs",
"client": "luci/git-23.093.42303-58b861d"
}
STDERR:
Generate local signing keys...
Generate local certificate...
Package list missing or not up-to-date, generating it.

Building package index...
Downloading https://downloads.openwrt.org/releases/23.05.3/targets/lantiq/xrx200/packages/Packages.gz
Updated list of available packages in /builder/build_dir/target-mips_24kc_musl/root-lantiq/../../../../builder/dl/openwrt_core
Downloading https://downloads.openwrt.org/releases/23.05.3/targets/lantiq/xrx200/packages/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/23.05.3/packages/mips_24kc/base/Packages.gz
Updated list of available packages in /builder/build_dir/target-mips_24kc_musl/root-lantiq/../../../../builder/dl/openwrt_base
Downloading https://downloads.openwrt.org/releases/23.05.3/packages/mips_24kc/base/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/23.05.3/packages/mips_24kc/luci/Packages.gz
Updated list of available packages in /builder/build_dir/target-mips_24kc_musl/root-lantiq/../../../../builder/dl/openwrt_luci
Downloading https://downloads.openwrt.org/releases/23.05.3/packages/mips_24kc/luci/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/23.05.3/packages/mips_24kc/packages/Packages.gz
Updated list of available packages in /builder/build_dir/target-mips_24kc_musl/root-lantiq/../../../../builder/dl/openwrt_packages
Downloading https://downloads.openwrt.org/releases/23.05.3/packages/mips_24kc/packages/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/23.05.3/packages/mips_24kc/routing/Packages.gz
Updated list of available packages in /builder/build_dir/target-mips_24kc_musl/root-lantiq/../../../../builder/dl/openwrt_routing
Downloading https://downloads.openwrt.org/releases/23.05.3/packages/mips_24kc/routing/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/23.05.3/packages/mips_24kc/telephony/Packages.gz
Updated list of available packages in /builder/build_dir/target-mips_24kc_musl/root-lantiq/../../../../builder/dl/openwrt_telephony
Downloading https://downloads.openwrt.org/releases/23.05.3/packages/mips_24kc/telephony/Packages.sig
Signature check passed.
Downloading file:packages/Packages
Updated list of available packages in /builder/build_dir/target-mips_24kc_musl/root-lantiq/../../../../builder/dl/imagebuilder
Downloading file:packages/Packages.sig
Signature check passed.
Collected errors:

  • opkg_install_cmd: Cannot install package ltq-vdsl-app.
  • opkg_install_cmd: Cannot install package luci-i18n-attendedsysupgrade-en.
  • check_data_file_clashes: Package libustream-mbedtls20201210 wants to install file /builder/build_dir/target-mips_24kc_musl/root-lantiq/lib/libustream-ssl.so
    But that file is already provided by package * libustream-wolfssl20201210
  • opkg_install_cmd: Cannot install package luci-ssl.
    make[2]: *** [Makefile:189: package_install] Error 255
    make[1]: *** [Makefile:154: _call_manifest] Error 2
    make: *** [Makefile:274: manifest] Error 2

So, having done more searching on the errors in the description, I eventually found this thread in another similar issue: #782 (comment)

That (and a post in the forums) explain the problem. Namely that some of the packages changed names between 22.03 and 23.05, some packages were consolidated in some fashion (the ones ending in "-en") and the underlying default SSL provider changed from wolfssl to mbedtls. I couldnt find a step by step guide to fixing this, so had to work it out. To hopefully save someone else some time, this is what worked for me, on my three BT Home Hub 5A's:

On the first device, login as root via SSH:
// Update the package repository
opkg update

// See what depends on the wolf SSL packages:
opkg whatdepends libustream-wolfssl

// -> luci-ssl git-20.244.36115-e10f954 depends on libustream-wolfssl20201210 --- ie, just luci?
// Ok, so grab the mbed SSL packages
opkg download libustream-mbedtls
opkg download libmbedtls12

// Remove wolf ssl
opkg remove --force-depends libustream-wolfssl20201210

// Install the downloaded mbed packages
opkg --cache /root install libmbedtls12_2.28.7-1_mips_24kc.ipk
opkg --cache /root install libustream-mbedtls20201210_2022-12-08-9217ab46-2_mips_24kc.ipk

// This should now give us working ASU
// So go ahead with the ASU via the web, remembering to also remove the following packages:

  • px5g-wolfssl
  • ltq-vdsl-app.
  • luci-i18n-attendedsysupgrade-en

// Once upgraded and rebooted, go to software in the webinterface:

  • update opkg
  • add ltq-vdsl-vr9-app
  • remove px5g-wolfssl // Not sure why this came back?
  • add px5g-mbedtls
  • remove wpad-basic-wolfssl
  • add wpad-basic-mbedtls
  • remove libwolfssl

// reboot
// go to ASU
// Recreate the firmware again (moves all the packages into the flash), and SAVE the firmware if you have other identical
// devices to flash (I have 2 more)
// Flash this device. At this point my device is working fine as a Wireless Access Point (not tried VDSL)

If you have other (identical) devices to flash, you can now login to each in turn via the web, and go to
System -> Backup / Flash Firmware
Then simply use the final firmware you saved from the first device to update the firmware on these devices. As that has all the changes pre-made, you dont have to do any more manipulation of the firmware on these subsequent devices.

Hope that helps