the awful.systems server cluster runs on an open infrastructure based on NixOS and Nix flakes, and though it desperately needs cleanup in some places, it’s still a pretty good example of how to use a Nix flake to deploy NixOS in production. feel free to browse the repo and ask any questions about how it works, or about Nix in general!

also, if I get hit by a bus, this can be used to redeploy awful.systems elsewhere. an existing admin who isn’t in the hospital or the grave can import a database backup and get back up and running!

and as always, contributions are welcome.

  • 4grams
    link
    English
    58 months ago

    In the car on the way home from vacation but as someone in need of a rebuild of some of my home infrastructure and have been curious about NixOS. Thanks, and thanks for the work here, I appreciate a small sliver of sanity in this insane world.

    • @selfOPMA
      link
      48 months ago

      there should be some good stuff in the awful.systems repo for you! I use the same techniques to deploy NixOS to a mix of servers, desktops, and embedded systems in my home. specifically I can recommend writing your own deployment scripts that use nixos-rebuild and using sops-nix for secrets — I use it all over the place for awful.systems, but for my home network it mostly keeps wifi passwords encrypted for some of my embedded devices.

      definitely let me know if you need some gentler introductory resources for Nix and NixOS too! I’ve got a few links saved up that I can recommend.

      • 4grams
        link
        English
        48 months ago

        Wow, thank you so much. I haven’t touched Nix yet but I’m a greybeard systems engineer with familiarity of many distros so hopefully it won’t be too baffling (then again, I never got Gentoo successfully installed).

        I will check out the repo as soon as I’m home, and thanks for the secrets info, one of the things on the top of my list.

        • @selfOPMA
          link
          48 months ago

          no problem at all! here are a couple of the resources I mentioned by the way:

          • Zero to Nix is a good overall guide
          • nix.dev is a great cookbook-style resource that starts by explaining Nix as a programming language and expands on its concepts from there