nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at python-updates 85 lines 1.6 kB view raw
1{ 2 buildGoModule, 3 lib, 4 fetchFromGitHub, 5 fetchPnpmDeps, 6 pnpmConfigHook, 7 pnpm, 8 nodejs, 9 fetchpatch, 10 stdenv, 11}: 12 13buildGoModule rec { 14 pname = "apache-answer"; 15 version = "1.7.1"; 16 17 src = fetchFromGitHub { 18 owner = "apache"; 19 repo = "answer"; 20 tag = "v${version}"; 21 hash = "sha256-QTm/6srSn4oF78795ADpW10bZmyEmqTNezB6JSkS2I4="; 22 }; 23 24 webui = stdenv.mkDerivation { 25 pname = pname + "-webui"; 26 inherit version src; 27 28 sourceRoot = "${src.name}/ui"; 29 30 pnpmDeps = fetchPnpmDeps { 31 inherit src version pname; 32 sourceRoot = "${src.name}/ui"; 33 fetcherVersion = 1; 34 hash = "sha256-6IeLOwsEqchCwe0GGj/4v9Q4/Hm16K+ve2X+8QHztQM="; 35 }; 36 37 nativeBuildInputs = [ 38 pnpmConfigHook 39 pnpm 40 nodejs 41 ]; 42 43 buildPhase = '' 44 runHook preBuild 45 46 pnpm build 47 48 runHook postBuild 49 ''; 50 51 installPhase = '' 52 runHook preInstall 53 54 mkdir -p $out 55 cp -r build/* $out 56 57 runHook postInstall 58 ''; 59 }; 60 61 vendorHash = "sha256-ZZ+6OS967qtstMxdBzDxTU2wvyieZJM+/g9V96rXPVI="; 62 63 doCheck = false; # TODO checks are currently broken upstream 64 65 ldflags = [ 66 "-X main.Version=${version}" 67 "-X main.Commit=${version}" 68 ]; 69 70 preBuild = '' 71 cp -r ${webui}/* ui/build/ 72 ''; 73 74 meta = { 75 homepage = "https://answer.apache.org/"; 76 license = lib.licenses.asl20; 77 maintainers = with lib.maintainers; [ 78 bot-wxt1221 79 ]; 80 platforms = lib.platforms.unix; 81 mainProgram = "answer"; 82 changelog = "https://github.com/apache/answer/releases/tag/v${version}"; 83 description = "Q&A platform software for teams at any scales"; 84 }; 85}