-
Notifications
You must be signed in to change notification settings - Fork 46
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature/documentation request: local documentation generation #78
Comments
I think the way to go here is to make the website repo expose a function for this purpose. The documentation generation story is in flux at the moment, with the NixOS logic moving towards markdown, with a simplified toolchain and other (extensive) improvements such as NixOS/nixpkgs#199363 coming. Home-manager uses its own docs library that was around the time that Nixpkgs started exposing the module docs logic. We should all converge to a single, sensible, standard implementation, for which the best place is the |
The kubenix website\docs might be of interest as well. script to generate the docs nix code which generates options.json from module definitions. One thing the website is lacking is options search, similar to the one for nixos |
I'm quite happy to accept PRs to https://github.com/hercules-ci/flake.parts-website, after which you can use that repo to build your own docs. Doing it this way also helps with discoverability of your public modules. I'm going to hold off reusability improvements to |
I guess not much has changed regarding this situation. But another use case that I myself ran into now is that I have non-public flake-parts modules used internally at a company. I was looking a bit at the Would it be worth looking into exposing some of those modules or should I hold off to something more aligned has landed in nixpkgs and the nix community as a whole? |
If your module is already published, you can do something like the following. I'll use
You could even run this in a Hercules CI effect or in a traditional CLI-first CI. For private modules this still needs a bit of work though. The way the website is set up, it uses the module system to configure the site (of course!) and it could expose a function to extend that "site configuration". |
I've seen the wizardry you've used and now extracted into the flake.parts-website repository for generating single-page documentation from the in-code description/examples and would love to be able to adapt that technique to my own public flake modules. I plan to review that code soon, as well as whatever is used for home-manager's equivalent.
Incidentally this capability would also help me reason my way through my confusion around top-level vs perSystem options I posted here.
The text was updated successfully, but these errors were encountered: