Fediversity/services
Kiara Grouwstra dd5a6335b1
proxmox
pass in description

fix syntax

configure proxmox provider

typo

add doc comment in existing modules

add comment

allow insecure proxmox connection for use in dev

wip proxmox progress

use service configurations moved to machine-independent location

wire settings directly without option block terraform

adjust cwd

try tf on null input

update .envrc.sample with sample proxmox credentials
2025-05-11 19:22:49 +02:00
..
fediversity proxmox 2025-05-11 19:22:49 +02:00
tests unify versioning (minus around nixops, for now) 2025-05-01 13:24:45 +02:00
vm switch imports from lookup paths to explicit npins to keep things pure for tests 2025-05-11 18:23:05 +02:00
.envrc proxmox 2025-05-11 19:22:49 +02:00
default.nix unify versioning (minus around nixops, for now) 2025-05-01 13:24:45 +02:00
HACKING.md Move old services README to a HACKING file 2025-02-21 17:52:49 +01:00
README.md Basic services README 2025-02-21 17:52:49 +01:00

Services

This directory contains the definition of a NixOS module allowing to easily set up the Fediverse services that our project cares about. Those services are already packaged in nixpkgs, which arguably already provides this. Here is therefore the important distinction:

  • The goal of nixpkgs is to be generic, bring all the building blocks and let you do whatever it is you want with them. You get to choose all the options, if to use a reverse proxy, which one, if to use an S3 backend, which one, which database, etc.

  • This module aims at being straightforward to use by being opinionated. It only supports the use case of the Fediversity project and strives to hide as much of the nitty-gritty details as possible.

For those that know it, we could say that the current module is an analogous of simple-nixos-mailserver for Fediverse services.

Content of this directory

  • [fediversity][./fediversity] contains the definition of the services. Look in particular at its default.nix that contains the definition of the options.

  • [vm][./vm] contains options specific to making the service run in local QEMU VMs. These modules will for instance override the defaults to disable SSL, and they will add virtualisation options to forward ports, for instance.

  • [tests][./tests] contain full NixOS tests of the services.