nixpkgs/pkgs/development/tools/casperjs/default.nix

55 lines
1.3 KiB
Nix
Raw Normal View History

2016-04-30 10:25:52 +00:00
{ stdenv, fetchFromGitHub, fontsConf, phantomjs2, python, nodePackages }:
2012-12-13 16:39:16 +00:00
2016-04-30 09:11:23 +00:00
let version = "1.1.1";
2012-12-13 16:39:16 +00:00
2016-04-30 09:11:00 +00:00
in stdenv.mkDerivation rec {
name = "casperjs-${version}";
src = fetchFromGitHub {
owner = "casperjs";
repo = "casperjs";
rev = version;
2016-04-30 09:11:23 +00:00
sha256 = "187prrm728xpn0nx9kxfxa4fwd7w25z78nsxfk6a6kl7c5656jpz";
2012-12-13 16:39:16 +00:00
};
2016-04-30 09:13:00 +00:00
buildInputs = [ phantomjs2 python nodePackages.eslint ];
2016-04-30 09:11:00 +00:00
2012-12-13 16:39:16 +00:00
patchPhase = ''
substituteInPlace bin/casperjs --replace "/usr/bin/env python" "${python}/bin/python" \
2016-04-30 09:13:00 +00:00
--replace "'phantomjs'" "'${phantomjs2}/bin/phantomjs'"
2012-12-13 16:39:16 +00:00
'';
2016-04-30 09:11:00 +00:00
dontBuild = true;
2016-04-30 09:11:23 +00:00
doCheck = true;
2016-04-30 10:25:52 +00:00
checkPhase = ''
export FONTCONFIG_FILE=${fontsConf}
make test
'';
2012-12-13 16:39:16 +00:00
installPhase = ''
cp -r . $out
2012-12-13 16:39:16 +00:00
'';
meta = {
2016-04-30 09:11:00 +00:00
description = ''
Navigation scripting & testing utility for PhantomJS and SlimerJS
'';
2012-12-13 16:39:16 +00:00
longDescription = ''
2016-04-30 09:11:00 +00:00
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.
2012-12-13 16:39:16 +00:00
'';
homepage = http://casperjs.org;
license = stdenv.lib.licenses.mit;
maintainers = [ stdenv.lib.maintainers.bluescreen303 ];
2013-10-08 09:05:19 +00:00
platforms = stdenv.lib.platforms.linux;
2012-12-13 16:39:16 +00:00
};
}