ripasso-cursive: cosmetic changes (#361736)
[NixPkgs.git] / pkgs / by-name / ma / mautrix-meta / package.nix
blob29ca66cdf80e0519102ecdfb63d4d125c2850168
1 { buildGoModule
2 , fetchFromGitHub
3 , nix-update-script
4 , lib
5 , nixosTests
6 , olm
7 # This option enables the use of an experimental pure-Go implementation of the
8 # Olm protocol instead of libolm for end-to-end encryption. Using goolm is not
9 # recommended by the mautrix developers, but they are interested in people
10 # trying it out in non-production-critical environments and reporting any
11 # issues they run into.
12 , withGoolm ? false
15 buildGoModule rec {
16   pname = "mautrix-meta";
17   version = "0.4.0";
19   subPackages = [ "cmd/mautrix-meta" ];
21   src = fetchFromGitHub {
22     owner = "mautrix";
23     repo = "meta";
24     rev = "v${version}";
25     hash = "sha256-KJuLBJy/g4ShcylkqIG4OuUalwboUSErSif3p7x4Zo4=";
26   };
28   buildInputs = lib.optional (!withGoolm) olm;
29   tags = lib.optional withGoolm "goolm";
31   vendorHash = "sha256-ErY40xIDhhOHQI/jYa8DcnfjOI998neIMgb/IQNP/JQ=";
33   passthru = {
34     tests = {
35       inherit (nixosTests)
36         mautrix-meta-postgres
37         mautrix-meta-sqlite
38         ;
39     };
41     updateScript = nix-update-script { };
42   };
45   meta = {
46     homepage = "https://github.com/mautrix/meta";
47     description = "Matrix <-> Facebook and Matrix <-> Instagram hybrid puppeting/relaybot bridge";
48     license = lib.licenses.agpl3Plus;
49     maintainers = with lib.maintainers; [ eyjhb ];
50     mainProgram = "mautrix-meta";
51   };