Up until Android 3 or so I think open source kernel drivers where actually required for most things, so you totally could do this for the older phones.
Unfortunately these phones are incredibly under powered, they come from a time when arguments for bizarre custom OSes like Android actually still made some sense (not much IMO and after the generation that used android 4 it was really all about politics, economics, and control more than a technical argument.) The outdated radios are another issue; even WiFi evolves to the point where old enough devices stop being able to join some networks but the cellular interfaces are particularly bad.
The whole bespoke hardware thing is only an issue when you're updating the kernel (I've heard device tree debugging has gotten much better so maybe this is an opportunity to try and fix that heh), as long as the arm chip is new enough to use the modern calling conventions all of the distribution binaries should just work (I guess some of the earliest phones can't do this like the really ancient freescale SOCs etc. For those you're just stuck building everything yourself but with modern user spaces this really isn't as bad as it sounds.)
> Unfortunately these phones are incredibly under powered, they come from a time when arguments for bizarre custom OSes like Android actually still made some sense
Not much, IMO. As far as compute goes, those old phones were approximately as powerful as a Raspberry Pi 1 board, with plenty of RAM as well (512MB at a bare minimum). And a conventional Linux OS can run just fine on those specs, of course.
(GPU acceleration is actually more important to have, because you can't have a modern mobile UX without it. Even Purism is very possibly going to have issues on that front, BTW. GNOME-Mobile/Phosh is a nice prototype effort, but I do not regard it as genuinely usable just yet.)
There were plenty of Android phones with less than 512MB memory in the beginning. Xperia X10 Mini had 256MB to take one I owned. And that was not because it was a complete freak, the full size X10 had 384MB.
I seem to remember a few phones with 128 meg, but looking at a few at GSM Arena they all have 192MB or more. I have my old Android dev phone (upgraded all the way to Cupcake!), and that has 192MB RAM. I wonder if that still starts.
Sure you can run a Linux based OS in 64-128MB of ram.
The problem is that a lot of apps start misbehaving. Firefox and Libreoffice come to mind. Firefox is really impossible to replace too (IMO) I haven’t been able to log in to gmail from a gtk WebKit browser in years and medium doesn’t even work in them (it of course works in elinks.) You can run Firefox in <1GB of ram but it won’t be nice and it won’t run long.
I absolutely disagree with you about the GPU. As long as you’re not running gnome software graphics are plenty fast.
Unfortunately these phones are incredibly under powered, they come from a time when arguments for bizarre custom OSes like Android actually still made some sense (not much IMO and after the generation that used android 4 it was really all about politics, economics, and control more than a technical argument.) The outdated radios are another issue; even WiFi evolves to the point where old enough devices stop being able to join some networks but the cellular interfaces are particularly bad.
The whole bespoke hardware thing is only an issue when you're updating the kernel (I've heard device tree debugging has gotten much better so maybe this is an opportunity to try and fix that heh), as long as the arm chip is new enough to use the modern calling conventions all of the distribution binaries should just work (I guess some of the earliest phones can't do this like the really ancient freescale SOCs etc. For those you're just stuck building everything yourself but with modern user spaces this really isn't as bad as it sounds.)