verwaltungstracker/module.nix
2026-03-24 14:19:27 +01:00

53 lines
1.2 KiB
Nix

{
config,
lib,
pkgs,
options,
...
}:
let
cfg = config.services.verwaltungstracker;
in
{
options = {
services.verwaltungstracker = {
enable = lib.mkEnableOption "Verwaltungstracker web app";
} // options.services.froide-govplan.settings;
};
config = lib.mkIf cfg.enable {
nixpkgs.overlays = [
(self: super: {
froide-govplan = super.froide-govplan.overridePythonAttrs (oldAttrs: {
src = pkgs.fetchFromGitea {
domain = "git.project-insanity.org";
owner = "onny";
repo = "verwaltungstracker";
rev = "e5acfdf19d5af71bc5223c72713c128f3948f39f";
hash = "sha256-SRxPKherMz9xv/1XZjmwYg74r7Qln+vfLWgHyG5RbxQ=";
};
dependencies = oldAttrs.dependencies ++ [ oldAttrs.passthru.python.pkgs.mastodon-py ];
passthru = oldAttrs.passthru // {
pythonPath = "${pkgs.python3.pkgs.makePythonPath [pkgs.python3.pkgs.mastodon-py]}:${oldAttrs.passthru.pythonPath}";
};
});
})
];
services.froide-govplan = {
enable = true;
settings = cfg.settings;
};
};
meta = {
maintainers = with lib.maintainers; [ onny ];
};
}