159e378cbb
GitOrigin-RevId: c04d5652cfa9742b1d519688f65d1bbccea9eb7e
52 lines
1.1 KiB
Nix
52 lines
1.1 KiB
Nix
{
|
|
lib,
|
|
fetchFromGitHub,
|
|
rustPlatform,
|
|
|
|
ffmpeg,
|
|
makeWrapper,
|
|
}:
|
|
|
|
rustPlatform.buildRustPackage rec {
|
|
pname = "substudy";
|
|
version = "0.6.10";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "emk";
|
|
repo = "subtitles-rs";
|
|
rev = "substudy_v${version}";
|
|
hash = "sha256-ACYbSQKaOJ2hS8NbOAppfKo+Mk3CKg0OAwb56AH42Zs=";
|
|
};
|
|
|
|
cargoLock = {
|
|
lockFile = ./Cargo.lock;
|
|
outputHashes = {
|
|
"async-openai-0.19.1" = "sha256-UrWSZW3LxMZfinmQAjouhqTrhVhHkjgz9EzrZxR0qG4=";
|
|
};
|
|
};
|
|
|
|
nativeBuildInputs = [ makeWrapper ];
|
|
|
|
nativeCheckInputs = [ ffmpeg ];
|
|
|
|
cargoBuildFlags = [ "-p substudy" ];
|
|
|
|
preCheck = ''
|
|
# That's to make sure the `test_ai_request_static`
|
|
# test has access to the cache at `$HOME/.cache`
|
|
export HOME=$(mktemp -d)
|
|
'';
|
|
|
|
postFixup = ''
|
|
wrapProgram "$out/bin/substudy" \
|
|
--prefix PATH : ${lib.makeBinPath [ ffmpeg ]}
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "Learn foreign languages using audio and subtitles extracted from video files";
|
|
homepage = "http://www.randomhacks.net/substudy";
|
|
license = licenses.asl20;
|
|
mainProgram = "substudy";
|
|
maintainers = with maintainers; [ paveloom ];
|
|
};
|
|
}
|