zilch/docs/manpages.nix
Puck Meerburg 30814de5e4 docs: Generate manpages from docs, use in CLI
Change-Id: I6a6a69646c6ff4c4b70cb928dc1df06890144429
2025-11-14 13:01:04 +00:00

13 lines
571 B
Nix

{ pkgs, asciidoctor, groff, ... }: let
generateManpage = name: file: pkgs.runCommandNoCC name {} ''
${asciidoctor}/bin/asciidoctor -b manpage -o $out ${file}
'';
textifyManpage = name: manpage: pkgs.runCommandNoCC name {} ''
${groff}/bin/groff -t -e -mandoc -Tascii ${manpage} > $out
'';
generateBoth = name: file: rec { man = generateManpage name file; txt = textifyManpage "${name}.txt" man; };
in {
rust = generateBoth "zilch-cli-rust.1" ./modules/ROOT/pages/rust/man.adoc;
go = generateBoth "zilch-cli-go.1" ./modules/ROOT/pages/go/man.adoc;
}