Colmena: Yet another NixOS deployment tool

Interesting, that no one of dozen deployment tools introduced deployment-wide modules (of those nixos system closure would be submodule; there is already an example of that in nixos-containers.nix).
That would not only reduce memory consumption of multi-machine evaluation, but also open a space for hyper-modules with options out of the scope of particular machine (and in some sense being like Helm of Nix world), allowing declarative configuration of

  • VPN (or Tinc) network
  • trust graphs (for RBAC or just for deployment keys for password-less SSH)
  • distrubuted software which run on mix of dedicated machines and ephemeral containers
  • etc
4 Likes

This was implemented by @shlevy a while™ ago for NixOps although never got merged:
https://github.com/NixOS/nixops/pull/187

4 Likes

I believe nixus’ multi-host abstraction modules are what you are looking for, at least for the latter part.

1 Like

This gives a 404 error.

Thanks, I fixed the link!

I’m just researching the NixOS ecosystem, and for me this tool looks essential. Why is it still not even it Nix community projects · GitHub ?

I think this is a decision of the developer. To my knowledge, Nix community projects have shared ownership. A good resource of available Nix tools is Awesome Nix | awesome-nix.