1
1
Fork 0
mirror of https://github.com/NixOS/nix.git synced 2025-12-08 18:11:02 +01:00
nix/doc/manual/source
Robert Hensing d007b4e81b doc: make manpage generation independent of mdbook
Add standalone markdown preprocessor to generate manpages without requiring
mdbook's Rust toolchain. This removes a significant build dependency for
manpage generation while keeping the HTML manual (mdbook) working unchanged.

Changes:
- Add expand-includes.py: Python 3 script that recursively expands
  {{#include}} directives, resolves @docroot@ to nix.dev URLs, and handles
  @generated@/ paths for build-generated files
- Update render-manpage.sh: Replace mdbook-based implementation with
  standalone version that uses expand-includes.py + lowdown
- Update meson.build: All 134 manpage targets now use standalone renderer
  with proper dependencies (expand-includes.py, experimental-features-shortlist)
- Fix nix-hash.md: Remove extra parenthesis in markdown link syntax

Benefits:
- No mdbook/Rust toolchain required for manpage builds
- Manpages contain nix.dev/latest URLs instead of broken relative paths
- Fixes bug where mdbook didn't expand experimental-features-shortlist.md
- 98.5% identical output to mdbook (2 files differ, both acceptable)

All 134 manpages (131 section 1, 2 section 5, 1 section 8) build successfully.
2025-12-06 21:34:44 +01:00
..
advanced-topics doc: Add eval-profiler documentation and release note 2025-05-21 22:16:31 +00:00
architecture docs: Fix miscellaneous typos and formatting issues 2025-05-13 22:20:11 +00:00
command-ref doc: make manpage generation independent of mdbook 2025-12-06 21:34:44 +01:00
development Document the JSON Schema testing a bit 2025-11-24 17:03:42 -05:00
figures Rename doc/manual{src -> source} 2024-10-14 11:21:24 -04:00
installation Add ghcr for pre-release 2025-10-28 11:16:37 -07:00
language Add link to scopedImport documentation 2025-12-04 01:53:54 +01:00
package-management Fix documentation for GC w.r.t. symlinks 2025-07-10 16:19:43 -04:00
protocols Introduce --json-format for nix path-info 2025-12-03 22:04:21 -05:00
release-notes release-notes/rl-2.26.md: remove hidden Unicode RLO control chars (#14666) 2025-11-30 18:38:18 +08:00
store Move derivation JSON doc to index.md in dir 2025-11-24 15:23:50 -05:00
_redirects Rename doc/manual{src -> source} 2024-10-14 11:21:24 -04:00
c-api.md Rename doc/manual{src -> source} 2024-10-14 11:21:24 -04:00
favicon.png Rename doc/manual{src -> source} 2024-10-14 11:21:24 -04:00
favicon.svg Rename doc/manual{src -> source} 2024-10-14 11:21:24 -04:00
glossary.md Fix links in the manual 2025-11-04 00:31:46 +01:00
introduction.md docs: don't mention Haskell 2025-04-29 10:58:34 +02:00
meson.build Add JSON Schema infrastructure, use for Derivation 2025-10-16 17:24:18 -04:00
quick-start.md Rename doc/manual{src -> source} 2024-10-14 11:21:24 -04:00
SUMMARY.md.in JSON impl and Schema for DummyStore 2025-11-24 17:04:24 -05:00