nixpkgs/pkgs/development/tools/casperjs/default.nix
2020-04-10 17:54:53 +01:00

57 lines
1.4 KiB
Nix

{ stdenv, fetchFromGitHub, fontsConf, phantomjs2, python, nodePackages }:
let version = "1.1.1";
in stdenv.mkDerivation {
pname = "casperjs";
inherit version;
src = fetchFromGitHub {
owner = "casperjs";
repo = "casperjs";
rev = version;
sha256 = "187prrm728xpn0nx9kxfxa4fwd7w25z78nsxfk6a6kl7c5656jpz";
};
buildInputs = [ phantomjs2 python nodePackages.eslint ];
patchPhase = ''
substituteInPlace bin/casperjs --replace "/usr/bin/env python" "${python}/bin/python" \
--replace "'phantomjs'" "'${phantomjs2}/bin/phantomjs'"
'';
dontBuild = true;
doCheck = true;
checkPhase = ''
export FONTCONFIG_FILE=${fontsConf}
make test
'';
installPhase = ''
cp -r . $out
'';
meta = {
description = ''
Navigation scripting & testing utility for PhantomJS and SlimerJS
'';
longDescription = ''
CasperJS is a navigation scripting & testing utility for PhantomJS and
SlimerJS (still experimental). It eases the process of defining a full
navigation scenario and provides useful high-level functions, methods &
syntactic sugar for doing common tasks.
'';
homepage = "http://casperjs.org";
license = stdenv.lib.licenses.mit;
maintainers = [ stdenv.lib.maintainers.bluescreen303 ];
platforms = stdenv.lib.platforms.linux;
broken = true;
};
}