Noob question: Is the Nix package manager exclusive or does it integrate with other package managers?

Currently I’m wondering if there’s something better than a crude mix of Ansible, Homebrew, APT, asdf, and manually installed stuff to manage packages. I came across Nix. What I’m currently trying to understand is if Nix is exclusive in the way it manages stuff or if it integrates with other managers.

What do I mean by that? For example I like the idea of installing NodeJS with Nix, but continuing to use npm to manage the dependencies of a certain project. Same with Python, where I prefer to use “community standards” like Poetry for managing package dependencies.

Is that possible with Nix? Or is the Nix way to manage “everything” with Nix?

Thanks in advance

Yep it’s possible. There are various projects throughout the community to integrate with various language level package managers, such as node2nix, and poetry2nix, and a number of others, many of which are available directly from within nixpkgs.

In addition to this, there are also various efforts to improve the current status quo when it comes to this integration, such as an effort to standardize a la dream2nix, as well as an RFC to modify some of Nix’s internals to make the evaluation step more granular and efficient for this use-case.

3 Likes