lorri VS naersk

Compare lorri vs naersk and see what are their differences.

lorri

Your project's nix-env (by target)

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
lorri naersk
6 6
998 635
- 2.7%
0.0 5.6
almost 2 years ago 9 days ago
Rust Nix
Apache License 2.0 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.

lorri

Posts with mentions or reviews of lorri. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-03-07.
  • NixOS + Haskell best practices circa March 2023
    6 projects | /r/haskell | 7 Mar 2023
    lorri
  • Lorri: Project's Nix-Env
    1 project | news.ycombinator.com | 16 Aug 2021
  • niv, naersk, napalm: moving on
    7 projects | /r/NixOS | 9 Jul 2021
    And how does niv compare to https://github.com/target/lorri
  • A treatise on Nix
    3 projects | /r/haskell | 9 Apr 2021
    Yes, you can "hold on", it's called gcroots. There's lorri which you can also use to defer the tediousness of managing the gcroots to a daemon.
  • Per process memory and CPU usage control
    2 projects | /r/NixOS | 29 Mar 2021
    Not that I know of but if you are having trouble with rebuilding and running out of memory, maybe the solution would be to cache the builds locally? You could use lorri to cache your development builds (https://github.com/target/lorri).
  • NixOS Linux
    7 projects | news.ycombinator.com | 10 Jan 2021
    > Using a special command (nix-shell) whenever I needed to do development things (e.g. Rust builds) was not my idea of fun.

    Funny you should mention that, because that's exactly what got me using Nix everywhere :). I've always hated installing tools and libraries globally—what if I need a different version for a future project?—so I like tools that sandbox as much as possible like virtualenv, cargo, cabal... etc. But these tools are all language-specific and have their own limitations (especially around native libraries and dependencies written in other languages).

    nix-shell gives me the equivalent of virtualenv that works for everything. I can have a single sandboxed environment even if my project uses a bunch of different languages and I can manage everything in a reproducible, low-overhead fashion. No more worrying about making a mess by installing tools or packages globally.

    Then, once I got really used to that, I spent some time setting up direnv[1] and lorri[2]—both of which are themselves managed with Nix, of course!—so that my environment gets automatically configured as soon as I enter a project directory without needing to call nix-shell explicitly. To be honest, the experience is still a bit rough, but it works well enough day-to-day that I have my reproducible sandbox cake and eat it in an mostly frictionless way too :).

    [1]: https://direnv.net/

    [2]: https://github.com/target/lorri

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 lorri and naersk you can also consider the following projects:

direnv - unclutter your .profile

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

nix - Nix, the purely functional package manager

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

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

cargo2nix - Granular builds of Rust projects for Nix

nixops - NixOps is a tool for deploying to NixOS machines in a network or cloud.

nickel - Better configuration for less

dotfiles - i3 + Plasma: using the i3 window manager on the top of KDE Plasma and other dotfiles, configurations, scripts, workarounds and practises from my Debian Sid machines.

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