chromium,chromedriver: 129.0.6668.91 -> 129.0.6668.100
[NixPkgs.git] / pkgs / by-name / su / substudy / package.nix
blob14efc8ed1ddea39b013584a6879f1342953f0254
2   lib,
3   fetchFromGitHub,
4   rustPlatform,
6   ffmpeg,
7   makeWrapper,
8 }:
10 rustPlatform.buildRustPackage rec {
11   pname = "substudy";
12   version = "0.6.10";
14   src = fetchFromGitHub {
15     owner = "emk";
16     repo = "subtitles-rs";
17     rev = "substudy_v${version}";
18     hash = "sha256-ACYbSQKaOJ2hS8NbOAppfKo+Mk3CKg0OAwb56AH42Zs=";
19   };
21   cargoLock = {
22     lockFile = ./Cargo.lock;
23     outputHashes = {
24       "async-openai-0.19.1" = "sha256-UrWSZW3LxMZfinmQAjouhqTrhVhHkjgz9EzrZxR0qG4=";
25     };
26   };
28   nativeBuildInputs = [ makeWrapper ];
30   nativeCheckInputs = [ ffmpeg ];
32   cargoBuildFlags = [ "-p substudy" ];
34   preCheck = ''
35     # That's to make sure the `test_ai_request_static`
36     # test has access to the cache at `$HOME/.cache`
37     export HOME=$(mktemp -d)
38   '';
40   postFixup = ''
41     wrapProgram "$out/bin/substudy" \
42       --prefix PATH : ${lib.makeBinPath [ ffmpeg ]}
43   '';
45   meta = with lib; {
46     description = "Learn foreign languages using audio and subtitles extracted from video files";
47     homepage = "http://www.randomhacks.net/substudy";
48     license = licenses.asl20;
49     mainProgram = "substudy";
50     maintainers = with maintainers; [ paveloom ];
51   };