75060fab76
The current vdr derivation can not be overritten. The attribute plugins gets lost while overriding and that leads to problems when evaluating vdrPlugins. Moved vdr own plugins outside vdr derivation.
335 lines
9.2 KiB
Nix
335 lines
9.2 KiB
Nix
{ stdenv, fetchurl, fetchgit, vdr, ffmpeg_2, alsaLib, fetchFromGitHub
|
|
, libvdpau, libxcb, xcbutilwm, graphicsmagick, libav, pcre, xorgserver, ffmpeg
|
|
, libiconv, boost, libgcrypt, perl, utillinux, groff, libva, xorg, ncurses }:
|
|
let
|
|
mkPlugin = name: stdenv.mkDerivation {
|
|
name = "vdr-${vdr.version}-${name}";
|
|
inherit (vdr) src;
|
|
buildInputs = [ vdr ];
|
|
preConfigure = "cd PLUGINS/src/${name}";
|
|
installFlags = [ "DESTDIR=$(out)" ];
|
|
};
|
|
in {
|
|
|
|
skincurses = (mkPlugin "skincurses").overrideAttrs(oldAttr: {
|
|
buildInputs = oldAttr.buildInputs ++ [ ncurses ];
|
|
});
|
|
|
|
inherit (stdenv.lib.genAttrs [
|
|
"epgtableid0" "hello" "osddemo" "pictures" "servicedemo" "status" "svdrpdemo"
|
|
] mkPlugin);
|
|
|
|
femon = stdenv.mkDerivation rec {
|
|
|
|
name = "vdr-femon-2.4.0";
|
|
|
|
buildInputs = [ vdr ];
|
|
|
|
src = fetchurl {
|
|
url = "http://www.saunalahti.fi/~rahrenbe/vdr/femon/files/${name}.tgz";
|
|
sha256 = "1hra1xslj8s68zbyr8zdqp8yap0aj1p6rxyc6cwy1j122kwcnapp";
|
|
};
|
|
|
|
postPatch = "substituteInPlace Makefile --replace /bin/true true";
|
|
|
|
makeFlags = [ "DESTDIR=$(out)" ];
|
|
|
|
meta = with stdenv.lib; {
|
|
homepage = http://www.saunalahti.fi/~rahrenbe/vdr/femon/;
|
|
description = "DVB Frontend Status Monitor plugin for VDR";
|
|
maintainers = [ maintainers.ck3d ];
|
|
license = licenses.gpl2;
|
|
platforms = [ "i686-linux" "x86_64-linux" ];
|
|
};
|
|
|
|
};
|
|
|
|
vaapidevice = stdenv.mkDerivation {
|
|
|
|
name = "vdr-vaapidevice-0.7.0";
|
|
|
|
buildInputs = [
|
|
vdr libxcb xcbutilwm ffmpeg
|
|
alsaLib
|
|
libvdpau # vdpau
|
|
libva # va-api
|
|
] ++ (with xorg; [ libxcb libX11 ]);
|
|
|
|
makeFlags = [ "DESTDIR=$(out)" ];
|
|
|
|
postPatch = ''
|
|
substituteInPlace softhddev.c --replace /usr/bin/X ${xorgserver}/bin/X
|
|
'';
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "pesintta";
|
|
repo = "vdr-plugin-vaapidevice";
|
|
sha256 = "072y61fpkh3i2dragg0nsd4g3malgwxkwpdrb1ykdljyzf52s5hs";
|
|
rev = "c99afc23a53e6d91f9afaa99af59b30e68e626a8";
|
|
};
|
|
|
|
meta = with stdenv.lib; {
|
|
homepage = https://github.com/pesintta/vdr-plugin-vaapidevice;
|
|
description = "VDR SoftHDDevice Plug-in (with VA-API VPP additions)";
|
|
maintainers = [ maintainers.ck3d ];
|
|
license = licenses.gpl2;
|
|
platforms = [ "i686-linux" "x86_64-linux" ];
|
|
};
|
|
|
|
};
|
|
|
|
|
|
markad = stdenv.mkDerivation rec {
|
|
name = "vdr-markad-2017-03-13";
|
|
|
|
src = fetchgit {
|
|
url = "git://projects.vdr-developer.org/vdr-plugin-markad.git";
|
|
sha256 = "0jvy70r8bcmbs7zdqilfz019z5xkz5c6rs57h1dsgv8v6x86c2i4";
|
|
rev = "ea2e182ec798375f3830f8b794e7408576f139ad";
|
|
};
|
|
|
|
buildInputs = [ vdr libav ];
|
|
|
|
postPatch = ''
|
|
substituteInPlace command/Makefile --replace '$(DESTDIR)/usr' '$(DESTDIR)'
|
|
|
|
substituteInPlace plugin/markad.cpp \
|
|
--replace "/usr/bin" "$out/bin" \
|
|
--replace "/var/lib/markad" "$out/var/lib/markad"
|
|
|
|
substituteInPlace command/markad-standalone.cpp \
|
|
--replace "/var/lib/markad" "$out/var/lib/markad"
|
|
'';
|
|
|
|
preBuild = ''
|
|
mkdir -p $out/lib/vdr
|
|
'';
|
|
|
|
buildFlags = [
|
|
"DESTDIR=$(out)"
|
|
"LIBDIR=$(out)/lib/vdr"
|
|
"VDRDIR=${vdr.dev}/include/vdr"
|
|
"LOCALEDIR=$(DESTDIR)/share/locale"
|
|
];
|
|
|
|
installFlags = buildFlags;
|
|
|
|
meta = with stdenv.lib; {
|
|
homepage = https://projects.vdr-developer.org/projects/plg-markad;
|
|
description = "Ein Programm zum automatischen Setzen von Schnittmarken bei Werbeeinblendungen während einer Sendung.";
|
|
maintainers = [ maintainers.ck3d ];
|
|
license = licenses.gpl2;
|
|
platforms = [ "i686-linux" "x86_64-linux" ];
|
|
};
|
|
|
|
};
|
|
|
|
epgsearch = stdenv.mkDerivation rec {
|
|
pname = "vdr-epgsearch";
|
|
version = "2.4.0";
|
|
|
|
src = fetchurl {
|
|
url = "https://projects.vdr-developer.org/git/vdr-plugin-epgsearch.git/snapshot/vdr-plugin-epgsearch-${version}.tar.bz2";
|
|
sha256 = "0xfgn17vicyjwdf0rbkrik4q16mnfi305d4wmi8f0qk825pa0z3y";
|
|
};
|
|
|
|
postPatch = ''
|
|
for f in *.sh; do
|
|
patchShebangs "$f"
|
|
done
|
|
'';
|
|
|
|
nativeBuildInputs = [
|
|
perl # for pod2man and pos2html
|
|
utillinux
|
|
groff
|
|
];
|
|
|
|
buildInputs = [
|
|
vdr
|
|
pcre
|
|
];
|
|
|
|
buildFlags = [
|
|
"SENDMAIL="
|
|
"REGEXLIB=pcre"
|
|
];
|
|
|
|
installFlags = [
|
|
"DESTDIR=$(out)"
|
|
];
|
|
|
|
outputs = [ "out" "man" ];
|
|
|
|
meta = with stdenv.lib; {
|
|
homepage = http://winni.vdr-developer.org/epgsearch;
|
|
description = "Searchtimer and replacement of the VDR program menu";
|
|
maintainers = [ maintainers.ck3d ];
|
|
license = licenses.gpl2;
|
|
platforms = [ "i686-linux" "x86_64-linux" ];
|
|
};
|
|
|
|
};
|
|
|
|
vnsiserver = let
|
|
name = "vnsiserver";
|
|
version = "1.8.0";
|
|
in stdenv.mkDerivation {
|
|
name = "vdr-${name}-${version}";
|
|
|
|
buildInputs = [ vdr ];
|
|
|
|
installFlags = [ "DESTDIR=$(out)" ];
|
|
|
|
src = fetchFromGitHub {
|
|
repo = "vdr-plugin-${name}";
|
|
owner = "FernetMenta";
|
|
rev = "v${version}";
|
|
sha256 = "0n7idpxqx7ayd63scl6xwdx828ik4kb2mwz0c30cfjnmnxxd45lw";
|
|
};
|
|
|
|
meta = with stdenv.lib; {
|
|
homepage = https://github.com/FernetMenta/vdr-plugin-vnsiserver;
|
|
description = "VDR plugin to handle KODI clients.";
|
|
maintainers = [ maintainers.ck3d ];
|
|
license = licenses.gpl2;
|
|
platforms = [ "i686-linux" "x86_64-linux" ];
|
|
};
|
|
|
|
};
|
|
|
|
text2skin = stdenv.mkDerivation rec {
|
|
name = "vdr-text2skin-1.3.4-20170702";
|
|
|
|
src = fetchgit {
|
|
url = "git://projects.vdr-developer.org/vdr-plugin-text2skin.git";
|
|
sha256 = "19hkwmaw6nwak38bv6cm2vcjjkf4w5yjyxb98qq6zfjjh5wq54aa";
|
|
rev = "8f7954da2488ced734c30e7c2704b92a44e6e1ad";
|
|
};
|
|
|
|
buildInputs = [ vdr graphicsmagick ];
|
|
|
|
buildFlags = [
|
|
"DESTDIR=$(out)"
|
|
"IMAGELIB=graphicsmagic"
|
|
"VDRDIR=${vdr.dev}/include/vdr"
|
|
"LOCALEDIR=$(DESTDIR)/share/locale"
|
|
"LIBDIR=$(DESTDIR)/lib/vdr"
|
|
];
|
|
|
|
preBuild = ''
|
|
mkdir -p $out/lib/vdr
|
|
'';
|
|
|
|
installPhase = ":";
|
|
|
|
meta = with stdenv.lib; {
|
|
homepage = https://projects.vdr-developer.org/projects/plg-text2skin;
|
|
description = "VDR Text2Skin Plugin";
|
|
maintainers = [ maintainers.ck3d ];
|
|
license = licenses.gpl2;
|
|
platforms = [ "i686-linux" "x86_64-linux" ];
|
|
};
|
|
};
|
|
|
|
fritzbox = let
|
|
libconvpp = stdenv.mkDerivation {
|
|
name = "jowi24-libconv++-20130216";
|
|
propagatedBuildInputs = [ libiconv ];
|
|
CXXFLAGS = "-std=gnu++11 -Os";
|
|
src = fetchFromGitHub {
|
|
owner = "jowi24";
|
|
repo = "libconvpp";
|
|
rev = "90769b2216bc66c5ea5e41a929236c20d367c63b";
|
|
sha256 = "0bf0dwxrzd42l84p8nxcsjdk1gvzlhad93nsbn97z6kr61n4cr33";
|
|
};
|
|
installPhase = ''
|
|
mkdir -p $out/lib $out/include/libconv++
|
|
cp source.a $out/lib/libconv++.a
|
|
cp *.h $out/include/libconv++
|
|
'';
|
|
};
|
|
|
|
liblogpp = stdenv.mkDerivation {
|
|
name = "jowi24-liblogpp-20130216";
|
|
CXXFLAGS = "-std=gnu++11 -Os";
|
|
src = fetchFromGitHub {
|
|
owner = "jowi24";
|
|
repo = "liblogpp";
|
|
rev = "eee4046d2ae440974bcc8ceec00b069f0a2c62b9";
|
|
sha256 = "01aqvwmwh5kk3mncqpim8llwha9gj5qq0c4cvqfn4h8wqi3d9l3p";
|
|
};
|
|
installPhase = ''
|
|
mkdir -p $out/lib $out/include/liblog++
|
|
cp source.a $out/lib/liblog++.a
|
|
cp *.h $out/include/liblog++
|
|
'';
|
|
};
|
|
|
|
libnetpp = stdenv.mkDerivation {
|
|
name = "jowi24-libnet++-20180628";
|
|
CXXFLAGS = "-std=gnu++11 -Os";
|
|
src = fetchFromGitHub {
|
|
owner = "jowi24";
|
|
repo = "libnetpp";
|
|
rev = "212847f0efaeffee8422059b8e202d844174aaf3";
|
|
sha256 = "0vjl6ld6aj25rzxm26yjv3h2gy7gp7qnbinpw6sf1shg2xim9x0b";
|
|
};
|
|
installPhase = ''
|
|
mkdir -p $out/lib $out/include/libnet++
|
|
cp source.a $out/lib/libnet++.a
|
|
cp *.h $out/include/libnet++
|
|
'';
|
|
buildInputs = [ boost liblogpp libconvpp ];
|
|
};
|
|
|
|
libfritzpp = stdenv.mkDerivation {
|
|
name = "jowi24-libfritzpp-20131201";
|
|
CXXFLAGS = "-std=gnu++11 -Os";
|
|
src = fetchFromGitHub {
|
|
owner = "jowi24";
|
|
repo = "libfritzpp";
|
|
rev = "ca19013c9451cbac7a90155b486ea9959ced0f67";
|
|
sha256 = "0jk93zm3qzl9z96gfs6xl1c8ip8lckgbzibf7jay7dbgkg9kyjfg";
|
|
};
|
|
installPhase = ''
|
|
mkdir -p $out/lib $out/include/libfritz++
|
|
cp source.a $out/lib/libfritz++.a
|
|
cp *.h $out/include/libfritz++
|
|
'';
|
|
propagatedBuildInputs = [ libgcrypt ];
|
|
buildInputs = [ boost liblogpp libconvpp libnetpp ];
|
|
};
|
|
|
|
in stdenv.mkDerivation rec {
|
|
pname = "vdr-fritzbox";
|
|
|
|
version = "1.5.3";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "jowi24";
|
|
repo = "vdr-fritz";
|
|
rev = version;
|
|
sha256 = "0wab1kyma9jzhm6j33cv9hd2a5d1334ghgdi2051nmr1bdcfcsw8";
|
|
};
|
|
|
|
postUnpack = ''
|
|
cp ${libfritzpp}/lib/* $sourceRoot/libfritz++
|
|
cp ${liblogpp}/lib/* $sourceRoot/liblog++
|
|
cp ${libnetpp}/lib/* $sourceRoot/libnet++
|
|
cp ${libconvpp}/lib/* $sourceRoot/libconv++
|
|
'';
|
|
|
|
buildInputs = [ vdr boost libconvpp libfritzpp libnetpp liblogpp ];
|
|
|
|
installFlags = [ "DESTDIR=$(out)" ];
|
|
|
|
meta = with stdenv.lib; {
|
|
homepage = https://github.com/jowi24/vdr-fritz;
|
|
description = "A plugin for VDR to access AVMs Fritz Box routers";
|
|
maintainers = [ maintainers.ck3d ];
|
|
license = licenses.gpl2;
|
|
platforms = [ "i686-linux" "x86_64-linux" ];
|
|
};
|
|
};
|
|
}
|