aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/servers/tvheadend/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/servers/tvheadend/default.nix')
-rw-r--r--nixpkgs/pkgs/servers/tvheadend/default.nix23
1 files changed, 19 insertions, 4 deletions
diff --git a/nixpkgs/pkgs/servers/tvheadend/default.nix b/nixpkgs/pkgs/servers/tvheadend/default.nix
index 009dd9bfc43..f4c3270bf3d 100644
--- a/nixpkgs/pkgs/servers/tvheadend/default.nix
+++ b/nixpkgs/pkgs/servers/tvheadend/default.nix
@@ -1,10 +1,22 @@
{ stdenv, fetchFromGitHub, cmake, makeWrapper, pkgconfig
-, avahi, dbus, gettext, git, gnutar, gzip, bzip2, ffmpeg, libiconv, openssl, python
-, which, zlib }:
+, avahi, dbus, gettext, git, gnutar, gzip, bzip2, ffmpeg_3, libiconv, openssl, python
+, v4l-utils, which, zlib }:
let
version = "4.2.8";
+ dtv-scan-tables = stdenv.mkDerivation {
+ pname = "dtv-scan-tables";
+ version = "2020-05-18";
+ src = fetchFromGitHub {
+ owner = "tvheadend";
+ repo = "dtv-scan-tables";
+ rev = "e3138a506a064f6dfd0639d69f383e8e576609da";
+ sha256 = "19ac9ds3rfc2xrqcywsbd1iwcpv7vmql7gp01iikxkzcgm2g2b6w";
+ };
+ nativeBuildInputs = [ v4l-utils ];
+ installFlags = [ "DATADIR=$(out)" ];
+ };
in stdenv.mkDerivation {
pname = "tvheadend";
inherit version;
@@ -17,7 +29,7 @@ in stdenv.mkDerivation {
};
buildInputs = [
- avahi dbus gettext git gnutar gzip bzip2 ffmpeg libiconv openssl python
+ avahi dbus gettext git gnutar gzip bzip2 ffmpeg_3 libiconv openssl python
which zlib
];
@@ -28,7 +40,7 @@ in stdenv.mkDerivation {
NIX_CFLAGS_COMPILE = [ "-Wno-error=format-truncation" "-Wno-error=stringop-truncation" ];
# disable dvbscan, as having it enabled causes a network download which
- # cannot happen during build.
+ # cannot happen during build. We now include the dtv-scan-tables ourselves
configureFlags = [
"--disable-dvbscan"
"--disable-bintray_cache"
@@ -45,6 +57,9 @@ in stdenv.mkDerivation {
substituteInPlace src/config.c \
--replace /usr/bin/tar ${gnutar}/bin/tar
+ substituteInPlace src/input/mpegts/scanfile.c \
+ --replace /usr/share/dvb ${dtv-scan-tables}/dvbv5
+
# the version detection script `support/version` reads this file if it
# exists, so let's just use that
echo ${version} > rpm/version