3 ms·
I tried to give Nix a chance but I never figured out how to package dependencies that didn't already have a derivation written for them. Particularly since I d
by krapht 1y ago
I tried to give Nix a chance but I never figured out how to package dependencies that didn't already have a derivation written for them.
Particularly since I do a lot of ML work - I never figured out how to handle mixed Python/C++ code with dependencies on CUDA.
It's just way easier, even if not reproducible, to build an environment imperatively in Docker.
- sepositus 1y agoThe most common answer I've seen is that Python packaging just "doesn't do it right" so it's impossible to get a clean Nix experience with them. Which, to some degree is true, but it also reveals the opinionated nature of Nix and why it often falls flat.
- unignorant 1y agoI do a lot of ML work too and recently gave NixOS a try. It's actually not too hard to just use conda/miniconda/micromamba to manage python environments as you would on any other linux system with just a few lines of configuration. Pretty much just add micromamba to your configuration.nix plus a few lines of config for nix-ld. Many other python/ML projects are setup to use docker, and that's another easy option. I don't have the time or desire to switch all my python/ML work to more conventional Nix, and haven't really had any issues so far.