2 ms·
I'm not convinced that the upsides of Nix don't necessarily include the downside. Docker files are basically "copy these files in and run these commands with f
by aidenn0 3y ago
I'm not convinced that the upsides of Nix don't necessarily include the downside.
Docker files are basically "copy these files in and run these commands with full network access" which is a recipe for both "easy" and "not reproducible"
Oh, I need python? "RUN apt-get install -y python" done. Which python version is installed? I don't have to think about that.
If you want to ensure the inputs are the same, then you need to impose structure. That structure is a large part of what is confusing with Nix.
I hate the Nix language as much as the next-guy, but I don't think that if it were Javascript instead, everyone would be like "oh this is so easy!"
- mise_en_place 3y agoIt's no more difficult than packer. The challenge is architectural, because a lot of times (and I am guilty of this as a developer myself) the infra architecture comes later or after the fact.
- eternityforest 3y agoA lot of what makes declarative stuff nice is it comes with an implicit opinionated standard way of doing stuff. Nix tries to be way more general to the point of a whole programming language. Compare that with Snap packages: https://snapcraft.io/docs/python-apps https://snapcraft.io/docs/python-apps Where everything is closer to true configuration not declarative programming. Apt and PyPi packages in, snap package out, install it like it was an exe or put it in an app store, give it some permissions, done. They don't introduce any new concepts and there are few intermediate extra steps, it's all more of less pretty common ideas found in any tech workflow.