from Hacker News

The Flox Open Beta

by flurie on 2/7/23, 2:50 PM with 55 comments

  • by guypod on 2/7/23, 5:20 PM

    While Flox does improve the Nix UX, I don't think that's the most exciting thing about it. The real impact is in bringing the underlying power of Nix to people who would have never used it.

    Nix has all sorts of core portability, security and management capabilities that are massively valuable in a distributed and diverse env dev team, but are rarely used because they're too hard.

    If Flox takes off, many more developers would benefit from those capabilities, and most of those would still have minimal to know understanding of the underlying Ni complexity.

    FWIW, that's at least why I invested in them ;)

  • by pxc on 2/7/23, 3:06 PM

    I just finished reading the announcement on NixOS Discourse here: https://discourse.nixos.org/t/flox-first-open-release-beta/2...

    It includes the following:

    > We strive to improve the experience of consuming packages from nixpkgs by providing a layer that records their evaluation, build, and cache metadata. We call this layer - a catalog. This allows users of flox to select from multiple versions of packages. It also enables enterprise users to share packages in binary form without exposing their source code or even their Nix expression.

    This sounds in some ways pretty similar to something I'd been imagining for Nix, particularly for the purpose of grabbing package definition sources which have been known to work for a given version or range. (The use case is automatically grabbing or generating packages for given semantic versions instead of by Nixpkgs hash.)

    I'm interested to see what all they've done with the catalog, and I wonder if it will ever be brought to Nix proper. If that were likely, they would have been developing this in the open, right? (Maybe not! Getting consensus is hard... I do see that the catalog itself and some related work is up on GitHub.)

  • by smoldesu on 2/7/23, 2:54 PM

    > flox provides an imperative (and delightful) CLI experience that will seem more familiar to most developers.

    So, to be clear: your product is an imperative compositional layer on top of a declarative compositional layer for managing imperative system configuration? Sounds like a hard sell to anyone who doesn't use Nix. Even as a NixOS daily driver, I'm having a hard time understanding how Flox is more than a few shell aliases and a hosted backend.

  • by stavros on 2/8/23, 1:17 AM

    Some feedback, as I'm trying it out:

    * I love that there's a .deb. Usually it's either a GH binary, or curlbash.

    * I love the uninstallation instructions. Everyone else doesn't give a shit what they leave all over my filesystem.

    * I can't really install it because I don't have Nix, and I don't really know how to get Nix on Ubuntu. I tried some packages once, but they didn't work. I'd appreciate some help here, as Flox is a non-starter if people can't install Nix. It doesn't even mention that I need Nix, the deb just fails to install. This is a pretty big omission.

    EDIT: Turns out it fails because I already had Nix? The systemd unit needed to be removed. That's odd.

    * I tried to follow the "first environment example", immediately got an error:

    error: could not set permissions on '/nix/var/nix/gcroots/per-user' to 755: Operation not permitted

    No guidance on how to proceed from here. That directory is already 755. Googling the error leads me to a GitHub issue with hundreds of comments, and no obvious solution other than somehow reinstalling, but I don't think I installed Nix in the first place?

    That's the end of the line for me, sadly.

  • by mkhalil on 2/7/23, 6:49 PM

    I can't be the only one with such a bad experience using their website to find out what even is this.

    Edge Dev on Windows 11 25290

    https://i.imgur.com/2VjXnQI.mp4

    Yikes.

  • by rockwotj on 2/7/23, 7:22 PM

    This looks great! I'm interested to know what is the path forward to create revenue from this product? I would hesitant to adopt a tool like this that would go belly up when the money runs dry.
  • by sleey on 2/7/23, 5:25 PM

    This looks similar to https://www.jetpack.io/devbox/ that build on top of nix too.
  • by stavros on 2/7/23, 7:16 PM

    I don't use Nix, but I'm really eager for something that will make it easy to use. It will solve a ton of problems for me.
  • by bovermyer on 2/7/23, 7:05 PM

    So it's kind of like machine configuration as code, with Nix doing the heavy lifting.

    That sounds interesting. However, I wonder how it deals with scenarios like using "flox pull" to do an initial setup, then manually installing something, then months later trying to reconcile what the code says should be installed and what's actually installed.

  • by theboiledowl on 2/7/23, 3:42 PM

    I don't use Nix. Curious if folks can see applying Flox to supercharge interoperability and deployment.
  • by alexmackenziewx on 2/7/23, 5:23 PM

    This is pretty cool. How should I be thinking about Flox from an SBOM perspective vs. existing vendors? Are auditors really (respectfully) sophisticated enough to appreciate reproducibility guarantees? Esp given other build systems (a la Bazel) make this claim too
  • by thenipper on 2/7/23, 7:11 PM

    This looks pretty interesting. I'm a lead software eng at a startup that is onboarding N number data analysts/engineers and on the face of it this seems like it'd be a great utility to help tame the craziness of python for them.
  • by ptannor on 2/7/23, 6:35 PM

    I know that this has been asked in past threads but I would love to understand how Nix compares to containers and on top of that what does flox provide in it's comparison to containers?
  • by ianl on 2/7/23, 6:58 PM

    Super excited to see this launch.. Nix at its core is incredibly unique but hard to access.

    Whats next on the roadmap?