Fediversity/services
2025-02-21 17:52:50 +01:00
..
fediversity Fix Pixelfed 2025-02-21 17:52:50 +01:00
tests Allow Garage and services to run on different machines 2025-02-21 17:52:50 +01:00
vm Allow Garage and services to run on different machines 2025-02-21 17:52:50 +01:00
flake-part.nix Add Peertube test 2024-12-17 17:15:11 +01: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.