image

  • @SomeOtherUsername
    link
    English
    61 year ago

    Is Nix good? Afaik the main selling point is that the package manager stores different software versions by hash, so all are accessible. Not sure how that works with everything else

    • Kogasa
      link
      fedilink
      English
      2
      edit-2
      1 year ago

      Isn’t it immutable? That’s a pretty big difference in itself

      edit: Thank you for the replies, I’ll have to learn more!

      • @[email protected]
        link
        fedilink
        English
        21 year ago

        No, Nix isn’t actually immutable. It runs packages in isolation, but they can still affect your file system.

      • @[email protected]
        link
        fedilink
        English
        21 year ago

        it sort of is. The whole thing is made of what’s in /nix and it sets read-only attributes to all of it. You can modify it however you like by simply rebuilding it with updated configuration and you can switch at runtime or reboot.

        • @SomeOtherUsername
          link
          English
          11 year ago

          How does stuff that’s not made specifically for nix discover it? E.g. how would gcc find the libraries it needs in /nix?

          • @[email protected]
            link
            fedilink
            English
            21 year ago

            I’m not super adcanced in it and you beter off referring to NixOS docs to learn about it specifically, but trying to answer your question, it creates symbolic links of libs or binaries and manipulates PATH, LD_PATH and others. Some packages will also have speciall wrapper scripts that prepare the environment for a binary to run.

            The downside is that you can’t just run Linux binary directly when it’s dynamically linked and you need to use what’s in the repo or use special overlay to imitate FHS

            • @SomeOtherUsername
              link
              English
              11 year ago

              Got it, thanks 😁 I was looking for this kind of a tldr answer

              • @[email protected]
                link
                fedilink
                English
                11 year ago

                To add on, every single package is manually defined and set in the PATH inside the derivation (which is what packages software in Nix).