nixos-configs/devices/nos/modules/subtitles/extract-subs/default.nix

50 lines
859 B
Nix
Raw Normal View History

{
buildNpmPackage,
ffmpeg-full,
nodejs_20,
typescript,
writeShellApplication,
...
}: let
pname = "extract-subs";
extract-subs = buildNpmPackage {
name = "${pname}-npm";
src = ./.;
chore: update flake.lock Flake Inputs: • Updated input 'agsV2': 'github:Aylur/ags/f89742e' (2024-11-08) → 'github:Aylur/ags/5ec5640' (2024-11-12) • Updated input 'astal': 'github:Aylur/astal/302fcae' (2024-11-08) → 'github:Aylur/astal/2a9bb96' (2024-11-12) • Updated input 'custom-sidebar-src': 'github:elchininet/custom-sidebar/6b18c2e' (2024-11-10) → 'github:elchininet/custom-sidebar/a4b3aac' (2024-11-12) • Updated input 'gpu-screen-recorder-src': 'git+https://repo.dec05eba.com/gpu-screen-recorder?ref=refs/heads/master&rev=f1b4979' (2024-11-09) → 'git+https://repo.dec05eba.com/gpu-screen-recorder?ref=refs/heads/master&rev=c8fdf2f' (2024-11-10) • Updated input 'hyprland': 'github:hyprwm/Hyprland/dca75db' (2024-11-09) → 'github:hyprwm/Hyprland/a29cfa7' (2024-11-12) • Updated input 'hyprland/hyprutils': 'github:hyprwm/hyprutils/3ce0cde' (2024-11-07) → 'github:hyprwm/hyprutils/60d3dec' (2024-11-09) • Updated input 'nix-gaming': 'github:fufexan/nix-gaming/faf26ec' (2024-11-10) → 'github:fufexan/nix-gaming/e9adb42' (2024-11-12) • Updated input 'nixpkgs-wayland': 'github:nix-community/nixpkgs-wayland/b6023d8' (2024-11-10) → 'github:nix-community/nixpkgs-wayland/e25b62b' (2024-11-11) • Updated input 'nvim-theme-src': 'github:Mofiqul/dracula.nvim/94fa788' (2024-10-16) → 'github:Mofiqul/dracula.nvim/e6128ec' (2024-11-11) • Updated input 'sops-nix': 'github:Mic92/sops-nix/f1675e3' (2024-11-10) → 'github:Mic92/sops-nix/4c91d52' (2024-11-11) • Updated input 'ts-for-gir-src': 'github:gjsify/ts-for-gir/ffa9e9a' (2024-11-10) → 'github:gjsify/ts-for-gir/f703cc1' (2024-11-11) • Updated input 'tuya-local-src': 'github:make-all/tuya-local/175c1cc' (2024-11-09) → 'github:make-all/tuya-local/2739992' (2024-11-11) Docker Images: • nginx latest: sha256:28402db69fec7c17e179ea87882667f1e054391138f77ffaf0c3eb388efc3ffb → sha256:5026c85d87419b6c3622622570ea5c25ab9f9bb48961554658272bbc18e518b1 • quay.io/vaultwarden/server latest: sha256:7de8fd442afc26e4932a0b2521e2eec82db9f17667eef7b46fd9c2fa2e639de2 → sha256:7271b8ceb729f9b46144c800125813dcc8d16bb6874217c48e59b22b45e47d7d
2024-11-11 23:45:04 -05:00
npmDepsHash = "sha256-WXkg4e5Nh3+haCbm+XJ1CB7rsA2uV/7eZUaOUl/NVk0=";
nativeBuildInputs = [
nodejs_20
typescript
];
buildPhase = ''
tsc -p tsconfig.json
'';
installPhase = ''
mkdir -p $out/bin
mv node_modules package.json $out
echo '#!/usr/bin/env node' > $out/bin/${pname}
cat ./build/main.js >> $out/bin/${pname}
rm ./build/main.js
chmod +x $out/bin/${pname}
mv ./build/**.js $out/bin
'';
};
in
writeShellApplication {
name = pname;
runtimeInputs = [
ffmpeg-full
extract-subs
];
text = ''
exec ${pname} "$@"
'';
}