Skip to content

Commit

Permalink
docs: use nixos-render-docs
Browse files Browse the repository at this point in the history
This commit removes the `home-manager-render-docs` package in favor
of upstream `nixos-render-docs` where the manpage generator has been
updated to take a `--header` and a `--footer` flag specifying static
content around the content derived from the options.json file.
  • Loading branch information
considerate committed Dec 7, 2023
1 parent e4d2903 commit 8dae204
Show file tree
Hide file tree
Showing 9 changed files with 24 additions and 247 deletions.
16 changes: 5 additions & 11 deletions docs/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -92,41 +92,35 @@ let
optionIdPrefix = "nix-darwin-opt-";
};

# home-manager specialized version of nixos-render-docs
home-manager-render-docs = let python = pkgs.buildPackages.python3;
in python.pkgs.callPackage ./home-manager-render-docs.nix {
python = python;
nixos-render-docs = python.pkgs.toPythonModule pkgs.nixos-render-docs;
};

release-config = builtins.fromJSON (builtins.readFile ../release.json);
revision = "release-${release-config.release}";
# Generate the `man home-configuration.nix` package
home-configuration-manual =
pkgs.runCommand "home-configuration-reference-manpage" {
nativeBuildInputs =
[ pkgs.buildPackages.installShellFiles home-manager-render-docs ];
[ pkgs.buildPackages.installShellFiles pkgs.nixos-render-docs ];
allowedReferences = [ "out" ];
} ''
# Generate manpages.
mkdir -p $out/share/man/man5
mkdir -p $out/share/man/man1
home-manager-render-docs -j $NIX_BUILD_CORES options manpage \
nixos-render-docs -j $NIX_BUILD_CORES options manpage \
--revision ${revision} \
--header ${./home-configuration-nix-header.5} \
--footer ${./home-configuration-nix-footer.5} \
${hmOptionsDocs.optionsJSON}/share/doc/nixos/options.json \
$out/share/man/man5/home-configuration.nix.5
cp ${./home-manager.1} $out/share/man/man1/home-manager.1
'';
# Generate the HTML manual pages
home-manager-manual = pkgs.callPackage ./home-manager-manual.nix {
optionsDoc = hmOptionsDocs;
nmd = nmdSrc;
home-manager-options = {
home-manager = hmOptionsDocs.optionsJSON;
nixos = nixosOptionsDocs.optionsJSON;
nix-darwin = nixDarwinOptionsDocs.optionsJSON;
};
inherit revision home-manager-render-docs;
inherit revision;
};
html = home-manager-manual;
htmlOpenTool = pkgs.callPackage ./html-open-tool.nix { } { inherit html; };
Expand Down
3 changes: 3 additions & 0 deletions docs/home-configuration-nix-footer.5
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
.SH "AUTHORS"
.PP
Home Manager contributors
9 changes: 9 additions & 0 deletions docs/home-configuration-nix-header.5
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
.TH "HOME-CONFIGURATION\&.NIX" "5" "01/01/1980" "Home Manager"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" enable line breaks after slashes
.cflags 4 /
.SH "NAME"
\fIhome\-configuration\&.nix\fP \- Home Manager configuration specification
8 changes: 4 additions & 4 deletions docs/home-manager-manual.nix
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
{ stdenv, home-manager-render-docs, optionsDoc, lib, documentation-highlighter
, nmd, revision, home-manager-options }:
{ stdenv, lib, documentation-highlighter, nmd, revision, home-manager-options
, nixos-render-docs }:
let outputPath = "share/doc/home-manager";
in stdenv.mkDerivation {
name = "nixpkgs-manual";

nativeBuildInputs = [ home-manager-render-docs ];
nativeBuildInputs = [ nixos-render-docs ];

src = ./manual;

Expand Down Expand Up @@ -33,7 +33,7 @@ in stdenv.mkDerivation {
'@OPTIONS_JSON@' \
${home-manager-options.nix-darwin}/share/doc/nixos/options.json
home-manager-render-docs manual html \
nixos-render-docs manual html \
--manpage-urls ./manpage-urls.json \
--revision ${lib.trivial.revisionWithDefault revision} \
--stylesheet ${nmd}/static/style.css \
Expand Down
27 changes: 0 additions & 27 deletions docs/home-manager-render-docs.nix

This file was deleted.

55 changes: 0 additions & 55 deletions docs/home-manager-render-docs/home_manager_render_docs/__init__.py

This file was deleted.

129 changes: 0 additions & 129 deletions docs/home-manager-render-docs/home_manager_render_docs/options.py

This file was deleted.

18 changes: 0 additions & 18 deletions docs/home-manager-render-docs/pyproject.toml

This file was deleted.

6 changes: 3 additions & 3 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit 8dae204

Please sign in to comment.