about summary refs log tree commit diff
path: root/pkgs/tools/security/arti
diff options
context:
space:
mode:
authorMario Rodas <marsam@users.noreply.github.com>2022-06-29 04:20:00 +0000
committerMario Rodas <marsam@users.noreply.github.com>2022-06-29 04:20:00 +0000
commit90ea31176120ec417589d8e19b8212f268811800 (patch)
tree944a428ddd02213181ddbc0b089d2a3389c004d5 /pkgs/tools/security/arti
parent7b410b13eeff35506bf581997d37731572e0fbda (diff)
arti: init at 0.5.0
Diffstat (limited to 'pkgs/tools/security/arti')
-rw-r--r--pkgs/tools/security/arti/default.nix43
1 files changed, 43 insertions, 0 deletions
diff --git a/pkgs/tools/security/arti/default.nix b/pkgs/tools/security/arti/default.nix
new file mode 100644
index 0000000000000..2c3861d60bad4
--- /dev/null
+++ b/pkgs/tools/security/arti/default.nix
@@ -0,0 +1,43 @@
+{ lib
+, stdenv
+, rustPlatform
+, fetchFromGitLab
+, pkg-config
+, sqlite
+, openssl
+, CoreServices
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "arti";
+  version = "0.5.0";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.torproject.org";
+    group = "tpo";
+    owner = "core";
+    repo = "arti";
+    rev = "arti-v${version}";
+    sha256 = "sha256-xze8Frxy9Rv01yz0L8GkEaXUoLlpODv3pEat1HnDIOs=";
+  };
+
+  cargoSha256 = "sha256-yCQLSLxEziDQGDNtP7pmXlTImSKzr/O/5sITMHVJg8E=";
+
+  nativeBuildInputs = lib.optionals stdenv.isLinux [ pkg-config ];
+
+  buildInputs = [ sqlite ]
+    ++ lib.optionals stdenv.isLinux [ openssl ]
+    ++ lib.optionals stdenv.isDarwin [ CoreServices ];
+
+  cargoBuildFlags = [ "--package" "arti" ];
+
+  cargoTestFlags = [ "--package" "arti" ];
+
+  meta = with lib; {
+    description = "An implementation of Tor in Rust";
+    homepage = "https://gitlab.torproject.org/tpo/core/arti";
+    changelog = "https://gitlab.torproject.org/tpo/core/arti/-/raw/${src.rev}/CHANGELOG.md";
+    license = with licenses; [ asl20 /* or */ mit ];
+    maintainers = with maintainers; [ marsam ];
+  };
+}