Language-specific package helpers: Difference between revisions
imported>Mic92 add snack |
imported>Mic92 Napalm is what you need for nodejs |
||
Line 19: | Line 19: | ||
=== JavaScript / Node.js === | === JavaScript / Node.js === | ||
* [https://github.com/svanderburg/node2nix node2nix] | * [https://github.com/svanderburg/node2nix node2nix], Recommend for use in nixpkgs | ||
* [https://github.com/nmattia/napalm napalm], Imports package-lock.json into nix directly | |||
* [https://github.com/NixOS/npm2nix npm2nix] | * [https://github.com/NixOS/npm2nix npm2nix] | ||
* yarn-based (carry the same name but different implementations), yarn is a drop-in for `npm`: | * yarn-based (carry the same name but different implementations), yarn is a drop-in for `npm`: |
Revision as of 06:59, 12 February 2020
The official overview can be found in the nixpkgs manual.
Elisp
Erlang
Go
Haskell
- cabal2nix
- haskell-overridez - Simplify usage of nix dependencies during haskell development
- snack
JavaScript / Node.js
- node2nix, Recommend for use in nixpkgs
- napalm, Imports package-lock.json into nix directly
- npm2nix
- yarn-based (carry the same name but different implementations), yarn is a drop-in for `npm`:
- bower2nix
Lua
OCaml
Perl
Python
- pypi2nix - Recommended by Community
- nixpkgs-pytools semi-automated way to add python packages to nixpkgs.
- pip2nix
- python2nix
- nix-pip
Ruby
Rust
- naersk Pure nix, works well with dependencies from crates.io. Builds rust crates dependencies in one derivation and the crate itself in another.
- crate2nix Uses `buildRustCrate` from `nixpkgs` to build all dependencies independently. Either check in the generated build file or use it via "import from derivation".
- carnix documentation - Recommended by the docs (which are unfortunately outdated), also integrated into nixpkgs.
Outdated or deprecated projects: