• trevor (he/they)@lemmy.blahaj.zone
        link
        fedilink
        English
        arrow-up
        8
        ·
        8 hours ago

        The biggest downside to containers vs. Nix for me is that Nix can produce binaries for Linux and macOS, whereas docker only helps with Linux unless you can perform literal magic to cross-compile your project on Linux for macOS.

        Containers also don’t give you reproducible environments, and Nix does.

        That said, Nix documentation is ass, so I usually end up going with containers because they require far less suffering to get working because writing a containerfile is much easier than guessing how to hobble together a Nix flake with a mostly undocumented language.

            • atzanteol@sh.itjust.works
              link
              fedilink
              English
              arrow-up
              1
              ·
              edit-2
              2 hours ago
              docker build . -t docker.company.com/build-env:1.0 && docker push docker.company.com/build-env:1.0
              

              But for like 99% of development teams “repeatable” is Good Enough™.

              • trevor (he/they)@lemmy.blahaj.zone
                link
                fedilink
                English
                arrow-up
                2
                ·
                edit-2
                2 hours ago

                So, containers do not get you reproducibility.

                For dev environments, repeatable is okay. If you want actually reproducible binaries that you can ship, Nix is better fit for that purpose.

      • Mihies@programming.dev
        link
        fedilink
        arrow-up
        1
        ·
        8 hours ago

        It could if there are issues accessing hardware directly. Overhead is, as you said, not that important.