about summary refs log tree commit diff
path: root/pkgs/development/tools/pax-rs
diff options
context:
space:
mode:
authorklntsky <klntsky@gmail.com>2019-01-08 21:16:59 +0300
committerDmitry Kalinkin <dmitry.kalinkin@gmail.com>2019-01-08 13:16:59 -0500
commitc869fc2ac1319abf730cd2065fc9d0e774fbe65b (patch)
tree929c8794873f4badd03ac929f920f58018c1e4e8 /pkgs/development/tools/pax-rs
parente6133502a281e7a0be4981aa2997ad6dabf2dd0a (diff)
pax-rs: init at 0.4.0 (#53660)
Diffstat (limited to 'pkgs/development/tools/pax-rs')
-rw-r--r--pkgs/development/tools/pax-rs/default.nix40
1 files changed, 40 insertions, 0 deletions
diff --git a/pkgs/development/tools/pax-rs/default.nix b/pkgs/development/tools/pax-rs/default.nix
new file mode 100644
index 0000000000000..3a4f35c0412be
--- /dev/null
+++ b/pkgs/development/tools/pax-rs/default.nix
@@ -0,0 +1,40 @@
+{ stdenv, fetchFromGitHub, fetchurl, rustPlatform, runCommand } :
+with rustPlatform;
+
+buildRustPackage rec {
+  name = "pax-rs-${version}";
+  version = "0.4.0";
+
+  meta = with stdenv.lib; {
+    description = "The fastest JavaScript bundler in the galaxy.";
+    longDescription = ''
+      The fastest JavaScript bundler in the galaxy. Fully supports ECMAScript module syntax (import/export) in addition to CommonJS require(<string>).
+    '';
+    homepage = https://github.com/nathan/pax;
+    license = licenses.mit;
+    maintainers = [ maintainers.klntsky ];
+    platforms = platforms.all;
+  };
+
+  src =
+    let
+      source = fetchFromGitHub {
+        owner = "nathan";
+        repo = "pax";
+        rev = "pax-v${version}";
+        sha256 = "1l2xpgsms0bfc0i3l0hyw4dbp6d4qdxa9vxyp704p27vvn4ndhv2";
+      };
+
+      cargo-lock = fetchurl {
+        url = "https://gist.github.com/8084/c7863424d7df0c379782015f6bb3b399/raw/1cf7481e33984fd1510dc77ed677606d08fa8eb6/Cargo.lock";
+        sha256 = "0ff1b64b99cbca1cc2ceabcd2e4f7bc3411e3a2a9fbb9db2204d9240fe38ddeb";
+      };
+    in
+    runCommand "pax-rs-src" {} ''
+      cp -R ${source} $out
+      chmod +w $out
+      cp ${cargo-lock} $out/Cargo.lock
+    '';
+
+  cargoSha256 = "0sdk090sp89vgwz5a71f481a5sk13kcqb29cx1dslfq59sp4j6y7";
+}