about summary refs log tree commit diff
path: root/pkgs/development/web/cypress
diff options
context:
space:
mode:
authorMarek Mahut <marek.mahut@satoshilabs.com>2019-07-16 15:39:08 +0200
committerMarek Mahut <marek.mahut@satoshilabs.com>2019-07-16 22:23:24 +0200
commitdb599c86c5fa2669b0f658344d7d5ad3064986f8 (patch)
treeaaa00b740a020d13b12a9d04d65151178c55235f /pkgs/development/web/cypress
parent49ca44cf17d8f21494a7721fc275e4029bf49b68 (diff)
cypress: init at 3.4.0
Diffstat (limited to 'pkgs/development/web/cypress')
-rw-r--r--pkgs/development/web/cypress/default.nix40
1 files changed, 40 insertions, 0 deletions
diff --git a/pkgs/development/web/cypress/default.nix b/pkgs/development/web/cypress/default.nix
new file mode 100644
index 0000000000000..e36b950f1f20e
--- /dev/null
+++ b/pkgs/development/web/cypress/default.nix
@@ -0,0 +1,40 @@
+{ stdenv, fetchzip, autoPatchelfHook, xorg, gtk2, gnome2, gtk3, nss, alsaLib, udev, unzip }:
+
+stdenv.mkDerivation rec{
+  pname = "cypress";
+  version = "3.4.0";
+
+  src = fetchzip {
+    url = "https://cdn.cypress.io/desktop/${version}/linux-x64/cypress.zip";
+    sha256 = "1j59az9j37a61ryvh975bc7bj43qi3dq0871fyambh1j2mby00qn";
+  };
+
+  # don't remove runtime deps
+  dontPatchELF = true;
+
+  nativeBuildInputs = [ autoPatchelfHook ];
+
+  buildInputs = with xorg; [
+    libXScrnSaver libXdamage libXtst
+  ] ++ [
+    nss gtk2 alsaLib gnome2.GConf gtk3 unzip
+  ];
+
+  runtimeDependencies = [ udev.lib ];
+
+  installPhase = ''
+    mkdir -p $out/bin $out/opt/cypress
+    cp -vr * $out/opt/cypress/
+    # Let's create the file binary_state ourselves to make the npm package happy on initial verification.
+    echo '{"verified": true}' > $out/opt/cypress/binary_state.json
+    ln -s $out/opt/cypress/Cypress $out/bin/Cypress
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Fast, easy and reliable testing for anything that runs in a browser";
+    homepage = "https://www.cypress.io";
+    license = licenses.mit;
+    platforms = ["x86_64-linux"];
+    maintainers = with maintainers; [ tweber mmahut ];
+  };
+}