direnv VS naersk

Compare direnv vs naersk and see what are their differences.

naersk

Build Rust projects in Nix - no configuration, no code generation, no IFD, sandbox friendly. (by nix-community)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
direnv naersk
157 6
11,675 635
1.8% 2.7%
8.7 5.6
9 days ago 6 days ago
Go Nix
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

direnv

Posts with mentions or reviews of direnv. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-31.

naersk

Posts with mentions or reviews of naersk. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-04-07.
  • Help with building a 32bit library with cargo
    3 projects | /r/NixOS | 7 Apr 2023
    i would also recommend using crane or naersk since iirc rustPlaform.buildRustPackage can mangle some of these options (or maybe i just did something wrong lol)
  • Nix & Rust - cargo2nix 0.11.0 released
    4 projects | /r/rust | 15 May 2022
    Have a look at naersk, it neither requires generated Nix files nor IFD.
  • Nix and NixOS Get So Close to Perfect
    11 projects | news.ycombinator.com | 24 Apr 2022
    We use naersk[0] for Rust projects in our Nix monorepo (for example [1]). It's pretty hands-off in terms of the Nix code needed (you don't need to pin hashes inside of the Nix code as long as you have a Cargo lockfile) and all the existing tooling keeps working fine.

    The main drawback of it is that it currently builds all of your dependencies in one big derivation, so any dependency changes cause a full rebuild. There's some other project I saw fly by which attempts to do a similar thing but split each crate into a separate derivation, but I forgot what it's called and have no experience with it.

    [0]: https://github.com/nix-community/naersk

    [1]: https://cs.tvl.fyi/depot/-/blob/ops/journaldriver/default.ni...

  • Nixery – Docker images on the fly with Nix
    8 projects | news.ycombinator.com | 18 Apr 2022
    You can also use naersk¹ if you want to avoid a two-step process. It's especially convenient when using nix flakes.

    ¹https://github.com/nix-community/naersk

  • niv, naersk, napalm: moving on
    7 projects | /r/NixOS | 9 Jul 2021
    I created https://github.com/nmattia/napalm/issues/34 and https://github.com/nmattia/naersk/issues/183 to move them to nix-community
  • Nix-ifying a Rust project
    12 projects | /r/rust | 7 Apr 2021
    sounds exactly like what naersk does. naersk doesn't need a cargSha256 argument since it downloads dependencies from Cargo.lock. it can also grab the version number from Cargo.toml

What are some alternatives?

When comparing direnv and naersk you can also consider the following projects:

spaceship-prompt - :rocket::star: Minimalistic, powerful and extremely customizable Zsh prompt

crate2nix - rebuild only changed crates in CI with crate2nix and nix

Pipenv - Python Development Workflow for Humans.

rust-overlay - Pure and reproducible nix overlay of binary distributed rust toolchains

lorri - Your project's nix-env

cargo2nix - Granular builds of Rust projects for Nix

Home Manager using Nix - Manage a user environment using Nix [maintainer=@rycee]

nix-direnv - A fast, persistent use_nix/use_flake implementation for direnv [maintainer=@Mic92 / @bbenne10]

Neovim-from-scratch - 📚 A Neovim config designed from scratch to be understandable

crane - A Nix library for building cargo projects. Never build twice thanks to incremental artifact caching.

Poetry - Python packaging and dependency management made easy

nix2container - An archive-less dockerTools.buildImage implementation