4
submitted 8 months ago by self@awful.systems to c/freeasm@awful.systems

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.

you are viewing a single comment's thread
view the rest of the comments
[-] sinedpick@awful.systems 0 points 8 months ago* (last edited 8 months ago)

Is there a reason you define one NixOS module each for Lemmy dev/staging/prod? Why not just have one module and take an "environment" enum option?

[-] self@awful.systems 1 points 8 months ago

my reasoning at the time was:

  • I was in a hurry
  • I didn’t know how much the environments would differ, so I wanted to retain as much flexibility as I could get

the most likely future for those modules is that they'll end up replaced by a module exported from the Lemmy flake, which’ll provide a set of options to configure multiple environments. that should clean up some of the messiest parts of the configuration, and it’d allow us to import different versions of the flake for each environment. it’d also keep the module in sync with the specific version of Lemmy it’s configuring, which is very nice to have.

this post was submitted on 05 Apr 2024
4 points (100.0% liked)

FreeAssembly

75 readers
1 users here now

this is FreeAssembly, a non-toxic design, programming, and art collective. post your share-alike (CC SA, GPL, BSD, or similar) projects here! collaboration is welcome, and mutual education is too.

in brief, this community is the awful.systems answer to Hacker News. read this article for a solid summary of why having a less toxic collaborative community is important from a technical standpoint in addition to a social one.

some posting guidelines apply in addition to the typical awful.systems stuff:

(logo credit, with modifications by @dgerard@awful.systems)

founded 8 months ago
MODERATORS