antora-lunr-extension: init at 1.0.0-alpha.8#332341
antora-lunr-extension: init at 1.0.0-alpha.8#332341philiptaron merged 10 commits intoNixOS:masterfrom
Conversation
0fabb09 to
827c50d
Compare
827c50d to
465f7f2
Compare
Changelogv2: 465f7f2
v1: 827c50d
v0: 0fabb09 |
|
The "Vet nixpkgs" action fails with the following error message:
@philiptaron, how to pass files as an explicit argument when packages are not explicitly defined in The For reference, commit b807da48ae86f49ece76ec9d77cb288dc8f50e47 ("antora: move package into pkgs/by-name directory") explicitly removes the package declaration from |
Thanks for the question, Noah (@trueNAHO). In this case, you want to have Instead of taking a dependency in your derivation on a path, take a dependency on the package. I think it's also fine to do some copying -- in other words, have one test for antora, and another for the lunr extension. They'll happen to share a lot of stuff, but that's OK. |
465f7f2 to
b63ef6d
Compare
Changelogv3: b63ef6d
v2: 465f7f2
v1: 827c50d
v0: 0fabb09 |
I rebased your elegant proposal into commit 42a162d ("antora-lunr-extension: init at 1.0.0-alpha.8"): From 17c1ec3fff056b4d50c0d5ef2fd9121a5a94e976 Mon Sep 17 00:00:00 2001
From: NAHO <90870942+trueNAHO@users.noreply.github.com>
Date: Sun, 29 Sep 2024 12:05:23 +0200
Subject: [PATCH] antora-lunr-extension: do not access files outside package
---
pkgs/by-name/an/antora-lunr-extension/package.nix | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/pkgs/by-name/an/antora-lunr-extension/package.nix b/pkgs/by-name/an/antora-lunr-extension/package.nix
index 222580dec7a7..4a3c78554db6 100644
--- a/pkgs/by-name/an/antora-lunr-extension/package.nix
+++ b/pkgs/by-name/an/antora-lunr-extension/package.nix
@@ -1,6 +1,6 @@
{
+ antora,
buildNpmPackage,
- callPackage,
fetchFromGitLab,
lib,
nix-update-script,
@@ -23,7 +23,7 @@ buildNpmPackage rec {
npmDepsHash = "sha256-EtjZL6U/uSGSYSqtuatCkdWP0NHxRuht13D9OaM4x00=";
passthru = {
- tests.run = callPackage ../antora/test {
+ tests.run = antora.tests.run.override {
antora-lunr-extension-test = true;
};
--I might have figured this out myself if the error message did not get me stuck on |
I'm planning on doing a pass through all the errors that can come from |
philiptaron
left a comment
There was a problem hiding this comment.
What does @ehllie think of this?
There was a problem hiding this comment.
No need to pull this into a local. Just use it down below.
There was a problem hiding this comment.
Yes, this use of a let binding feels a little superfluous. Setting it directly inside the fetchFromGitLab call attributes would be a bit clearer.
There was a problem hiding this comment.
According to #332341 (comment), I will inline the pname value. However, the srcFetchFromGitLab values are also used to generate the following documentation URL:
Should I inline all srcFetchFromGitLab instances or only pname?
|
From my point of view as long as the antora package builds it's as good as it was. It was an auto-generated with node2nix before, and I repackaged it as an example of how other packages in node-packages.json could be moved for the purpose of this issue #229475. |
Move the antora package from the deprecated location into the pkgs/by-name directory to regroup future Antora packages. Link: NixOS#332341
Let's take a look at what the script is doing for us.
We don't need any of that; the repository is empty.So we can resolve it by deleting the line and blaming me for picking an example that wasn't what was needed in this case. |
57d984c to
7a31aa5
Compare
Changelogv6: 7a31aa5
v5: 57d984c
v4: a8b38f5
v3: b63ef6d
v2: 465f7f2
v1: 827c50d
v0: 0fabb09 |
In that case, should the $ git checkout --quiet 8885a1e21ad43f8031c738a08029cd1d4dcbc2f7 && rg deterministic-git
pkgs/development/compilers/flutter/flutter.nix: (. '${../../../build-support/fetchgit/deterministic-git}'; make_deterministic_repo .)
pkgs/development/compilers/flutter/engine/source.nix: source ${../../../../build-support/fetchgit/deterministic-git}If yes, I can submit a PR for this. Here is the PR introducing |
|
Friendly ping: AFAIK, this PR is merge-ready. |
|
|
7a31aa5 to
a883a99
Compare
Changelogv7: a883a99
v6: 7a31aa5
v5: 57d984c
v4: a8b38f5
v3: b63ef6d
v2: 465f7f2
v1: 827c50d
v0: 0fabb09 |
v7 works around the issue by installing the UI bundle in the diff --git a/pkgs/by-name/an/antora-ui-default/package.nix b/pkgs/by-name/an/antora-ui-default/package.nix
index b0ae50e094dc..2e1278026ae8 100644
--- a/pkgs/by-name/an/antora-ui-default/package.nix
+++ b/pkgs/by-name/an/antora-ui-default/package.nix
@@ -41,7 +41,14 @@ stdenvNoCC.mkDerivation {
src = fetchFromGitLab srcFetchFromGitLab;
phases = [ "installPhase" ];
- installPhase = ''install --mode 755 -D "$src/ui-bundle.zip" "$out"'';
+
+ # Install '$src/ui-bundle.zip' to '$out/ui-bundle.zip' instead of '$out' to
+ # prevent the ZIP from being misidentified as a binary [1].
+ #
+ # [1]: https://github.com/NixOS/nixpkgs/blob/8885a1e21ad43f8031c738a08029cd1d4dcbc2f7/pkgs/stdenv/generic/setup.sh#L792-L795
+ installPhase = ''
+ install --mode 755 -D "$src/ui-bundle.zip" "$out/ui-bundle.zip"
+ '';
meta = {
description = "Antora default UI bundle";
@@ -56,8 +63,9 @@ stdenvNoCC.mkDerivation {
> -- Antora
> https://docs.antora.org/antora/3.1/playbook/ui-bundle-url
- This UI bundle is intended to be passed to `antora`'s `--ui-bundle-url`
- flag or injected into the [`ui.bundle.url`
+ This UI bundle is available under `$out/ui-bundle.zip` and intended to be
+ passed to `antora`'s `--ui-bundle-url` flag or injected into the
+ [`ui.bundle.url`
key](https://docs.antora.org/antora/3.1/playbook/ui-bundle-url/#url-key)
to avoid irreproducible
[`https://gitlab.com/antora/antora-ui-default/-/jobs/artifacts/HEAD/raw/build/ui-bundle.zip?job=bundle-stable`](https://gitlab.com/${srcFetchFromGitLab.owner}/${srcFetchFromGitLab.repo}/-/blob/${srcFetchFromGitLab.rev}/README.adoc#user-content-use-the-default-ui)
diff --git a/pkgs/by-name/an/antora/test/default.nix b/pkgs/by-name/an/antora/test/default.nix
index 08cba1660aa8..ce5e0d5f50bb 100644
--- a/pkgs/by-name/an/antora/test/default.nix
+++ b/pkgs/by-name/an/antora/test/default.nix
@@ -47,7 +47,7 @@ stdenvNoCC.mkDerivation {
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-url = "${antora-ui-default}/ui-bundle.zip";
}
} "${playbook}"
'';It seem more reasonable to comply with the |
|
a883a99 to
faf1557
Compare
Changelogv8: 4ce5400
v7: a883a99
v6: 7a31aa5
v5: 57d984c
v4: a8b38f5
v3: b63ef6d
v2: 465f7f2
v1: 827c50d
v0: 0fabb09 |
The Antora default UI bundle is intended to be passed to antora's --ui-bundle-url flag or injected into the ui.bundle.url key to avoid irreproducible [1] references. This UI bundle allows writing reproducible Antora tests. [1]: https://gitlab.com/antora/antora-ui-default/-/jobs/artifacts/HEAD/raw/build/ui-bundle.zip?job=bundle-stable Link: NixOS#332341
To simplify maintenance of the antora-ui-default and antora-lunr-extension packages, naho should also be added as a maintainer for the core Antora package. Link: NixOS#332341
faf1557 to
4ce5400
Compare
|
Description of changes
This patchset introduces the Antora Lunr extension, complementing the
pkgs.antorapackage:This extension is officially supported by Antora and heavily maintained by the AsciiDoc team.
Things done
nix.conf? (See Nix manual)sandbox = relaxedsandbox = truenix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/)Add a 👍 reaction to pull requests you find important.