1
0
Fork 0
mirror of https://github.com/hercules-ci/flake-parts.git synced 2024-12-14 11:47:31 +00:00

Write a bit about integrations

This commit is contained in:
Robert Hensing 2022-05-29 18:42:42 +02:00
parent d1095bd855
commit f45a71bca6

View file

@ -41,6 +41,24 @@
<a href="https://github.com/hercules-ci/flake-parts/blob/main/ChangeLog.md">ChangeLog</a> <a href="https://github.com/hercules-ci/flake-parts/blob/main/ChangeLog.md">ChangeLog</a>
</p> </p>
<p>
Integrations:
</p>
<ul>
<li><code>github:hercules-ci/hercules-ci-effects</code></li>
<li><code>github:hercules-ci/pre-commit-hooks.nix/flakeModule</code></li>
</ul>
<h2>Write your own integration</h2>
<p>
For a general introduction to modules, you can read <a href="https://nixos.org/manual/nixos/stable/index.html#sec-writing-modules">Writing Modules</a> in the NixOS manual, though it goes into NixOS specifics quite quickly. Instead of <code>services.&ltname>.*</code>, etc, we have our own <a href="./options.html">options</a>.
</p>
<p>
Writing modules in a distributed ecosystem can be a bit different. If you're inclined to write to some other module's options, consider whether those will be loaded and whether your integration idea is always desirable. If it's not always desirable, consider splitting it off into an extra module, e.g. <code>flakeModules.someOther</code>. Otherwise check if it's loaded: <code>lib.optionalAttrs (options?some.other.option)</code>. You can ask <code>@roberth</code> on GitHub.
</p>
</body> </body>
</html> </html>