Attended Sys Upgrade not including proper packages

I specify it to install these two:

px5g-wolfssl
libustream-wolfssl20201210

Instead, it comes with these (in which I have to manually remove & replace them):

px5g-mbedtls
libustream-mbedtls20201210

From other posts I see it has something to do with a conflict during the build process, but I am unsure how to go about it from there to negate these issues. How can I override it wanting to add mbed-tls?

You can not, you have to use your own imagebuilder to maintain substituted packages (learned it trying to keep firewall(3) )

Can you point me in the right direction for that?

This is what auc / owut does
https://sysupgrade.openwrt.org/json/v1/overview.json

You can post package list into firmware-selector to avoid that.

That's only true for ASU device clients that apply the package_changes (owut, auc and LuCI Attended Sysupgrade). The Firmware Selector will let you replace them, just add this to the package list when you do a build:

px5g-wolfssl
libustream-wolfssl
-px5g-mbedtls
-libustream-mbedtls
3 Likes

Thank you, using ASU to build my list, then copying it and adding the negative markers at the end to those packages worked as needed. I wish ASU could do the same, sadly it doesn't. Oh well, it's still useful for giving me my essential packages.

@brada4 and @satansflipflops

I just looked at owut again and it indeed can be used to keep packages that get auto-replaced using package_changes. It's sort of hacky and I need to see about a real solution, but currently you can do things like this and it works.

Say you need to use firewall instead of firewall4 (brada4's use case). Normally, the package_changes entry https://github.com/openwrt/asu/blob/main/asu/config.py#L7 will just do the replacement, but due to the order of operations inside owut, you can say this and retain firewall:

$ owut download --remove firewall4 --add firewall
...
WARNING: Package 'firewall4' is a dependency, removal will have no effect on the build
...
< some other messages about firewall and firewall4 >
...

When the build is done, you can look in /tmp/firmware-manifest.json and confirm that indeed the image was built with firewall and not firewall4.

The same thing works with --remove px5g-mbedtls,libustream-mbedtls --add px5g-wolfssl,libustream-wolfss (or anything else in the package changes table).

Pretty inelegant, but at least it lets you work around the package issues a bit more easily...

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.