From 6248c46b275cd2ce69f473bdb4a083cf143ffe43 Mon Sep 17 00:00:00 2001 From: NAHO <90870942+trueNAHO@users.noreply.github.com> Date: Sun, 4 Aug 2024 19:41:18 +0200 Subject: [PATCH] antora-lunr-extension: init at 1.0.0-alpha.8 Link: https://github.com/NixOS/nixpkgs/pull/332341 --- .../an/antora-lunr-extension/package.nix | 63 +++++++++++++++++++ pkgs/by-name/an/antora/test/default.nix | 5 +- 2 files changed, 67 insertions(+), 1 deletion(-) create mode 100644 pkgs/by-name/an/antora-lunr-extension/package.nix diff --git a/pkgs/by-name/an/antora-lunr-extension/package.nix b/pkgs/by-name/an/antora-lunr-extension/package.nix new file mode 100644 index 000000000000..c4eb14a9996f --- /dev/null +++ b/pkgs/by-name/an/antora-lunr-extension/package.nix @@ -0,0 +1,63 @@ +{ + antora, + buildNpmPackage, + fetchFromGitLab, + lib, + nix-update-script, +}: +buildNpmPackage rec { + pname = "antora-lunr-extension"; + version = "1.0.0-alpha.8"; + + src = fetchFromGitLab { + hash = "sha256-GplCwhUl8jurD4FfO6/T3Vo1WFjg+rtAjWeIh35unk4="; + owner = "antora"; + repo = pname; + rev = "v${version}"; + }; + + npmDepsHash = "sha256-EtjZL6U/uSGSYSqtuatCkdWP0NHxRuht13D9OaM4x00="; + + # Prevent tests from failing because they are fetching data at runtime. + postPatch = '' + substituteInPlace package.json --replace '"_mocha"' '""' + ''; + + # Pointing $out to $out/lib/node_modules/@antora/lunr-extension simplifies + # Antora's extension option usage from + # + # --extension ${pkgs.antora-lunr-extension}/lib/node_modules/@antora/lunr-extension + # + # to + # + # --extension ${pkgs.antora-lunr-extension} + postInstall = '' + directory="$(mktemp --directory)" + + mv "$out/"{.,}* "$directory" + mv "$directory/lib/node_modules/@antora/lunr-extension/"{.,}* "$out" + ''; + + passthru = { + tests.run = antora.tests.run.override { + antora-lunr-extension-test = true; + }; + + updateScript = nix-update-script { }; + }; + + meta = { + description = "Antora extension adding offline, full-text search powered by Lunr"; + homepage = "https://gitlab.com/antora/antora-lunr-extension"; + license = lib.licenses.mpl20; + + longDescription = '' + This Antora extension is intended to be passed to `antora`'s `--extension` + flag or injected into the [`antora.extensions` + key](https://docs.antora.org/antora/3.1/extend/enable-extension). + ''; + + maintainers = [ lib.maintainers.naho ]; + platforms = lib.platforms.all; + }; +} diff --git a/pkgs/by-name/an/antora/test/default.nix b/pkgs/by-name/an/antora/test/default.nix index bc55bfc58808..ce5e0d5f50bb 100644 --- a/pkgs/by-name/an/antora/test/default.nix +++ b/pkgs/by-name/an/antora/test/default.nix @@ -1,12 +1,14 @@ { antora, + antora-lunr-extension, + antora-lunr-extension-test ? false, antora-ui-default, gitMinimal, lib, stdenvNoCC, }: stdenvNoCC.mkDerivation { - name = "${antora.pname}-test"; + name = "${antora.pname}${lib.optionalString antora-lunr-extension-test "-${antora-lunr-extension.pname}"}-test"; src = ./minimal_working_example; postPatch = @@ -43,6 +45,7 @@ stdenvNoCC.mkDerivation { antora ${ lib.cli.toGNUCommandLineShell { } { cache-dir = "$(mktemp --directory)"; + extension = if antora-lunr-extension-test then antora-lunr-extension else false; to-dir = placeholder "out"; ui-bundle-url = "${antora-ui-default}/ui-bundle.zip"; }