62 lines
2 KiB
Nix
62 lines
2 KiB
Nix
{ lib, stdenv, fetchurl, runCommand, makeWrapper, node_webkit_0_9,
|
|
fromCi ? true,
|
|
build ? "652",
|
|
version ? if fromCi then "0.3.7-2-0ac62b848" else "0.3.7.2"
|
|
}:
|
|
|
|
let
|
|
config =
|
|
if stdenv.system == "x86_64-linux" then
|
|
{sys = "Linux32";
|
|
sha256 =
|
|
if fromCi then "06av40b68xy2mv2fp9qg8npqmnvkl00p2jvbm2fdfnpc9jj746iy"
|
|
else "0lm9k4fr73a9p00i3xj2ywa4wvjf9csadm0pcz8d6imwwq44sa8b";
|
|
}
|
|
else if stdenv.system == "i686-linux" then
|
|
{sys = "Linux64";
|
|
sha256 =
|
|
if fromCi then "1nr2zaixdr5vqynga7jig3fw9dckcnzcbdmbr8haq4a486x2nq0f"
|
|
else "1dz1cp31qbwamm9pf8ydmzzhnb6d9z73bigdv3y74dgicz3dpr91";
|
|
}
|
|
else throw "Unsupported system ${stdenv.system}";
|
|
|
|
fetchurlConf =
|
|
let
|
|
ciBase = "https://ci.popcorntime.io/job/Popcorn-Experimental/652/artifact/build/releases/Popcorn-Time";
|
|
relBase = "https://get.popcorntime.io/build";
|
|
in {
|
|
url =
|
|
if fromCi then "${ciBase}/${lib.toLower config.sys}/Popcorn-Time-${version}-${config.sys}.tar.xz"
|
|
else "${relBase}/Popcorn-Time-${version}-Linux64.tar.xz";
|
|
sha256 = config.sha256;
|
|
};
|
|
|
|
popcorntimePackage = stdenv.mkDerivation rec {
|
|
name =
|
|
if fromCi then "popcorntime-git-2015-07-07"
|
|
else "popcorntime-${version}";
|
|
src = fetchurl fetchurlConf;
|
|
sourceRoot = ".";
|
|
installPhase = ''
|
|
mkdir -p $out
|
|
cp -r *.so *.pak $out/
|
|
cat ${node_webkit_0_9}/bin/nw package.nw > $out/Popcorn-Time
|
|
chmod 555 $out/Popcorn-Time
|
|
'';
|
|
};
|
|
in
|
|
runCommand "popcorntime-${version}" {
|
|
buildInputs = [ makeWrapper ];
|
|
meta = with stdenv.lib; {
|
|
homepage = http://popcorntime.io/;
|
|
description = "An application that streams movies and TV shows from torrents";
|
|
license = stdenv.lib.licenses.gpl3;
|
|
platforms = platforms.linux;
|
|
maintainers = with maintainers; [ bobvanderlinden ];
|
|
};
|
|
}
|
|
''
|
|
mkdir -p $out/bin
|
|
makeWrapper ${popcorntimePackage}/Popcorn-Time $out/bin/popcorntime
|
|
''
|