biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / applications / misc / livecaptions / default.nix
blob2d52e96fe3597b2c4d3ae35b15d3c7348ce6d6f0
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   fetchurl,
6   meson,
7   ninja,
8   pkg-config,
9   cmake,
10   desktop-file-utils,
11   wrapGAppsHook4,
12   onnxruntime,
13   libadwaita,
14   libpulseaudio,
15   xorg,
16 }: let
17   aprilAsr = fetchFromGitHub {
18     name = "april-asr";
19     owner = "abb128";
20     repo = "april-asr";
21     rev = "3308e68442664552de593957cad0fa443ea183dd";
22     hash = "sha256-/cOZ2EcZu/Br9v0ComxnOegcEtlC9e8FYt3XHfah7mE=";
23   };
25   aprilModel = fetchurl {
26     name = "april-english-dev-01110_en.april";
27     url = "https://april.sapples.net/april-english-dev-01110_en.april";
28     hash = "sha256-d+uV0PpPdwijfoaMImUwHubELcsl5jymPuo9nLrbwfM=";
29   };
31   stdenv.mkDerivation (finalAttrs: {
32     pname = "livecaptions";
33     version = "0.4.1";
35     src = fetchFromGitHub {
36       owner = "abb128";
37       repo = "LiveCaptions";
38       rev = "v${finalAttrs.version}";
39       hash = "sha256-x8NetSooIBlOKzKUMvDkPFtpD6EVGYECnaqWurySUDU=";
40     };
42     nativeBuildInputs = [
43       meson
44       ninja
45       pkg-config
46       cmake
47       desktop-file-utils # update-desktop-database
48       wrapGAppsHook4
49     ];
51     buildInputs = [
52       onnxruntime
53       libadwaita
54       libpulseaudio
55       xorg.libX11
56     ];
58     postUnpack = ''
59       rm -r source/subprojects/april-asr
60       ln -sf ${aprilAsr} source/subprojects/april-asr
61     '';
63     preFixup = ''
64       gappsWrapperArgs+=(
65         --set APRIL_MODEL_PATH ${aprilModel}
66       )
67     '';
69     meta = with lib; {
70       description = "Linux Desktop application that provides live captioning";
71       homepage = "https://github.com/abb128/LiveCaptions";
72       license = licenses.gpl3Plus;
73       platforms = platforms.linux;
74       maintainers = with maintainers; [Scrumplex];
75       mainProgram = "livecaptions";
76     };
77   })