{ # TODO: check whether there is no TODOs # TODO: check whether there is no hedgegdoc mentions description = "Mastodon module"; outputs = { ... }: { nixosModules.default = import ./module.nix; configPathsNeeded = builtins.fromJSON (builtins.readFile ./config-paths-needed.json); meta = { lib, ... }: { spModuleSchemaVersion = 1; id = "mastodon"; name = "Mastodon"; description = "Mastodon is a free non-profit decentralized social media, a part of Fediverse network, offering a web client and a mobile app."; svgIcon = builtins.readFile ./icon.svg; isMovable = true; isRequired = false; backupDescription = "."; systemdServices = [ "mastodon.service" ]; folders = [ "/var/lib/mastodon" ]; postgreDatabases = [ "mastodon" ]; license = [ lib.licenses.agpl3Only # TODO: plus or only ]; homepage = "https://joinmastodon.org"; sourcePage = "https://github.com/mastodon/mastodon"; supportLevel = "normal"; sso = { userGroup = "sp.mastodon.users"; }; }; }; }