you are viewing a single comment's thread
view the rest of the comments
[–] 2 points 2 years ago* (last edited 2 years ago) (1 child)

They cover a few things -- most notably they replace channels, which are imperative.

Unless I'm way off, you can also install user software through flakes if you add them as inputs. That's what I'm doing with Musnix.

You can also pull a repo and 'nix run .#software' from the command-line, without entering a shell. That's how I'm using NixifiedAI.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 1 point 2 years ago (1 child)

    They cover a few things -- most notably they replace channels, which are imperative.

    True. I never considered channels imperative, but rather a purity issue. But I guess this is a matter of perspective.

    Unless I'm way off, you can also install user software through flakes if you add them as inputs.

    I don't know about this, but that doesn't mean anything.

    You can also pull a repo and 'nix run .#software' from the command-line, without entering a shell.

    True, though this by default only runs the default binary, and you're probably in a shell anyways, so it doesn't save that much. Also that output is, to my knowledge, not protected by garbage collection. But my knowledge of any imperative stuff is minimal, so I don't know if that's the case there.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 1 point 2 years ago* (1 child)

    I don't know about this, but that doesn't mean anything.

    Why doesn't it mean anything? You add the flake as an input (declarative) and then add the software to your config (also declarative).

    I'm not arguing that it's better, or saves time, just that it takes things that were done imperatively, and makes them declarative.

  • source
  • parent
  • hideshow 2 child comments