about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/tools/documentation/antora/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/tools/documentation/antora/default.nix')
-rw-r--r--nixpkgs/pkgs/development/tools/documentation/antora/default.nix25
1 files changed, 25 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/tools/documentation/antora/default.nix b/nixpkgs/pkgs/development/tools/documentation/antora/default.nix
new file mode 100644
index 000000000000..9f1aa0370871
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/documentation/antora/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, nodePackages_10_x }:
+
+let
+  drvName = drv: (builtins.parseDrvName drv).name;
+  linkNodeDeps = ({ pkg, deps, name ? "" }:
+    let
+      targetModule = if name != "" then name else drvName pkg;
+    in nodePackages_10_x.${pkg}.override (oldAttrs: {
+      postInstall = ''
+        mkdir -p $out/lib/node_modules/${targetModule}/node_modules
+        ${stdenv.lib.concatStringsSep "\n" (map (dep: ''
+          ln -s ${nodePackages_10_x.${dep}}/lib/node_modules/${drvName dep} \
+            $out/lib/node_modules/${targetModule}/node_modules/${drvName dep}
+        '') deps
+        )}
+      '';
+    })
+);
+in linkNodeDeps {
+ pkg = "@antora/cli";
+ name = "@antora/cli";
+ deps = [
+   "@antora/site-generator-default"
+ ];
+}