I've been trying to build a custom snapshot image for a TL-WDR4320 router (using tplink_tl-wdr4300-v1 profile). However, it seems in snapshot the packages have become much bigger recently.
This is a router with a 8MB flash, and my current build options produce a 5.5MByte rootfs (7.1MByte sysupgrade image output) under v19.07.3. With current snapshot no image can be produced, complaining about exceeding as much as 500-600KBytes in size. After removing some less important ones (like some filesystems for USB disks that I originally wanted to optionally support) I'm still exceeding a bit more than 100KBytes.
Has there been any changes in the snapshot from v19.07.x that caused such a significant increase in binary size? I recall I was still able to produce images with my current build options using snapshot a few months ago...
Yeah, I'm talking about master (which resides in the snapshot folder).
So it seems the size increase is mostly the kernel... guess I really have to cut a few packages from now on.
A long time ago I made a working extroot on that device so I can install some additional stuffs. However, it's still a bit hard to maintain when it comes to updating.
Everything is growing, slowly, but steadily - the kernel is just usually the most obvious part of it (partially because OpenWrt doesn't follow every stable kernel (more incremental increases) but concentrates on LTS kernels instead (so every ~fourth-fifths kernel version (larger bumps)). The kernel itself has grown just short of 0.5 MB between 19.03.x and master.
Yeah, and that half megabyte combined to general package size creep (with ssl, hostapd, core apps) makes almost a mega in total compared to 4.14 based 19.07 releases.
I noticed with my old WNDR3700v1 that I can barely fit LuCI, OpenSSL, USB storage support, wireguard, statistics to the 8 MB so that there is enough free flash for r/w jffs2 overlay. (Yep, OpenSSL is large, so that is my own fault) I ended up with publishing a reduced-feature 3700v1 community build along the full-feature 3700v2 & 3800 builds.
Master is now switching SSL on by default (with wolfssl). In practice the 8 MB flash starts to restrict the feature expansion capability much more heavily than earlier. We will rather soon need to issue a 8/64 warning in addition to the old 4/32 warning.
Not sure about the difference between mbedtls and wolfssl. Is wolfssl any bigger or smaller?
And I do agree now that the newer OpenWrt will be harder for devices with only 8MBytes of flash given the significant increase in kernel size and possibly the size of some other packages.