As a control freak I really love the idea behind Nix and NixOS, however switching to a different Linux distro is a huge step (my current Arch installation is many years old).
Is my assumption correct, that the following workflow would work?
- Install NixOS via QEMU in a virtual machine
- Port stuff over, piece-by-piece
- Use my current OS and NixOS productively at the same time
- When I’m happy, deploy that NixOS config to the real hardware
- Now I have a working NixOS installation
That would make things much easier for me.
One potential issue I see, is that I develop software in Rust, and that the Rust compiler is extremely resource hungry (when it compiles stuff), so I really need all my CPU cores for that.
I’m not sure if there is a way with QEMU to run in “cooperative” mode, meaning that the host OS (Arch) and the client OS (NixOS) both have access to all CPU cores, somehow.
Another potential issue is, that there are likely differences between the real hardware and what QEMU emulates. Is this something to worry about?
I tried to get started with Nix on Arch, but I’d rather directly switch to NixOS.
I estimate that switching to NixOS and setting up a usable system would take me at least two full weeks. So the above workflow would be ideal for me, because I can spread that two weeks over a span of several months, and still always have a working system.