What makes this a non-starter is that normal linux applications are not written to be pre-emptable. Hence a default port of a linux system to a phone will kill the battery.
Hence the need for a from scratch effort where the SDK incorporates preemptability as a policy, and applications work off of that. Sadly, this means you cannot use the existing vast application ecosystem.
Librem is an effort in the above direction. It also seems like Fuschia is going this way.
Closest I can explain is mobile applications have to be written to understand "pause" and "resume", and the application is running from "resume" to "pause".
Your typical linux application does not. It expects to be "started" and "stopped", and running the whole time in-between.
Hence the need for a from scratch effort where the SDK incorporates preemptability as a policy, and applications work off of that. Sadly, this means you cannot use the existing vast application ecosystem.
Librem is an effort in the above direction. It also seems like Fuschia is going this way.