I've spilled quite a bit of digital ink on the variety of systems as well (the tag includes some of the other systems too): https://www.sevarg.net/tag/raspberrypi/
Computers I've used as "desktop grade systems" over the past 5 years or so:
- Raspberry Pi 3B/3B+
- nVidia Jetson Nano
- Raspberry Pi 4 8GB
- ODroid N2/N2+
- PineBook Pro
Advice and notes from this process:
- If you try to run from SD card, you're going to have an awful time of it. They're just not fast enough to be useful for more than very light use. You either need a USB SSD or, on some systems, you can use eMMC modules that, in my experience, perform well enough to be "not the main pain point." The PineBook Pro supports NVMe, I've just never found the eMMC disk performance to be bad enough to really be a limit. But improving the disk IO from SD cards is critical to desktop use.
- 1GB of RAM is useful but painful. 4GB is fine, but you feel some pain in AArch64 from memory pressure (and nobody's doing ILP32 distros). The Pi4 with 8GB and a 32-bit install has memory for miles - it's quite free from memory pressure. You can gain a lot using zswap (not zram, they're different) to front swap and do some compressed page stuff before touching actual disk swap. It compresses data into RAM and is both far faster and far lighter on the disk than going to swap, but you still want a big swap file on the disk to handle paging stuff out. If you're beating on it, you'll have a bad time, but "pushing stuff that's not going to be used for a long while if ever again" out to disk is entirely useful, and helps free the limited RAM for actual use.
- You can improve your life dramatically with heavy ad blocking or script blocking in browsers. Pihole, Ghostery, Noscript, any of those. They make a huge, huge difference in how browsers perform on lower speed ARM boxes.
- Fix the governor settings. If it's hardwired, use the performance CPU governor and pin the CPU clocks wide open. If it's portable, schedutil is radically nicer than ondemand for handling real world use cases, though the difference in battery life between that and performance isn't substantial. I freely use both on the PBP. When modern Electron apps lag badly until you start typing a few words in, it's a governor issue.
I won't claim they're as nice as a decent x86 system, but I've been trying to get away from x86 for a while, had a very nice M1 until Apple pissed me off, so they're most of what I use as computing devices anymore.
If your goal is "I want all the features of a high end x86 box but for cheap," you're going to be disappointed. But they're remarkably useful computers, and do quite a few things, very well.