On the practical side, "learn Nix" is a _massive_ onboarding task. Without Nix, I'd probably pick one up assuming I'll find something to do with it. With Nix, I'd wait until I have a project I know is worth figuring out Nix.
If this were my project, I'd probably go with the absolute most simple answer: multiple SD card readers. Install the base OS on one card, allow hot-swapping the other card, do some mount point stuff with the other card (like maybe it auto-mounts to /usr/local, and have packages install into /usr/local). Or maybe some kind of overlayfs with the other card. SD cards are cheap, and I'd rather glue an SD card holder to the back of a Flipper than learn Nix.
> I don't really understand why would the team that already got a full plate decide to also invent a whole new Linux system while they're creating their hardware device.
Honestly, I just wouldn't solve that. Nix makes the product way harder to sell, and home-building a solution is either a) an entire product all by itself, or b) shitty, in the "it only works on very specific happy paths" sense.
I also frankly just don't think it's a feature worth as much to consumers as it costs to make. At worst, it's a minor inconvenience to reflash a Pi card. If I'm really lazy, I just disable systemd services for whatever was on it and layer the new stuff on top. It's like 5 commands to get it back to "close enough to fresh".
Sadly, I totally get why they didn't. The nix way still isn't ready for "hey everybody, I'm making a thing, let's work on it together."
The hurdles are just too high for non-nix-nerds to pick it up while simultaneously trying to learn the underlying project.
It's a better way, currently only for those primarily in search of a better way.