Language-specific package helpers: Difference between revisions

From NixOS Wiki
imported>Mic92
m fix title syntax.
imported>Kolloch
Updated the Rust section
Line 45: Line 45:


=== Rust ===
=== Rust ===
* [https://github.com/nmattia/naersk naersk]
* [https://github.com/nmattia/naersk naersk] Pure nix, works well with dependencies from crates.io. Builds rust crates dependencies in one derivation and the crate itself in another.
* [https://github.com/kolloch/crate2nix crate2nix]
* [https://github.com/kolloch/crate2nix crate2nix] Uses `buildRustCrate` from `nixpkgs` to build all dependencies independently. Either check in the generated build file or use it via "import from derivation".
* [https://pijul.org/2017/12/12/buildrustcrate/ carnix] [https://github.com/NixOS/nixpkgs/blob/master/doc/languages-frameworks/rust.section.md#compiling-rust-crates-using-nix-instead-of-cargo documentation] - Recommend by community, also integrated into nixpkgs.
* [https://pijul.org/2017/12/12/buildrustcrate/ carnix] [https://github.com/NixOS/nixpkgs/blob/master/doc/languages-frameworks/rust.section.md#compiling-rust-crates-using-nix-instead-of-cargo documentation] - Recommended by the docs (which are unfortunately outdated), also integrated into nixpkgs.
 
Outdated or deprecated projects:
 
* [https://github.com/williamyaoh/cratesio2nix cratesio2nix]
* [https://github.com/williamyaoh/cratesio2nix cratesio2nix]
* [https://github.com/fractalide/nixcrates nixcrates]
* [https://github.com/fractalide/nixcrates nixcrates]

Revision as of 21:23, 11 February 2020

The official overview can be found in the nixpkgs manual.

Elisp

Erlang

Go

Haskell

JavaScript / Node.js

Lua

OCaml

Perl

Python

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:

Scala