Language-specific package helpers: Difference between revisions
Appearance
m Category:Python Category:Rust added |
added Zig section with zon2nix |
||
| (5 intermediate revisions by 2 users not shown) | |||
| Line 28: | Line 28: | ||
** [https://github.com/stephank/yarn-plugin-nixify yarn-plugin-nixify] by stephank | ** [https://github.com/stephank/yarn-plugin-nixify yarn-plugin-nixify] by stephank | ||
* [https://github.com/rvl/bower2nix bower2nix] | * [https://github.com/rvl/bower2nix bower2nix] | ||
=== Lua === | === Lua === | ||
| Line 41: | Line 37: | ||
=== Perl === | === Perl === | ||
* [https://gitee.com/volth/cpan2nix/ cpan2nix] | * [https://gitee.com/volth/cpan2nix/ cpan2nix] | ||
=== PureScript === | |||
* [https://github.com/purs-nix/purs-nix purs-nix] | |||
=== Python === | === Python === | ||
| Line 67: | Line 66: | ||
* [https://gitlab.com/nightkr/Sbtix sbtix] | * [https://gitlab.com/nightkr/Sbtix sbtix] | ||
* [https://github.com/zaninime/sbt-derivation sbt-derivation] | * [https://github.com/zaninime/sbt-derivation sbt-derivation] | ||
=== Zig === | |||
* [https://github.com/nix-community/zon2nix zon2nix] | |||
[[Category:Languages]] | [[Category:Languages]] | ||
[[Category:Go]] | |||
[[Category:Haskell]] | |||
[[Category:JavaScript]] | |||
[[Category:Perl]] | |||
[[Category:Python]] | [[Category:Python]] | ||
[[Category:Ruby]] | |||
[[Category:Rust]] | [[Category:Rust]] | ||
Latest revision as of 21:09, 2 December 2025
The Nixpkgs-provided helpers can be found in the Nixpkgs manual.
Elisp
Erlang
- hex2nix
- nix-rebar3 Builds rebar3 projects, without any Nix code generation.
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
- yarn-based (carry the same name but different implementations), yarn is a drop-in for `npm`:
- yarn2nix by moretea
- yarn2nix by Profpatsch
- yarn-plugin-nixify by stephank
- bower2nix
Lua
OCaml
Perl
PureScript
Python
- uv2nix - uv2nix turns uv projects into Nix derivations
- poetry2nix - poetry2nix turns Poetry projects into Nix derivations without the need to actually write Nix expressions.
- nixpkgs-pytools - semi-automated way to add python packages to nixpkgs.
- pynixify - Create a nixpkgs overlay with human-readable expressions for each package
- pip2nix - Generate nix expressions for Python packages.
Abandoned / discontinued:
- pypi2nix - Generate Nix expressions for Python packages
- python2nix
- nix-pip
- mach-nix - Create reproducible python environments from `requirements.txt` (using Nix)
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".
- cargo2nix Uses a `mkCrate` wrapper around Cargo and `rustc` to build all dependencies independently. Supports cross-compilation, alternative registries, and `nix-shell` integration.
- crane Builds rust crate dependencies in one derivation and the crate itself in another. Boilerplate setup for running test suites.