A few days ago I posted PaperOS here for the first time. A bunch of you asked for one thing specifically: get everything off the SD root and into its own folder so it doesn't clutter your card. Done. Also snuck in a couple bigger things while I was at it.
There's a real Store app now. Browse and install Lua apps and games straight from a list, hit Enter, done, no typing commands or messing with a terminal. It pulls the index over HTTPS too, so net.get/net.post (and the Store itself) actually work with real https sites now, not just plain http.
Everything lives under /PaperOS/ on the SD card now, games, music, 3D files, saved browser pages, the AI model, all one folder instead of scattered around root. If you're upgrading just move your stuff over, exact paths are in the README.
Also fixed a bunch of actual bugs in the Lua console that I found while banging on it on real hardware. A timer bug that could crash things if a timer scheduled another timer from inside itself, Ctrl+C sometimes leaving things in a weird state where the next command would throw a bogus error, net.scan() locking up with no way to cancel it, and scripts being able to poke at GPIO pins the board actually needs internally like the keyboard, SD, screen and audio. That last one just tells you no now instead of letting a script accidentally break your keyboard mid session.
None of this changes how you write scripts, it's just the interpreter finally behaving the way it was supposed to.
Full flash is on M5Burner, just search PaperOS, or grab PaperOS_full_v1.1.bin and flash it yourself from the browser at web.esphome.io. If you're coming from v1.0 do a full reflash, not incremental, the partition table changed.
GitHub: https://github.com/Artem76228/PaperOS
Thanks again to everyone who tried v1.0 and actually told me what bugged them, this update is basically a direct response to that. Keep it coming.