diff options
| author | Robert Hensing <robert@roberthensing.nl> | 2022-05-25 12:49:26 +0200 |
|---|---|---|
| committer | github-actions[bot] <github-actions[bot]@users.noreply.github.com> | 2022-06-10 12:32:55 +0000 |
| commit | 16ecd9ab18dc16cf89974efbc79bce503da555f3 (patch) | |
| tree | 044aced81c9ecedebe44258f034f3feea062e40e | |
| parent | Merge pull request #177169 from NixOS/backport-176568-to-release-22.05 (diff) | |
| download | nixpkgs-origin/backport-174470-to-release-22.05.tar.gz | |
make-options-doc: Filter options after transformOptionsorigin/backport-174470-to-release-22.05
This allows the user-supplied function to change the visibility
of options.
(cherry picked from commit 75bc6da23794da02b8bd4fd3bb9acadb17029315)
| -rw-r--r-- | nixos/lib/make-options-doc/default.nix | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/nixos/lib/make-options-doc/default.nix b/nixos/lib/make-options-doc/default.nix index 353fdb87a9f1..3324ef7fcd6f 100644 --- a/nixos/lib/make-options-doc/default.nix +++ b/nixos/lib/make-options-doc/default.nix @@ -47,8 +47,11 @@ let else if lib.isFunction x then "<function>" else x; - optionsList = lib.flip map optionsListVisible - (opt: transformOptions opt + rawOpts = lib.optionAttrSetToDocList options; + transformedOpts = map transformOptions rawOpts; + filteredOpts = lib.filter (opt: opt.visible && !opt.internal) transformedOpts; + optionsList = lib.flip map filteredOpts + (opt: opt // lib.optionalAttrs (opt ? example) { example = substSpecial opt.example; } // lib.optionalAttrs (opt ? default) { default = substSpecial opt.default; } // lib.optionalAttrs (opt ? type) { type = substSpecial opt.type; } @@ -90,9 +93,6 @@ let ''; in "<itemizedlist>${lib.concatStringsSep "\n" (map (p: describe (unpack p)) packages)}</itemizedlist>"; - # Remove invisible and internal options. - optionsListVisible = lib.filter (opt: opt.visible && !opt.internal) (lib.optionAttrSetToDocList options); - optionsNix = builtins.listToAttrs (map (o: { name = o.name; value = removeAttrs o ["name" "visible" "internal"]; }) optionsList); in rec { |
