package.nix (1483B)
1 { 2 lib, 3 buildGoModule, 4 fetchFromGitHub, 5 fetchFromGitea, 6 openssl, 7 tdlib, 8 zlib, 9 testers, 10 }: 11 12 let 13 tdlib' = tdlib.overrideAttrs ( 14 oa: fa: { 15 version = "1.8.23-unstable-2024-01-23"; 16 src = fetchFromGitHub { 17 owner = "tdlib"; 18 repo = "td"; 19 rev = "5bbfc1cf5dab94f82e02f3430ded7241d4653551"; 20 hash = "sha256-gd9xHXVFEs7KkvXRvPJQZlKnBCxdvh67VX/sfeFZXf4="; 21 }; 22 cmakeFlags = fa.cmakeFlags ++ [ 23 (lib.cmakeFeature "CMAKE_POLICY_VERSION_MINIMUM" "3.10") 24 ]; 25 } 26 ); 27 in 28 buildGoModule (finalAttrs: { 29 pname = "telegabber"; 30 version = "1.12.8"; 31 32 src = fetchFromGitea { 33 domain = "dev.narayana.im"; 34 owner = "narayana"; 35 repo = "telegabber"; 36 tag = "v${finalAttrs.version}"; 37 hash = "sha256-Z15m0v6SFs67gPjp9SqfxeDyFVjlqvMtyPxdR+5bGuo="; 38 forceFetchGit = true; 39 }; 40 41 vendorHash = "sha256-qiPMQuk1fUx7GFlJUu71n2pLVqd7vUPnRva3p/iDkr4="; 42 43 buildInputs = [ 44 openssl 45 tdlib' 46 zlib 47 ]; 48 49 postInstall = '' 50 install -Dm644 config_schema.json config.yml.example -t $out/share/telegabber 51 ''; 52 53 checkFlags = [ "-skip=TestSessionToMap" ]; 54 55 passthru.tests.version = testers.testVersion { package = finalAttrs.finalPackage; }; 56 57 meta = { 58 description = "XMPP/Jabber transport to Telegram network"; 59 homepage = "https://dev.narayana.im/narayana/telegabber"; 60 license = lib.licenses.asl20; 61 maintainers = [ lib.maintainers.sikmir ]; 62 mainProgram = "telegabber"; 63 }; 64 })
