Hi again @efahl , integer. ![]()

I'm building it currently locally.
Let's see.
Besides, thank you very much for all your work!
Cheers!
![]()
Hi again @efahl , integer. ![]()

I'm building it currently locally.
Let's see.
Besides, thank you very much for all your work!
Cheers!
![]()
Oh man...
This seems from my layman's eyesight, amazing!
It seems a sort of wizzardry... But not to the eyes of those who made it and neither to those who understand its internals...
Again, mesmerized thank you!
Cheers!
![]()
You are right, it is listed. I don’t know what I did wrong to miss it in my previous look.
39s is pretty good. A lot of time can be spent by the ASU server downloading the docker container, if the build is new and it isn't already in the local podman/docker cache. You'll see the Status: container_setup last 3-4-5 minutes sometimes when that happens. It also doesn't help when the AI crawlers kill the upstream servers, that makes a bunch of steps really slow.
What I mean is, for example, in the old version of OWUT, even though the image is already in the cache and does not need to be built again.
Status: done
Progress: 0s total = 0s in queue + 0s in build
Build succeeded in 0s total = 0s in queue + 0s to build:
---> Then there was a delay of several minutes here before it was saved ↓ <---
Image saved : /tmp/firmware.bin
This also occurs on other routers that have sufficient memory (256MB).
Thanks to you, this no longer happens with the latest version of OWUT.
![]()
Thank you for the pointer.
I eventually managed to use owut to upgrade the system. Luckily, I had a backup to restore from because it seems to have lost all the configuration.
This is weird,
If you go to https://downloads.openwrt.org/releases/23.05-SNAPSHOT/
Packages are still being updated for the 23.05-SNAPSHOT branch, so if you were still using 23.05-SNAPSHOT and updating with Owut, you would currently be running a 13th September 2025 base with 31st October 2025 packages.
But 23.05 is end of life, 23.05.6 is the last version, and after the known exploit affecting any version below 24.10.4, which will not be fixed in 23.05 and below:
This ubusd exploit is not going to be fixed in any Openwrt version below 24.10.4
Same thing happened on 22.03-SNAPSHOT, target bases stopped at 23 July 2024, but packages kept being updated until 1st November 2024:
Packages for 21.02-SNAPSHOT were stopped after 6 days:
So is the 23.05 packages still being updated a mistake, should they not have stopped in September, and should Owut and Firmware Selector be offering builds that are end of life with known exploits in the wild?
The ASU clients don't have any real choice in the matter, they just grab whatever is published in https://sysupgrade.openwrt.org/json/v1/overview.json, which is dictated by upstream config.
It's a good question, but above my pay grade. Maybe start a new thread and tag some of the build managers/maintainers?
(As an aside, most of the 23.05-SNAPSHOT builds are unusable, as the kmods have been deleted somehow: https://downloads.openwrt.org/releases/23.05-SNAPSHOT/targets/mediatek/mt7622/kmods/)
Hello,
I'm new to OpenWrt, and even though I'm starting to understand it better, this is my first time upgrading from 24.10.2 to 24.10.4.
I've already created a backup using Luci's integrated backup feature and added some folders to the sysupgrade.conf file:
cat /etc/sysupgrade.conf
## This file contains files and directories that should
## be preserved during an upgrade.
# /etc/example.conf
/etc/openvpn/
/etc/easy-rsa/
/etc/banip/
/etc/openvpn
/etc/wireguard/
/etc/ssh/sshd_config.d/
/etc/msmtprc
/etc/profile.d/
/etc/rc.local
/etc/shells
/etc/sysupgrade.conf
/root
I want to make sure I keep my configuration intact
It took me several hours/days to achieve this, especially for WireGuard and OpenVPN servers ![]()
I'm unsure how to use owut to upgrade safely.
I own a GL.iNet Flint2 GL-MT6000, flashed with OpenWrt 24.10.2 since July.
I need guidance to ensure a successful upgrade ![]()
From my understanding, the owut list command shows all packages I installed after setting up 24.10.2. How can I confirm that all these packages will be installed with 24.10.4? Does owut handle this?
After reading further, I tried using owut check:
ASU-Server https://sysupgrade.openwrt.org
Upstream https://downloads.openwrt.org
Target mediatek/filogic
Profile glinet_gl-mt6000
Package-arch aarch64_cortex-a53
Version-from 24.10.2 r28739-d9340319c6 (kernel 6.6.93)
Version-to 24.10.4 r28959-29397011cc (kernel 6.6.110)
2 packages missing in target version, cannot upgrade
81 packages are out-of-date
ERROR: Checks reveal errors, do not upgrade
owut check -v 1.6s 14:39 02.11.25 5%
owut - OpenWrt Upgrade Tool 2025.10.24~07453922-r1 (/usr/bin/owut)
ASU-Server https://sysupgrade.openwrt.org
Upstream https://downloads.openwrt.org
Target mediatek/filogic
Profile glinet_gl-mt6000
Package-arch aarch64_cortex-a53
Root-FS-type squashfs
Sys-type sysupgrade
Version-from 24.10.2 r28739-d9340319c6 (kernel 6.6.93)
Version-to 24.10.4 r28959-29397011cc (kernel 6.6.110)
Build-commit https://git.openwrt.org/?p=openwrt/openwrt.git;a=shortlog;h=29397011cc
Build-FS-type squashfs
Build-at 2025-10-19T16:37:45Z (~14 days ago)
Image-prefix openwrt-24.10.4-mediatek-filogic-glinet_gl-mt6000
Image-URL https://downloads.openwrt.org/releases/24.10.4/targets/mediatek/filogic
Image-file openwrt-24.10.4-mediatek-filogic-glinet_gl-mt6000-squashfs-sysupgrade.bin
Installed 327 packages
Top-level 140 packages
Default 39 packages
User-installed 107 packages (top-level only)
Package version changes:
base-files 1660~d9340319c6 1665~29397011cc
kmod-cfg80211 6.6.93.6.12.6-r2 6.6.110.6.12.52-r1
kmod-crypto-aead 6.6.93-r1 6.6.110-r1
kmod-crypto-authenc 6.6.93-r1 6.6.110-r1
kmod-crypto-ccm 6.6.93-r1 6.6.110-r1
kmod-crypto-cmac 6.6.93-r1 6.6.110-r1
kmod-crypto-crc32c 6.6.93-r1 6.6.110-r1
kmod-crypto-ctr 6.6.93-r1 6.6.110-r1
kmod-crypto-des 6.6.93-r1 6.6.110-r1
kmod-crypto-gcm 6.6.93-r1 6.6.110-r1
kmod-crypto-geniv 6.6.93-r1 6.6.110-r1
kmod-crypto-gf128 6.6.93-r1 6.6.110-r1
kmod-crypto-ghash 6.6.93-r1 6.6.110-r1
kmod-crypto-hash 6.6.93-r1 6.6.110-r1
kmod-crypto-hmac 6.6.93-r1 6.6.110-r1
kmod-crypto-hw-safexcel 6.6.93-r1 6.6.110-r1
kmod-crypto-kpp 6.6.93-r1 6.6.110-r1
kmod-crypto-lib-chacha20 6.6.93-r1 6.6.110-r1
kmod-crypto-lib-chacha20poly1305 6.6.93-r1 6.6.110-r1
kmod-crypto-lib-curve25519 6.6.93-r1 6.6.110-r1
kmod-crypto-lib-poly1305 6.6.93-r1 6.6.110-r1
kmod-crypto-manager 6.6.93-r1 6.6.110-r1
kmod-crypto-md5 6.6.93-r1 6.6.110-r1
kmod-crypto-null 6.6.93-r1 6.6.110-r1
kmod-crypto-rng 6.6.93-r1 6.6.110-r1
kmod-crypto-seqiv 6.6.93-r1 6.6.110-r1
kmod-crypto-sha1 6.6.93-r1 6.6.110-r1
kmod-crypto-sha256 6.6.93-r1 6.6.110-r1
kmod-crypto-sha3 6.6.93-r1 6.6.110-r1
kmod-crypto-sha512 6.6.93-r1 6.6.110-r1
kmod-fs-ext4 6.6.93-r1 6.6.110-r1
kmod-gpio-button-hotplug 6.6.93-r5 6.6.110-r5
kmod-hwmon-core 6.6.93-r1 6.6.110-r1
kmod-leds-gpio 6.6.93-r1 6.6.110-r1
kmod-lib-crc-ccitt 6.6.93-r1 6.6.110-r1
kmod-lib-crc16 6.6.93-r1 6.6.110-r1
kmod-lib-crc32c 6.6.93-r1 6.6.110-r1
kmod-libphy 6.6.93-r1 6.6.110-r1
kmod-mac80211 6.6.93.6.12.6-r2 6.6.110.6.12.52-r1
kmod-mt76-connac 6.6.93.2025.02.14~e5fef138-r1 6.6.110.2025.09.15~6467af3b-r1
kmod-mt76-core 6.6.93.2025.02.14~e5fef138-r1 6.6.110.2025.09.15~6467af3b-r1
kmod-mt7915e 6.6.93.2025.02.14~e5fef138-r1 6.6.110.2025.09.15~6467af3b-r1
kmod-mt7986-firmware 6.6.93.2025.02.14~e5fef138-r1 6.6.110.2025.09.15~6467af3b-r1
kmod-netlink-diag 6.6.93-r1 6.6.110-r1
kmod-nf-conntrack 6.6.93-r1 6.6.110-r1
kmod-nf-conntrack6 6.6.93-r1 6.6.110-r1
kmod-nf-flow 6.6.93-r1 6.6.110-r1
kmod-nf-log 6.6.93-r1 6.6.110-r1
kmod-nf-log6 6.6.93-r1 6.6.110-r1
kmod-nf-nat 6.6.93-r1 6.6.110-r1
kmod-nf-reject 6.6.93-r1 6.6.110-r1
kmod-nf-reject6 6.6.93-r1 6.6.110-r1
kmod-nfnetlink 6.6.93-r1 6.6.110-r1
kmod-nft-core 6.6.93-r1 6.6.110-r1
kmod-nft-fib 6.6.93-r1 6.6.110-r1
kmod-nft-nat 6.6.93-r1 6.6.110-r1
kmod-nft-offload 6.6.93-r1 6.6.110-r1
kmod-nls-base 6.6.93-r1 6.6.110-r1
kmod-phy-aquantia 6.6.93-r1 6.6.110-r1
kmod-ppp 6.6.93-r1 6.6.110-r1
kmod-pppoe 6.6.93-r1 6.6.110-r1
kmod-pppox 6.6.93-r1 6.6.110-r1
kmod-scsi-core 6.6.93-r1 6.6.110-r1
kmod-slhc 6.6.93-r1 6.6.110-r1
kmod-thermal 6.6.93-r1 6.6.110-r1
kmod-tun 6.6.93-r1 6.6.110-r1
kmod-udptunnel4 6.6.93-r1 6.6.110-r1
kmod-udptunnel6 6.6.93-r1 6.6.110-r1
kmod-usb-core 6.6.93-r1 6.6.110-r1
kmod-usb-storage 6.6.93-r1 6.6.110-r1
kmod-usb-storage-uas 6.6.93-r1 6.6.110-r1
kmod-usb-xhci-hcd 6.6.93-r1 6.6.110-r1
kmod-usb-xhci-mtk 6.6.93-r1 6.6.110-r1
kmod-usb3 6.6.93-r1 6.6.110-r1
kmod-wireguard 6.6.93-r1 6.6.110-r1
libubus 2025.07.02~5952b48e-r1 2025.10.17~60e04048-r1
libubus-lua 2025.07.02~5952b48e-r1 2025.10.17~60e04048-r1
luci-app-argon-config 0.9 missing to-version
luci-theme-argon 2.3.2-r20250207 missing to-version
ubus 2025.07.02~5952b48e-r1 2025.10.17~60e04048-r1
ubusd 2025.07.02~5952b48e-r1 2025.10.17~60e04048-r1
2 packages missing in target version, cannot upgrade
81 packages are out-of-date
Default package analysis:
Default Provided-by
nftables nftables-json
There are currently package build failures for 24.10.4 aarch64_cortex-a53:
Feed: packages
Flask Sat Nov 1 23:22:09 2025 - not installed
django Sat Nov 1 22:45:12 2025 - not installed
fwupd Sat Nov 1 22:17:00 2025 - not installed
pillow Sat Nov 1 22:30:01 2025 - not installed
pymysql Sat Nov 1 23:22:40 2025 - not installed
python-automat Sat Nov 1 23:12:07 2025 - not installed
python-babel Sat Nov 1 22:31:54 2025 - not installed
python-flask-httpauth Sat Nov 1 23:22:35 2025 - not installed
python-flask-login Sat Nov 1 23:23:06 2025 - not installed
python-flask-seasurf Sat Nov 1 23:23:06 2025 - not installed
python-flask-session Sat Nov 1 23:23:12 2025 - not installed
python-flask-socketio Sat Nov 1 23:22:36 2025 - not installed
python-gevent Sat Nov 1 23:13:17 2025 - not installed
python-jinja2 Sat Nov 1 22:44:28 2025 - not installed
python-markdown Sat Nov 1 22:34:16 2025 - not installed
python-msgpack Sat Nov 1 22:15:47 2025 - not installed
python-parsley Sat Nov 1 22:35:52 2025 - not installed
python-pynacl Sat Nov 1 23:22:29 2025 - not installed
python-pyopenssl Sat Nov 1 23:13:48 2025 - not installed
python-pysocks Sat Nov 1 22:24:51 2025 - not installed
python-sqlalchemy Sat Nov 1 22:37:59 2025 - not installed
python-unidecode Sat Nov 1 22:24:53 2025 - not installed
python-werkzeug Sat Nov 1 22:44:30 2025 - not installed
python-zope-event Sat Nov 1 22:38:28 2025 - not installed
python-zope-interface Sat Nov 1 22:33:31 2025 - not installed
radicale Sat Nov 1 22:13:08 2025 - not installed
radicale2 Sat Nov 1 23:23:47 2025 - not installed
Failures don't affect this device, details at
https://downloads.openwrt.org/releases/faillogs-24.10/aarch64_cortex-a53/
ERROR: Checks reveal errors, do not upgrade
I noticed that the argon theme is missing in 24.10.4, so unfortunately, I'll have to uninstall it (until I switch to the snapshot version of OpenWrt, but that's a plan for later). With the two packages removed, everything is now clear.
ASU-Server https://sysupgrade.openwrt.org
Upstream https://downloads.openwrt.org
Target mediatek/filogic
Profile glinet_gl-mt6000
Package-arch aarch64_cortex-a53
Version-from 24.10.2 r28739-d9340319c6 (kernel 6.6.93)
Version-to 24.10.4 r28959-29397011cc (kernel 6.6.110)
79 packages are out-of-date
It is safe to proceed with an upgrade
So now, what do I need to do?
Thanks in advance for your help! Hope you have a great day.
You're duplicating a lot of what is already happening by default here. Use sysupgrade -l to see what's in the backup, and tune the contents to include things that aren't already there (no harm in listing things twice, though).
Generally it's just owut upgrade... If there are missing, conflicting or breakages of packages, owut does a fair job of finding those and telling you before the build is submitted. Then if the the build doesn't complete successfully and pass the checksum and platform checks, owut will bail out after the build.
You can do opkg list-installed and compare the outputs. opkg will list everything including all packages that are installed as dependencies, where owut only will list the "top-level" packages, i.e., those that were manually installed and have no dependents, so this can be pretty tedious.
Yes, that's owut purpose in life, to reinstall all of the required packages transparently.
That theme is provided by some other project/person, and is not in the OpenWrt official repos, so you'll be doing the remove/upgrade/re-install dance as long as you use it.
Just run owut upgrade, or if you want to pick through things, do owut download, read through /tmp/firmware-manifest.json and then when satisfied, do owut install...
You're right, I narrow it down to:
## This file contains files and directories that should
## be preserved during an upgrade.
# /etc/example.conf
/etc/banip/
/etc/wireguard/
/root
Thanks ![]()
Ok, so I just have to lunch owut upgrade?
Oh, indeed, this will be tedious! ![]()
Great!
Yea, I already removed it, and someone in the thread about this theme confirms me that I can reinstall it in the 24.10.4 ![]()
For my knowledge, I ran owut download to see what is written in /tmp/firmware-manifest.json, but I'll ran the owut upgrade ^^
Thank you so much, you've been reassuring enough to encourage me to upgrade. ![]()
edit: Another thing, after the upgrade process, do I have to reimport my backups with the settings?
That's idea, make things easy enough that people don't think twice about upgrading, so they stay ahead of the curve with security fixes and so on...
Another thing, after the upgrade process, do I have to reimport my backups with the settings?
What are your backups? The configuration backup, or some other data?
If it's the configuration, then no, that's part of what sysupgrade does by default; it basically does this all internally:
sysupgrade --create-backup config.tgz
stash config.tgz somewhere (hides it in a fake partition usually)
install image
reboots
grab config.tgz from somewhere
sysupgrade --restore-backup config.tgz
You can subvert this on the command line with sysupgrade -n image so you can rebuild from scratch, but you cannot tell owut to not keep the current config (by design, see first item in https://openwrt.org/docs/guide-user/installation/sysupgrade.owut#faq).
Thanks for your answer, again ![]()
I'm feeling a bit panicked about this not progressing after the Image saved: /tmp/firmware.bin message.
owut upgrade
ASU-Server https://sysupgrade.openwrt.org
Upstream https://downloads.openwrt.org
Target mediatek/filogic
Profile glinet_gl-mt6000
Package-arch aarch64_cortex-a53
Version-from 24.10.2 r28739-d9340319c6 (kernel 6.6.93)
Version-to 24.10.4 r28959-29397011cc (kernel 6.6.110)
79 packages are out-of-date
Request hash:
ae4659b75d687ced4d850409797678e81362a198725f7a7125beee3b5f182b54
--
Status: done
Progress: 0s total = 0s in queue + 0s in build
Build succeeded in 0s total = 0s in queue + 0s to build:
Image saved : /tmp/firmware.bin
I see the router reboot, and of course my mac switch to another access point
so I could'nt connect so it ![]()
But after connecting to the router's wifi, I see the 24.10.4 version is indeed installed and all my configuration are still there! Yeah!
Many thanks for your kindness and more about your tool owut
![]()
Next step, on day, migrate to the snapshot version
in order to have apk package ![]()
Have a great night or day (here it's the night).
I hope I’m not adding unwanted noise to this thread, but I wanted to thank @efahl for a fantastic tool. I switched to OpenWrt on my EdgeRouter X not too long ago, and owut made the update experience absolutely painless; just as easy as upgrading EdgeOS.
Thanks, that's the goal here. There are still many, many failures and rough edges, but we're bashing them down as they pop up!
Hello @efahl
I may know the answer for this question ![]()
But I’il ask anyway ![]()
Is it possible to have the @pesa1234 custom build ( MT6000 custom build with LuCi and some optimization - kernel 6.12.x - #2498 by riverscn ) used in owut?
If yes this will be wonderful ![]()
Only if you set up a full custom build, containerization and ASU server system for owut to talk to. So, theoretically, "Yes", but practically, "No."
The big picture: owut is just a semi-smart version of wget that builds a POST request and then downloads the result. All of the real work is done by the buildbots to create imagebuilders, profiles, packages and package indexes, the docker buildbots for containerization of the imagebuilders and the ASU server to wrangle all the image, target, profile, device and package info, and then to manage the build requests.
I’m embarrassed to ask this question but here goes:
first, i love owut. i’ve used it for upgrading snapshots with apk and 24.10.4 stable with opkg as package managers.
i’ve currently got all ‘stable’ builds (24.10.4) on a bunch of devices. as far as i can tell from openwrt download directories and git, there have not been changes to that form (r28959) for a couple weeks. however, owut keeps reporting new versions for all luci packages, which do download and install correctly. i expected this on snapshot fork, but not on stable.
so my question: are the stable builds supposed to have luci updates this frequently, or is owut fetching things that will break the stable build?
thanks !