I have an observation about some differences in the package pre-requisites when I try to compile my own firmware. This is specifically related to luci-app-sqm and I think sqm-scripts.
I have an XR500 and I want to setup the build system so I can easily create new images for upgrading. I setup my XR500 using the default 22.03.0-rc1 firmware and downloaded all of the packages I want.
Then, I tried to setup a build directory so I can compile my own firmware. I went through menu config and selected all of my packages. Then I compared to list of packages from my running XR500 and the list of packages in my newly compiled firmware. This is when I noticed the differences.
For some reason, my build environment is selecting extra packages that my running XR500 didn't install.
iptables-legacy, libip4tc2, libip6tc2
Is this something to be concerned about or can I use my self compiled image?
'Concerned', perhaps not - it will 'work' nevertheless, but it's not an ideal situation.
It's caused by
which relies on OpenWrt's peculiar 2-stage buildsystem, where the first stage doesn't know about the feed packages, so the direct dependency on the old iptables won't interfere with fw4/ nftables (and later, at runtime, the virtual package is observed).
However, if you do build yourself, you'll typically do so in a single stage, including the feeds - and the iptables dependencies then causes iptables-legacy to be pulled in, instead of the more fitting iptables-nft.