From 916dc592d490d12324d69c3383548ca07ccfb2dc Mon Sep 17 00:00:00 2001 From: Johannes Frankenau Date: Wed, 27 Jun 2018 18:08:03 +0000 Subject: [PATCH] tvbrowser-bin: init at 4.0.1 (#42620) --- pkgs/applications/misc/tvbrowser/bin.nix | 56 ++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 58 insertions(+) create mode 100644 pkgs/applications/misc/tvbrowser/bin.nix diff --git a/pkgs/applications/misc/tvbrowser/bin.nix b/pkgs/applications/misc/tvbrowser/bin.nix new file mode 100644 index 00000000000..38865ca4f3d --- /dev/null +++ b/pkgs/applications/misc/tvbrowser/bin.nix @@ -0,0 +1,56 @@ +{ stdenv, fetchurl, makeWrapper, jre, makeDesktopItem }: + +let + desktopItem = makeDesktopItem { + name = "tvbrowser"; + exec = "tvbrowser"; + icon = "tvbrowser"; + comment = "Themeable and easy to use TV Guide"; + desktopName = "TV-Browser"; + genericName = "Electronic TV Program Guide"; + categories = "AudioVideo;TV;Java;"; + startupNotify = "true"; + extraEntries = '' + StartupWMClass=tvbrowser-TVBrowser + ''; + }; + +in stdenv.mkDerivation rec { + pname = "tvbrowser"; + version = "4.0.1"; + name = "${pname}-bin-${version}"; + + src = fetchurl { + url = "mirror://sourceforge/${pname}/TV-Browser%20Releases%20%28Java%208%20and%20higher%29/${version}/${pname}_${version}_bin.tar.gz"; + sha256 = "0ahsirf6cazs5wykgbwsc6n35w6jprxyphzqmm7d370n37sb07pm"; + }; + + nativeBuildInputs = [ makeWrapper ]; + + installPhase = '' + mkdir -p $out/share/java/${pname} + cp -R * $out/share/java/${pname} + rm $out/share/java/${pname}/${pname}.{sh,desktop} + + mkdir -p $out/share/applications + ln -s ${desktopItem}/share/applications/* $out/share/applications/ + + for i in 16 32 48 128; do + mkdir -p $out/share/icons/hicolor/''${i}x''${i}/apps + ln -s $out/share/java/${pname}/imgs/${pname}$i.png $out/share/icons/hicolor/''${i}x''${i}/apps/${pname}.png + done + + mkdir -p $out/bin + makeWrapper ${jre}/bin/java $out/bin/${pname} \ + --add-flags "-jar $out/share/java/${pname}/${pname}.jar" \ + --run "cd $out/share/java/${pname}" + ''; + + meta = with stdenv.lib; { + description = "Electronic TV Program Guide"; + homepage = https://www.tvbrowser.org/; + license = licenses.gpl3; + platforms = platforms.linux; + maintainers = with maintainers; [ jfrankenau ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8b4997706b2..507f3ee5d84 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -21418,6 +21418,8 @@ with pkgs; trufflehog = callPackage ../tools/security/trufflehog { }; + tvbrowser-bin = callPackage ../applications/misc/tvbrowser/bin.nix { }; + tvheadend = callPackage ../servers/tvheadend { }; ums = callPackage ../servers/ums { };