about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/tools/jet/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/tools/jet/default.nix')
-rw-r--r--nixpkgs/pkgs/development/tools/jet/default.nix35
1 files changed, 35 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/tools/jet/default.nix b/nixpkgs/pkgs/development/tools/jet/default.nix
new file mode 100644
index 000000000000..6e140620adc9
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/jet/default.nix
@@ -0,0 +1,35 @@
+{ lib, buildGraalvmNativeImage, fetchurl }:
+
+buildGraalvmNativeImage rec {
+  pname = "jet";
+  version = "0.1.0";
+
+  src = fetchurl {
+    url = "https://github.com/borkdude/${pname}/releases/download/v${version}/${pname}-${version}-standalone.jar";
+    sha256 = "sha256-RCEIIZfPmOLW3akjEgaEas4xOtYxL6lQsxDv2szB8K4";
+  };
+
+  reflectionJson = fetchurl {
+    url = "https://raw.githubusercontent.com/borkdude/${pname}/v${version}/reflection.json";
+    sha256 = "sha256-mOUiKEM5tYhtpBpm7KtslyPYFsJ+Wr+4ul6Zi4aS09Q=";
+  };
+
+  extraNativeImageBuildArgs = [
+    "-H:+ReportExceptionStackTraces"
+    "-J-Dclojure.spec.skip-macros=true"
+    "-J-Dclojure.compiler.direct-linking=true"
+    "-H:IncludeResources=JET_VERSION"
+    "-H:ReflectionConfigurationFiles=${reflectionJson}"
+    "--initialize-at-build-time"
+    "-H:Log=registerResource:"
+    "--no-fallback"
+    "--no-server"
+  ];
+
+  meta = with lib; {
+    description = "CLI to transform between JSON, EDN and Transit, powered with a minimal query language";
+    homepage = "https://github.com/borkdude/jet";
+    license = licenses.epl10;
+    maintainers = with maintainers; [ ericdallo ];
+  };
+}