LEDE = a bit over the top with the minimal requirements?

Without starting to repeat the thread Borromini has already mentioned, it is a fact of life that most upstream software used on a router is not primarily developed for embedded devices (to most upstreams 'embedded' also means RPi3 or smartphone with quadcore, 2 GB RAM and multiple GB of main storage) and that it is slowly getting larger. Unless you want to hard-fork things like kernel, libc, sshd, pppd, ... to an old version, which means neither being able to support newer platforms and devices (which just got support in a recent kernel), nor being able to provide bug- and security fixes (it would be illusion that a very small team of volunteers could even think about keeping (e.g.) kernel 2.6.18 secure 'forever', even disregarding normal bugfixes and adaption for a changing network landscape (e.g. 2015 IPv6 was very rare for normal endusers, today with dualstack, dualstack-lite and cgNAT, having (only) a globally routable IPv6 prefix is common - or dynamic prefixes...).

Spelling out the minimum hardware requirements as 8 MB flash and 64 MB RAM is just being honest - and it's easier/ fairer to do it now, for the first release, than having to acknowledge this fact in the second or third release. Yes, right now, you can still get some decent use out of older devices with less than that, but it usually needs a pretty targetted device- and build config and you will hit the limits rather sooner than later (opkg and sysupgrade being the most affected parts). If you look at the size table for past OpenWrt and LEDE releases I've provided in the other thread, you will notice that LEDE hasn't really grown that much since Chaos Calmer/ 15.05.x, but only this tiny amount of growths (especially in comparison to the much larger size increases for prior releases) in addition to the larger repo size of available packages (it does make a difference for opkg's system requirements if the package indices are smaller (less packages available for installing in the past) or larger like now) means that the situation has gotten a bit too tight for many older devices. On average, bumping the kernel from v4.4.x (old LTS kernel) to v4.9.x (new/ current LTS kernel) means a roughly 10% increase in size for the kernel alone (that's around one year of upstream kernel development), but LTS kernels are only maintained for about 2 years (e.g. kernel v3.18.x has just been dropped), so updating the kernel is not only required to keep security support, but also to gain support for new/ upcoming routers (e.g. the IPQ40xx platform depends on kernel >=4.7).

So yes, as time goes by, newer (interesting) hardware appears with better hardware specifications (router's are just now starting to use SOC variations which were originally developed for smartphones, with an according bump in performance and RAM, rather than being stuck to abonded mips32 designs), changing requirements (the 'internet' is rather different than merely 3-4 years ago, with faster WAN connections, faster wlan standards, more emphasis on security and IPv6) and upstreams not being particularly aware of low-end devices and older gear will slowly fall of the cliff. With LEDE you can delay the inevitable for quite a bit of time, especially if you can build firmware variants configured exactly for your requirements - and long after the original vendor stopped maintaining their firmware (if they ever really did in the first place), but you can't change the inevitable either.

6 Likes