Build html docs using mdbook
This commit is contained in:
parent
4577195f2e
commit
a79f9379c2
|
@ -27,7 +27,7 @@ jobs:
|
|||
uses: cachix/install-nix-action@v24
|
||||
|
||||
- name: Build docs
|
||||
run: nix build .#options-doc
|
||||
run: nix build .#options-html
|
||||
|
||||
- name: Prepare assets for upload
|
||||
run: cp -r --dereference --no-preserve=mode,ownership result/ public/
|
||||
|
|
16
flake.nix
16
flake.nix
|
@ -32,7 +32,7 @@
|
|||
in
|
||||
lib' // {
|
||||
# some functions get promoted to be directly under libS
|
||||
inherit (lib'.doc) mkModuleDoc;
|
||||
inherit (lib'.doc) mkModuleDoc mkMdBook;
|
||||
inherit (lib'.modules) mkOpinionatedOption mkRecursiveDefault;
|
||||
inherit (lib'.ssh) mkPubKey;
|
||||
};
|
||||
|
@ -57,9 +57,15 @@
|
|||
} // flake-utils.lib.eachDefaultSystem (system: let
|
||||
libS = self.lib { config = { }; inherit lib; pkgs = nixpkgs.legacyPackages.${system}; };
|
||||
in {
|
||||
packages.options-doc = libS.mkModuleDoc {
|
||||
module = self.nixosModule;
|
||||
urlPrefix = "https://github.com/SuperSandro2000/nixos-modules/tree/master/";
|
||||
};
|
||||
packages = rec {
|
||||
options-doc = libS.mkModuleDoc {
|
||||
module = self.nixosModule;
|
||||
urlPrefix = "https://github.com/SuperSandro2000/nixos-modules/tree/master/";
|
||||
};
|
||||
options-html = libS.mkMdBook {
|
||||
projectName = "nixos-modules";
|
||||
moduleDoc = options-doc;
|
||||
};
|
||||
};
|
||||
});
|
||||
}
|
||||
|
|
15
lib/doc.nix
15
lib/doc.nix
|
@ -24,4 +24,19 @@
|
|||
-e 's|file\:///nix/store/.+\-source/(.+)\)|${url}/\1/default\.nix\)|g' \
|
||||
> $out/options.md
|
||||
'';
|
||||
|
||||
mkMdBook = { projectName, moduleDoc }: with pkgs; stdenv.mkDerivation {
|
||||
name = "${projectName}-docs";
|
||||
nativeBuildInputs = [ mdbook ];
|
||||
buildCommand = ''
|
||||
mkdir src
|
||||
|
||||
echo -e "[book]\ntitle=\"${projectName}\"" > src/book.toml
|
||||
echo -e "# Summary\n\n- [Options](options.md)" > src/SUMMARY.md
|
||||
ln -s ${moduleDoc}/options.md ./src
|
||||
|
||||
mdbook build
|
||||
mv book $out
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue