The README/CONTRIBUTING files are authored with GitHub in mind, but we
want to re-use them for the docs website.
Replace the existing simple substitution with a pandoc AST-based filter.
`internal` options are intended to be implicitly not `visible`. This is
already handled correctly by the nixos tooling, but our custom tooling
did not correctly handle the edge case.
This lead to strange cases where an internal option is not included in
the docs, but its sub-options were still visible.
This should help to maintain uniformity and hopefully make contributions
easier.
Kept regression tests local to the derivation, however these are also
added to the flake checks.
Based of the README for now, with a small additional "welcome to the
docs" section.
Perhaps in future, we could re-use the README.md verbatim? Perhaps with
some additional post-processing.
I think we'd want to dramatically reduce its size first though.
By having a dedicated homepage outside of `user-guide`, this fixes#1625
Long descriptions for plugins will shove the plugin's source link and
maintainer information far down the page. Since those are fairly short
and the description is a variable size. Moving below to maintain
consistent placement.
Replaced the `isDocs` specialArg added in #1807 with an internal module
option.
We should only use `specialArgs` when absolutely necessary, a module or
`_module.args` is preferred, but those aren't available until `config`
is evaluated so they can't be used for `imports`.
The main problem with `specialArgs` is it makes our modules less
portable.
Luckily that shouldn't be an issue for these context flags.
Let's simplify things by defining all modules in `./plugins`, `./modules`
and `./wrappers/modules`.
Instead of currying `pkgs` into a bootstrapping module, we can require
`defaultPkgs` be provided as a special arg.
This refactor allows us to completely remove `flake-modules/modules.nix`!
This commit only adds Home-Manager specific options, we should add
sections for the different kind of modules too.
This is _not_ added to the man docs, as it is more complex. If need
arises we could look into how to do it.
Including the `moduleDoc` text directly in the `copy_docs` script meant
special chars were interpreted by bash.
Write the text to the nix store so we can `cat` a file instead.
This adds the `nixvimExtend` attribute to the generated standalone
derivation, this attribute takes a module as an argument and returns a
new standalone derivation with the initial module & the extended module
merged together.
* plugin/committia: Use correct maintainers import
* plugins/neocord: Remove redyf as the entry is not in the list
* docs: Allow to add an URL to the plugin