summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/servers/oxigraph/default.nix40
-rw-r--r--pkgs/top-level/all-packages.nix4
2 files changed, 44 insertions, 0 deletions
diff --git a/pkgs/servers/oxigraph/default.nix b/pkgs/servers/oxigraph/default.nix
new file mode 100644
index 00000000000..12dba25d1e6
--- /dev/null
+++ b/pkgs/servers/oxigraph/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, stdenv
+, rustPlatform
+, fetchFromGitHub
+, IOKit
+, Security
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "oxigraph";
+  version = "0.3.11";
+
+  src = fetchFromGitHub {
+    owner = pname;
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-7KbDZKKJPk3QTp4siIbdB6xKbslw73Lhc7NoeOuA0Og=";
+    fetchSubmodules = true;
+  };
+
+  cargoSha256 = "sha256-Yqn6hwejg6LzcqW0MiUN3tqrOql6cpu/5plaOz+2/ns=";
+
+  nativeBuildInputs = [
+    rustPlatform.bindgenHook
+  ];
+  buildInputs = lib.optionals stdenv.isDarwin [ IOKit Security ];
+
+  cargoBuildFlags = [ "--package" "oxigraph_server" ];
+
+  # requires packaging of the associated python modules
+  doCheck = false;
+
+  meta = with lib; {
+    homepage = "https://github.com/oxigraph/oxigraph";
+    description = "SPARQL graph database";
+    platforms = [ "x86_64-linux" "aarch64-linux" "aarch64-darwin" ];
+    maintainers = with maintainers; [ astro ];
+    license = with licenses; [ asl20 mit ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index d968a4a6e4b..735c2566196 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -9301,6 +9301,10 @@ with pkgs;
 
   ox = callPackage ../applications/editors/ox { };
 
+  oxigraph = callPackage ../servers/oxigraph {
+    inherit (darwin.apple_sdk.frameworks) IOKit Security;
+  };
+
   file-rename = callPackage ../tools/filesystems/file-rename { };
 
   kcollectd = libsForQt5.callPackage ../tools/misc/kcollectd {};