top | item 37103585

(no title)

cfcosta | 2 years ago

Not OP, but here's my take: I have two machines, one with NixOS, one with Mac. I use the same configuration on both. Keeping both machines in sync is a matter of two commands, adding a new machine is also a matter of two commands.

I have tried multiple orchestration options before, but they always fail in some way, ansible for example always work until I have to run something from scratch, then it fails miserably because of something that changed after the 20th time I've ran the script. On Nix, that's not even a consideration.

discuss

order

conception|2 years ago

What are the two commands for further reading? Not familiar with Nix.

Aerbil313|2 years ago

(Not OP) cp to copy the /etc/nixos/configuration.nix file, and nixos-rebuild to build the system defined in the file on the new machine.

amelius|2 years ago

How do you configure and install low level hardware drivers? Aren't these different on both systems? And wouldn't proprietary drivers rely on hardcoded versions of libc, for example, causing a dependency hell?

pxc|2 years ago

> wouldn't proprietary drivers rely on hardcoded versions of libc, for example, causing a dependency hell?

You can have multiple copies of glibc on NixOS and it's fine as long as you don't need two different versions of it in the same process. Have you run into this on NixOS?

charcircuit|2 years ago

This is handled by having multiple config files. System specfic stuff goes into a dedicated file which wouldn't be shared.