depot/third_party/nixpkgs/pkgs/by-name/ma/mautrix-meta/package.nix

52 lines
1.3 KiB
Nix

{
buildGoModule,
fetchFromGitHub,
nix-update-script,
lib,
nixosTests,
olm,
# This option enables the use of an experimental pure-Go implementation of the
# Olm protocol instead of libolm for end-to-end encryption. Using goolm is not
# recommended by the mautrix developers, but they are interested in people
# trying it out in non-production-critical environments and reporting any
# issues they run into.
withGoolm ? false,
}:
buildGoModule rec {
pname = "mautrix-meta";
version = "0.4.0";
subPackages = [ "cmd/mautrix-meta" ];
src = fetchFromGitHub {
owner = "mautrix";
repo = "meta";
rev = "v${version}";
hash = "sha256-KJuLBJy/g4ShcylkqIG4OuUalwboUSErSif3p7x4Zo4=";
};
buildInputs = lib.optional (!withGoolm) olm;
tags = lib.optional withGoolm "goolm";
vendorHash = "sha256-ErY40xIDhhOHQI/jYa8DcnfjOI998neIMgb/IQNP/JQ=";
passthru = {
tests = {
inherit (nixosTests)
mautrix-meta-postgres
mautrix-meta-sqlite
;
};
updateScript = nix-update-script { };
};
meta = {
homepage = "https://github.com/mautrix/meta";
description = "Matrix <-> Facebook and Matrix <-> Instagram hybrid puppeting/relaybot bridge";
license = lib.licenses.agpl3Plus;
maintainers = with lib.maintainers; [ eyjhb ];
mainProgram = "mautrix-meta";
};
}