about summary refs log tree commit diff
path: root/pkgs/tools/video
diff options
context:
space:
mode:
authorSirio Balmelli <sirio@b-ad.ch>2022-09-10 15:13:33 +0200
committerSirio Balmelli <sirio@b-ad.ch>2022-09-12 17:19:15 +0200
commit25d00141a81262f5a607a194ec45314e8647468c (patch)
treecedd69a119fbde2cfbe9897f1be3a6d46a7815aa /pkgs/tools/video
parent80d4d591522bf3d31e0fe4703bbc30388f7fc8f2 (diff)
tsduck: init at 3.31-2761
Signed-off-by: Sirio Balmelli <sirio@b-ad.ch>
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
Co-authored-by: Stanisław Pitucha <viraptor@gmail.com>
Diffstat (limited to 'pkgs/tools/video')
-rw-r--r--pkgs/tools/video/tsduck/default.nix83
1 files changed, 83 insertions, 0 deletions
diff --git a/pkgs/tools/video/tsduck/default.nix b/pkgs/tools/video/tsduck/default.nix
new file mode 100644
index 0000000000000..dbbb87ae6a524
--- /dev/null
+++ b/pkgs/tools/video/tsduck/default.nix
@@ -0,0 +1,83 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, curl
+, jdk
+, libedit
+, srt
+}:
+
+stdenv.mkDerivation rec {
+  pname = "tsduck";
+  version = "3.31-2761";
+
+  src = fetchFromGitHub {
+    owner = "tsduck";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-268TKCh3naebbw+sOQ6d4N/zl7UEVtc3l3flFAYHDU4=";
+  };
+
+  buildInputs = [
+    curl
+    libedit
+    srt
+    jdk
+  ];
+
+  # remove tests which call out to https://tsduck.io/download/test/...
+  postPatch = ''
+    sed -i"" \
+      -e '/TSUNIT_TEST(testMasterPlaylist);/ d' \
+      -e '/TSUNIT_TEST(testMasterPlaylistWithAlternate);/ d' \
+      -e '/TSUNIT_TEST(testMediaPlaylist);/ d' \
+      src/utest/utestHLS.cpp
+
+    sed -i"" \
+      -e '/TSUNIT_TEST(testBetterSystemRandomGenerator);/ d' \
+      src/utest/utestSystemRandomGenerator.cpp
+
+    sed -i"" \
+      -e '/TSUNIT_ASSERT(request.downloadBinaryContent/ d' \
+      -e '/TSUNIT_ASSERT(!request.downloadBinaryContent/ d' \
+      -e '/TSUNIT_TEST(testGitHub);/ d' \
+      -e '/TSUNIT_TEST(testGoogle);/ d' \
+      -e '/TSUNIT_TEST(testNoRedirection);/ d' \
+      -e '/TSUNIT_TEST(testReadMeFile);/ d' \
+      src/utest/utestWebRequest.cpp
+
+    sed -i"" \
+      -e '/TSUNIT_TEST(testHomeDirectory);/ d' \
+      src/utest/utestSysUtils.cpp
+  '';
+
+  enableParallelBuilding = true;
+  makeFlags = [
+    "NODEKTEC=1"
+    "NOHIDES=1"
+    "NOPCSC=1"
+    "NORIST=1"
+    "NOVATEK=1"
+  ] ++ installFlags;
+
+  checkTarget = "test";
+  doCheck = true;
+
+  installFlags = [
+    "SYSROOT=${placeholder "out"}"
+    "SYSPREFIX=/"
+    "USRLIBDIR=/lib"
+  ];
+  installTargets = [
+    "install-tools"
+    "install-devel"
+  ];
+
+  meta = with lib; {
+    description = "The MPEG Transport Stream Toolkit";
+    homepage    = "https://github.com/tsduck/tsduck";
+    license     = licenses.bsd2;
+    maintainers = with maintainers; [ siriobalmelli ];
+    platforms   = platforms.all;
+  };
+}