A fast nix-shell replacement for project development with direnv integration, automatically rebuilding shells on changes.
lorri is a development tool that replaces `nix-shell` for managing project-specific environments in Nix-based workflows. It automatically rebuilds and reloads development shells when configuration changes, ensuring dependencies and tools are always up-to-date without manual intervention. It solves the problem of slow, blocking shell rebuilds by integrating with direnv for seamless background updates.
Developers using Nix for project development who want fast, automatic environment updates and robust CLI/editor integration. It's particularly useful for teams managing complex dependencies across multiple projects.
Developers choose lorri for its speed and automation—it eliminates the need to manually run `nix-shell` and wait for rebuilds. Its tight direnv integration provides a smooth, non-blocking workflow that keeps development environments in sync with configuration changes, even across branch switches.
Your project’s nix-env [maintainer=@Profpatsch,@nyarly]
Monitors shell.nix or flake.nix files and rebuilds in the background, applying changes on the next shell prompt without blocking terminal use, as highlighted in the README's demo.
Tightly integrates with direnv to automatically reload environment variables upon successful builds, enabling seamless CLI and editor workflows without manual intervention.
Works with both traditional shell.nix files and modern devShells in flake.nix, accommodating various Nix configuration styles for project environments.
Focuses on doing one thing well, collaborating with tools like direnv and niv for a streamlined development experience, as stated in the associated projects section.
The README explicitly notes macOS support is brittle and requires funding for improvements, making it unreliable for users on Apple platforms without investment.
Setup involves enabling a daemon service with known issues, such as requiring a manual reboot or daemon-reload for proper startup, adding friction to onboarding.
The editor integration section is admitted to need fleshing out, indicating poor or limited support for editor-specific tooling without additional work.
Can recursively watch more directories than intended, leading to unnecessary rebuilds, as mentioned in the debugging section with examples like local nixpkgs checkouts.
Instant, easy, and predictable development environments
The Deterministic Foundation for your SDLC
A fast, persistent use_nix/use_flake implementation for direnv [maintainer=@Mic92 / @bbenne10]
Multi-tenant Nix Binary Cache
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.