nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 python3Packages,
4 fetchFromCodeberg,
5 nix-update-script,
6}:
7
8python3Packages.buildPythonApplication rec {
9 pname = "synadm";
10 version = "0.49.2";
11 pyproject = true;
12
13 src = fetchFromCodeberg {
14 owner = "synadm";
15 repo = "synadm";
16 tag = "v${version}";
17 hash = "sha256-Nh4pzOXBXwbhq49Hq8vmPi6AS6N/tRqDBjIVKH3Gh6s=";
18 };
19
20 build-system = [ python3Packages.setuptools ];
21
22 dependencies = with python3Packages; [
23 click
24 click-option-group
25 dnspython
26 tabulate
27 pyyaml
28 requests
29 requests-unixsocket
30 ];
31
32 checkPhase = ''
33 runHook preCheck
34 export HOME=$TMPDIR
35 $out/bin/synadm -h > /dev/null
36 runHook postCheck
37 '';
38
39 passthru.updateScript = nix-update-script { };
40
41 meta = {
42 description = "Command line admin tool for Synapse";
43 mainProgram = "synadm";
44 longDescription = ''
45 A CLI tool to help admins of Matrix Synapse homeservers
46 conveniently issue commands available via its admin API's
47 (element-hq/synapse@master/docs/admin_api)
48 '';
49 changelog = "https://codeberg.org/synadm/synadm/releases/tag/${src.tag}";
50 downloadPage = "https://codeberg.org/synadm/synadm";
51 homepage = "https://synadm.readthedocs.io/";
52 license = lib.licenses.gpl3Plus;
53 maintainers = with lib.maintainers; [ hexa ];
54 };
55}