Just wanted to let users of the OpenWrt forks LibreMesh and ImmortalWrt that your sysupgrade servers are working with owut, so probably work with LuCI ASU app, too.
Set the upstream server url as follows.
For LibreMesh:
uci set attendedsysupgrade.server.url='https://sysupgrade.antennine.org'
uci commit attendedsysupgrade
For ImmortalWrt:
uci set attendedsysupgrade.server.url='https://sysupgrade.kyarucloud.moe'
uci commit attendedsysupgrade
Before you do custom builds, you should go to those sites and check out the "Server Configuration" section at the bottom of the page, as they are configured differently than the OpenWrt ASU server. For example, max rootfs partition size on OpenWrt is 1024 MB, but on LibreMesh it's only 256 MB and on ImmortalWrt it's 4096 MB.
Those are both installed via dependencies, so you shouldn't be explicitly adding either one. But, if you want to make them top-level packages for whatever reason, and are on an apk-based snapshot, you have to refer to them by their full ABI-versioned package name, USE THE NON-ABI-VERSIONED NAMES NOW, so libustream-mbedtls20201210 or libustream-openssl20201210 (that name will change whenever the ABI changes, so don't hard-code it anywhere).
the problem is, if i don't explicitly using "-a libustream-xxx" it didn't got installed tho, ended with getting no ssl when wget-ing, so i need to generate from firmware selector web manually.
trying with the full package name as u mentioned ended with this
owut - OpenWrt Upgrade Tool 2025.05.12~8353c4e9-r1 (/usr/bin/owut)
ERROR: Package 'libustream-openssl20201210' is not available on this platform
ERROR: Errors collecting package data, terminating.
@4rtz1z@andybjackson BLAH. Someone's an idiot here and it's not you. I got that completely backwards, you should NOT specify packages with their ABI-versioned names as of the most recent fixes to the apk and rpcd packages. You SHOULD specify the packages using their non-versioned names, libustream-mbedtls, and it might/should work fine.
But, you need to have those aforementioned changes all present on your device (the upstream parts that live in the ASU server and buildbots have been working for a week+). What I suspect is happening is that you are in that gray area, with some bits of old code on your devices and that's trying to mix up the names.
Check this, and if your rpcd is old, then that's definitely the culprit. You'll need to brute force this next update somehow and that should fix this issue.
$ apk update && apk list rpcd
rpcd-2024.12.02~cc9a471c-r1 ... bad! old pre-abiversion
rpcd-2025.06.22~9389775c-r1 ... good! new contains abiversion handling
Yet still couldn't add libustream-mbedtls/openssl, always ended with same output
Status: Error: Impossible package selection: libustream-mbedtls not in manifest
Progress: 57s total = 0s in queue + 57s in build
....
ASU server stderr =
Generate local signing keys...
WARNING: can't open config file: /builder/shared-workdir/build/staging_dir/host/etc/ssl/openssl.cnf
WARNING: can't open config file: /builder/shared-workdir/build/staging_dir/host/etc/ssl/openssl.cnf
read EC key
writing EC key
WARNING: opening /builder/packages/packages.adb: No such file or directory
Package list missing or not up-to-date, generating it.
Building package index...
ERROR: Build failed with status 500
Indeed, I'm able to reproduce on a SNAPSHOT device now. Trying to find out what changed, as both 24.10 and SNAPSHOT imagebuilders are feeding back the same info, yet the ASU server borks on the SNAPSHOT results but not 24.10...
I cant find this in this thread: im trying to upgrade but want to exclude firewall4 from build. owut upgrade -r firewall4 doesnt work, since firewall4 is not even installed. Also owut upgrade --ignored-defaults firewall4 still installs firewall4. Whats the correct option to exclude packages from build?
You also have to remove the packages that depend on it, otherwise the build will just re-add it due to these implicit references.
Taking a look, you have to eliminate luci* to get rid of it.
$ opkg whatdepends firewall4
Root set:
firewall4
What depends on root set
luci-app-firewall 25.130.38691~48b6321 depends on uci-firewall
luci-light 25.130.38691~48b6321 depends on luci-app-firewall
And for completeness:
$ opkg whatprovides uci-firewall
What provides uci-firewall
firewall4
First of all I'd like to say that I really like the new upgrade tool!
When I upgraded my RPi 4 from 24.10.0 to 24.10.1 the process was flawless and over with faster than ever.
The upgrade from 24.10.1 to 24.10.2 was a bit rough though: owut check had warned me about 4 missing default packages but didn't say which ones. (I later found out about the --verbose flag from here. Apparently I had overlooked it in the wiki...)
Believing owut would take care of everything as it had previously done, I went ahead and upgraded anyway only to find the WAN interface (UE 300 adapter) not working.
As I had kept the 24.10.1 image I simply downgraded, used owut list and added the user installed packages to the firmware selectors list like back in the olden days.
In the meantime I tracked down the missing default packages (kmod-i2c-bcm2835, kmod-i2c-brcmstb, kmod-spi-bcm2835, kmod-spi-bcm2835-aux) to this commit.
So for future reference: what would be the right way to go about such a case?
EDIT: I didn't mean to reply to an old post but can't seem to be able to fix it after the fact. I shouldn't post in the evening when I'm tired it seems.
That's quite unexpected when upgrading within a release (crossing releases, well, I sort of expect it occasionally).
I looked at that commit and I'm not clear how it could break an already-working config, it only appears to add new stuff, with the new stuff replacing anything old, so it seems like it would be benign (or even fix something)?
Could you tell me your target and profile? I'm waiting for the fix to get through the buildbots so I can test things in production (already working fine on my local build).
Just FYI: today I could not reproduce the faulty upgrade!
I downgraded to the 24.10.1 image again, then upgraded with owut and the resulting image worked fine.
I made one small observation however: owut list --format fs-all didn't list bcm27xx-utils and mkf2fs in the images that were built using owut and it didn't list bcm27xx-utils in the image that was built using the firmware selector. All of the packages were present in the respective images though when I checked "installed packages" in the GUI.
Probably due to the way the packages were (or were not) included in the build list. If you add some default package explicitly, it becomes a "top-level" package, whereas they are normally/often implicit dependencies. The owut list variants only show top-level packages, so if something that is normally implicitly installed gets promoted somehow, you'll see differences in the owut list output, even though opk list-installed output is identical in both cases...
One issue I keep running into is that the file size ends up being too large to build~
Building package index...
/builder/build_dir/target-x86_64_musl/root-x86/etc/init.d/vsftpd: line 8: /lib/functions.sh: No such file or directory
./etc/init.d/vsftpd: line 8: /lib/functions.sh: No such file or directory
Pseudo file "dev" exists in source filesystem "/builder/build_dir/target-x86_64_musl/root-x86/dev".
Ignoring, exclude it (-e/-ef) to override.
error: ext4_allocate_best_fit_partial: failed to allocate 4197 blocks, out of space?
make[3]: *** [/builder/include/image.mk:399: /builder/build_dir/target-x86_64_musl/linux-x86_64/root.ext4] Error 1
make[2]: *** [Makefile:264: build_image] Error 2
make[1]: *** [Makefile:159: _call_image] Error 2
make: *** [Makefile:333: image] Error 2
and constantly get this error on all image builders so far~ unsure if this is exclusive to owut or just the "builder" this is while trying to build a snapshot~ with owut