about summary refs log tree commit diff
path: root/pkgs/by-name/ra
diff options
context:
space:
mode:
authorIvan Mincik <ivan.mincik@gmail.com>2024-05-10 04:49:03 +0000
committerGitHub <noreply@github.com>2024-05-10 04:49:03 +0000
commitc669412a552f31c45adad47894e7fd6a8698e53f (patch)
tree550e5ef8d3b4a567ea31c61e266c681e9439e0f8 /pkgs/by-name/ra
parent2ddf884c02aaf3c64601ea091239087df7954271 (diff)
parentc2378ab16cb5701fbb9014dabac34c967879ca47 (diff)
Merge pull request #309050 from lorenzleutgeb/radicle
radicle: reinit at 1.0.0-rc.8
Diffstat (limited to 'pkgs/by-name/ra')
-rw-r--r--pkgs/by-name/ra/radicle-node/package.nix62
1 files changed, 62 insertions, 0 deletions
diff --git a/pkgs/by-name/ra/radicle-node/package.nix b/pkgs/by-name/ra/radicle-node/package.nix
new file mode 100644
index 0000000000000..4cfcef61f359a
--- /dev/null
+++ b/pkgs/by-name/ra/radicle-node/package.nix
@@ -0,0 +1,62 @@
+{ lib
+, stdenv
+, fetchgit
+, asciidoctor
+, git
+, installShellFiles
+, rustPlatform
+, testers
+, radicle-node
+, darwin
+}: rustPlatform.buildRustPackage rec {
+  pname = "radicle-node";
+  version = "1.0.0-rc.8";
+  env.RADICLE_VERSION = version;
+
+  src = fetchgit {
+    url = "https://seed.radicle.xyz/z3gqcJUoA1n9HaHKufZs5FCSGazv5.git";
+    rev = "refs/namespaces/z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT/refs/tags/v${version}";
+    hash = "sha256-F2n7ui0EgXK8fT76M14RVhXXGeRYub+VpH+puDUJ1pQ=";
+  };
+  cargoHash = "sha256-+QthR5M3qAxC42TPnR5iylfpuWnsSmg68SuCbhmkCvw=";
+
+  nativeBuildInputs = [ asciidoctor installShellFiles ];
+  nativeCheckInputs = [ git ];
+  buildInputs = lib.optionals stdenv.buildPlatform.isDarwin [
+    darwin.apple_sdk.frameworks.Security
+  ];
+
+  doCheck = with stdenv.hostPlatform; isx86_64 && isLinux;
+
+  preCheck = ''
+    export PATH=$PATH:$PWD/target/${stdenv.hostPlatform.rust.rustcTargetSpec}/release
+  '';
+  checkFlags = [
+    "--skip=service::message::tests::test_node_announcement_validate"
+    "--skip=tests::test_announcement_relay"
+    "--skip=tests::e2e"
+  ];
+
+  postInstall = ''
+    for page in $(find -name '*.adoc'); do
+      asciidoctor -d manpage -b manpage $page
+      installManPage ''${page::-5}
+    done
+  '';
+
+  passthru.tests.version = testers.testVersion { package = radicle-node; };
+
+  meta = {
+    description = "Radicle node and CLI for decentralized code collaboration";
+    longDescription = ''
+      Radicle is an open source, peer-to-peer code collaboration stack built on Git.
+      Unlike centralized code hosting platforms, there is no single entity controlling the network.
+      Repositories are replicated across peers in a decentralized manner, and users are in full control of their data and workflow.
+    '';
+    homepage = "https://radicle.xyz";
+    license = with lib.licenses; [ asl20 mit ];
+    platforms = lib.platforms.unix;
+    maintainers = with lib.maintainers; [ amesgen lorenzleutgeb ];
+    mainProgram = "rad";
+  };
+}