toolbox VS devenv

Compare toolbox vs devenv and see what are their differences.

toolbox

Tool for interactive command line environments on Linux (by containers)

devenv

Fast, Declarative, Reproducible, and Composable Developer Environments (by cachix)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
toolbox devenv
109 88
2,273 3,410
3.6% 15.2%
9.1 9.8
9 days ago 7 days ago
Shell Nix
Apache License 2.0 Apache License 2.0
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.

toolbox

Posts with mentions or reviews of toolbox. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-10-05.
  • Toolbx: Tool for interactive command line environments on Linux
    1 project | news.ycombinator.com | 23 Mar 2024
  • Toolbx
    1 project | news.ycombinator.com | 19 Mar 2024
  • ChromeOS is Linux with Google’s desktop environment
    6 projects | news.ycombinator.com | 5 Oct 2023
    The team has both made a ton of effort switching off their proprietary Skia based rendering tech and adopting standard Wayland, and has put forward huge effort to making running incredibly well integrated real Linux containers just work.

    The headline is true. ChromeOS is Linux with Google’s desktop environment. But it obfuscates the details. It's a damned by omission statement. It has some really good sauce to help you not notice often, but it's not at all a Linux desktop environment one can regularly use. You can do a lot of Linux desktop-y things but only through well crafted special unique wrapped processes that mostly but not fully help mock & emulate a regular Linux desktop. Even though it now runs Wayland, the apps you want to run will have atypical intermediates up the wazoo.

    And no one else uses any of this tech. ChromiumOs has so much interesting container tech, does such an interesting job making containers think they have a regular Linux / FreeDesktop environment. It's far far far far deeper virtualization than for example https://github.com/containers/toolbox . But you know what? Google has made zero effort to get these pieces adopted elsewhere. It's open source but not intended for use outside Chromium/ChromeOS. I respect & think ChromeOS is a quite viable Linux, and it's so much closer to the metal & more interesting, amazing tech, but my gods Microsoft has gone 300x further to establish wsl2 as a sustainable community effort folks could use & target, in a way that ChromiumOS has done nothing about.

    It's sad how Google has transformed from a company that appreciated & worked with ecosystems, that drove things collectively forward, into an individual player that does their own things & delivers from on high. ChromiumOS is such an incredible effort, but it's so internernally drive & focused, and it's hard to believe in such a wildcat effort, even though it's so so good. It keeps coming into better alignment with Linux Desktop actual, but via shims and emulations that no one else cares about or which seems marketed elsewhere. And that inward focus makes the whole effort both so exceptional & promising, but suspect. Such a different nearby but alternative & separately governed universe. ChromiumOS/ChromeOS do excellent at faking being a Linux desktop, and wonderfully have increasingly drawn more strength from that universe, but are still wholly their own very distinct very separate very controller other space. In many ways that's great, secure, good, and miraculously transparently done. But it's still hard to really trust, being such a weird alien impostor, faking so much for end user apps, and there's tension in believing ChromeOS will keep straddling the rift in pro-user manifestations forever.

  • Introduction to Immutable Linux Systems
    9 projects | news.ycombinator.com | 17 Sep 2023
    I'm really, really happy with my current setup of Fedora immutable + toolbox [0]. This tool lets you create containers that are fully integrated with the system, so you have acces to the entire Fedora repos, can run graphical apps, etc. while still having everything inside a container in your home directory. That means no Flatpak required. Highly recommended.

    [0] https://containertoolbx.org

  • Toolbox
    1 project | news.ycombinator.com | 6 Aug 2023
  • Codespaces but open-source, client-only, and unopinionated
    18 projects | news.ycombinator.com | 20 Jun 2023
    Seems like toolbox is also in this space; https://github.com/containers/toolbox
  • What’s the safest way to compile apps from source in a binary-based distribution like Fedora?
    2 projects | /r/linuxquestions | 5 Jun 2023
  • Ubuntu Core as an immutable Linux Desktop base
    1 project | /r/Ubuntu | 31 May 2023
    With Silverblue the core repos are very similar to what you'd have on regular Fedora. With more of a philosophical shift about where you're supposed to install things from. The idea being that the base OS is immutable and you keep it fairly minimal - even though you are technically free to install any of Fedora packages to it. And then you install user applications through Flatpak and toolbx. Where these more user space focussed applications are installed to your home directory and are sandboxed away from actual access to your OS. With iOS/Android style application permissions like "Give app permission to access camera" and "Give app permission to modify files in home directory". Allowing you even further customise the sandboxing of applications. Do you really want that app to have access to your microphone?
  • Silverblue: Nvidia drivers in toolbox?
    2 projects | /r/Fedora | 26 May 2023
    I'd probably try running it on the host system first. If you want to use your nvidia gpu inside toolbox, you would indeed need to install the drivers in the container: https://github.com/containers/toolbox/issues/116
  • Force to leave Fedora, CentOS vs Ubuntu, which one to choose?
    1 project | /r/Fedora | 16 May 2023
    Use toolbox on CentOS or Ubuntu if you want a Fedora environment with more up to date tools: https://containertoolbx.org/

devenv

Posts with mentions or reviews of devenv. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-12.
  • Fast, Declarative, Reproduble and Composable Developer Environments Using Nix
    5 projects | news.ycombinator.com | 12 Apr 2024
    I gave devenv multiple tries, and I am sorry to say there are multiple annoying issues that forced me to give up every time.

    Some of these 200+ issues are unsolved for a fairly long time.

    https://github.com/cachix/devenv/issues

  • Nix – A One Pager
    6 projects | news.ycombinator.com | 6 Apr 2024
    Software developers often want to customize:

    1. their home environments: for packages (some reach for brew on MacOS) and configurations (dotfiles, and some reach for stow).

    2. their development shells: for build dependencies (compilers, SDKs, libraries), tools (LSP, linters, formatters, debuggers), and services (runtime, database). Some reach for devcontainers here.

    3. or even their operating systems: for development, for CI, for deployment, or for personal use.

    Nix provision all of the above in the same language, with Nixpkgs, NixOS, home-manager, and devShells such as https://devenv.sh/. What's more, Nix is (https://nixos.org/):

    - reproducible: what works on your dev machine also works in CI in prod,

    - declarative: you version control and review your configurations and infrastructure as code, at a reasonable level of abstraction,

    - reliable: all changes are atomic with easy roll back.

  • Show HN: Lapdev, a new open-source remote dev environment management software
    7 projects | news.ycombinator.com | 23 Mar 2024
    https://devenv.sh/ and nix in general are great for setting up dev environments.
  • Show HN: Flox 1.0 – Open-source dev env as code with Nix
    17 projects | news.ycombinator.com | 13 Mar 2024
    > but worried that the development is not moving forward

    There is an open v1.0 PR: https://github.com/cachix/devenv/pull/1005

  • What's the Next Vagrant?
    1 project | news.ycombinator.com | 15 Jan 2024
    2) A way to run services apps depend on (databases, job runners, cache etc).

    I am going to suggest one of the Nix based tools that do those things:

      - https://devenv.sh/ (I use this at work)
  • Ask HN: How can I make local dev with containers hurt less?
    7 projects | news.ycombinator.com | 11 Jan 2024
    Yup, I haven’t tried it but there is https://devenv.sh which is built on top of nix and makes it simple.
  • Flakes aren't real and cannot hurt you: using Nix flakes the non-flake way
    6 projects | news.ycombinator.com | 9 Jan 2024
    Although Guix reads better than Nix (after all, it's Lisp), I found the support and resources available for learning severely lacking.

    Plus, you have to jump through hoops to install non-free software, which goes against the ethos of Guix anyway.

    IMHO, Nix is clearly "the winner" here and we'll see more and more adoption as it improves. Lots of folks are doing exciting work (see https://determinate.systems/, https://devenv.sh/, https://flakehub.com/). And the scale and organization around nixpkgs is damn impressive.

  • NixOS has one fatal flaw
    3 projects | news.ycombinator.com | 15 Dec 2023
    I don't think you can ever get Nix as simple as PNPM, simply because native libraries are sometimes annoying, need to be configured at build time to a greater degree and because the problem space it attacks is so much larger than PNPM, which only deals with the JS/Node.js ecosystem.

    However, I do think that there exist reasonable levels of abstraction that sacrifice some expressive power for simplicity and such systems could maybe expose a PNPM-like CLI. One example that comes to mind is devenv.nix [1]. While it doesn't yet have a CLI, its configuration file is YAML and relatively simple. I think there's more to be done in this space and I hope for tools that are easier to grasp in the future.

    > Nix package files evaluate down to configuration for the Nix package manager, but I haven’t ever seen a good explanation for the basic essentials underneath all the abstraction. Every guide I’ve learned from and all the package defs I’ve read seem to cargo cult many layers of mysterious config composing config. Without easy to learn essentials it’s difficult to grok the system as a whole.

    To me it sounds like the essential that you're referring to is the 'derivation' primitive, which is almost always hidden behind the mkDerivation abstraction from nixpkgs. This [2] blog post is an exploration of what exactly that means.

    I'd also love for the documentation situation to be much better, in particular in terms of official, curated resources. But I'm not convinced that you actually need to know the difference between derivation and mkDerivation to make effective use of Nix, because in practice you would always use the latter. That said, mkDerivation and the whole of nixpkgs is essentially a huge DSL (I believe this is what you meant when you said 'config composing config') that you do need to know and is woefully underdocumented.

    > I would love to adopt Nix for developer tooling for Notion’s engineers, but today it’s about infinity times easier to work around the limitations mentioned of Docker+Ubuntu+NPM than to work around the limitations of Nix.

    One approach I have taken to is to specify the environment in Nix, but then generate Docker devcontainers from it, so most people don't come into contact with Nix if they don't want to.

    [1] https://devenv.sh

    [2] https://ianthehenry.com/posts/how-to-learn-nix/derivations/

  • Development Environments with Guix, similar to devenv.sh
    4 projects | /r/GUIX | 9 Dec 2023
    This though, through the use of devenv.sh, which uses nix, as when I got into nix I though it was going to be easier to just make a development environment, not the case. Until I found devenv.sh, I could actually finally make good environments... It also has other features like containers and services, which also help me know that I can get the most of it if the time comes.
  • devenv needs help testing 1.0 release
    1 project | /r/NixOS | 11 Oct 2023
    Instructions: https://github.com/cachix/devenv/pull/745

What are some alternatives?

When comparing toolbox and devenv you can also consider the following projects:

distrobox - Use any linux distribution inside your terminal. Enable both backward and forward compatibility with software and freedom to use whatever distribution you’re more comfortable with. Mirror available at: https://gitlab.com/89luca89/distrobox

devbox - Instant, easy, and predictable development environments

podman - Podman: A tool for managing OCI containers and pods.

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

batect - (NOT MAINTAINED) Build And Testing Environments as Code Tool

direnv - unclutter your .profile

zsh-in-docker - Install Zsh, Oh-My-Zsh and plugins inside a Docker container with one line!

devshell - Per project developer environments

cockpit-podman - Cockpit UI for podman containers

rembg - Rembg is a tool to remove images background

box86 - Box86 - Linux Userspace x86 Emulator with a twist, targeted at ARM Linux devices

nix - Nix, the purely functional package manager