It's a complete end-to-end solution with an opinionated approach and unstructured documentation.
That is, the learning curve is very steep.
That said, for new projects I'm doing packaging and containerization in nix, because I don't have the time or mental energy to deal with half-assed solutions anymore.
I looked at nix a while ago, concluded the versioning/chesumming is - a given sum should represent kind-of the same thing, but can mean really anything.
There was even a post on how to have a stable version for a tracking branch.
Now, I wouldn't mind, if it were explained exactly what guarantees the hashing provided, but there seemed to be pervasive misconception on what it provides.