I was watching a Decentralized Systems course and there was a statement: Git was developed for Linux (a kernel, zero-dependency software) that's one of the reasons why managing dependencies is out of scope (submodules are a trainwreck).
Guix and Nix are basically just an extension of Git, which uses git itself as a database for storing dependency information in plain text format and requires external infrastructure to deal with it.