Commit Graph

93 Commits

Author SHA1 Message Date
Johannes Kirschbauer
2dabff5db1 lib/clan: add checks 2025-10-02 18:21:37 +02:00
Johannes Kirschbauer
ac07265ea4 clan/module: remove deprecated clanInternals.inventory 2025-09-18 15:35:39 +00:00
Johannes Kirschbauer
92ca540a42 clan/module: remove clanModules from clanInternals 2025-09-18 15:35:39 +00:00
Johannes Kirschbauer
757f2412a6 docs: bring back structured clan options 2025-09-17 15:15:32 +02:00
Johannes Kirschbauer
80bc3daf96 lib/jsonschema: remove unused arguments 2025-09-16 17:11:19 +02:00
hsjobeki
39eb13eebb Merge pull request 'lib: move clan out of lib into flake' (#5169) from inv-1 into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/5169
2025-09-16 13:33:45 +00:00
Johannes Kirschbauer
daea2da358 lib: move clan out of lib into flake
This allows clanLib to stay agnostic and be more testable
2025-09-16 15:28:12 +02:00
hsjobeki
d995c0b118 Merge pull request 'inventory: remove deprecated frontmatter' (#5168) from inv-1 into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/5168
2025-09-16 13:05:46 +00:00
Johannes Kirschbauer
5e22830048 inventory: remove deprecated frontmatter 2025-09-16 14:59:39 +02:00
hsjobeki
f2134754c5 Merge pull request 'inventory: make resolve module a clanLib function' (#5165) from inv-1 into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/5165
2025-09-16 11:14:40 +00:00
Johannes Kirschbauer
f49df8d574 inventory: make resolve module a clanLib function
Unclutter inventory logic
2025-09-16 13:09:56 +02:00
hsjobeki
6c2fa3e4ed Merge pull request 'inventory: inline manifest module' (#5164) from inv-1 into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/5164
2025-09-16 10:42:17 +00:00
Johannes Kirschbauer
0bce953c2f inventory: inline manifest module
Reducing the clutter of files
Its sometimes better to have all the options in one place if reusing is not a concern
2025-09-16 12:36:58 +02:00
hsjobeki
a90197cfd4 Merge pull request 'inventory: unify modules' (#5154) from inventory-unify into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/5154
2025-09-16 09:02:24 +00:00
Johannes Kirschbauer
5750ab8d3a lib: remove usages of flip
Makes the code more consistent to read.
Usage in 9 places is rather inconsistent style.
2025-09-15 13:17:09 +02:00
Johannes Kirschbauer
d3397af442 inventory: unify modules 2025-09-15 12:18:35 +02:00
Johannes Kirschbauer
453f2649d3 clanInternals: expose builtin modules 2025-08-31 15:58:39 +02:00
Johannes Kirschbauer
4470bb886e docs: move 'migrate-flake' to 'convert existing nixos' 2025-08-25 14:11:31 +02:00
Johannes Kirschbauer
4414403dec clan/inventory: allow list usage of roles via polymorphism 2025-08-25 11:27:38 +02:00
Johannes Kirschbauer
2d78730037 clan/schema: rename json schemas consistent {clanSchemaNix, clanSchemaJson} 2025-08-25 11:27:03 +02:00
Brian McGee
9aebf02f05 feat(ui): display machine install state and install button 2025-08-19 15:09:34 +01:00
Johannes Kirschbauer
3c34f81a44 inventory/tests: remove unused tests 2025-08-16 12:56:30 +02:00
Johannes Kirschbauer
72e7c2e9b9 clanModules: cleanup some more unused code 2025-08-16 12:56:30 +02:00
Johannes Kirschbauer
4a51aa9316 clanModules: remove unused test code 2025-08-16 11:58:55 +02:00
Johannes Kirschbauer
308a10d6e6 clanModules: remove unused code 2025-08-16 11:48:13 +02:00
Johannes Kirschbauer
a82ecbcbff docs: update docs for exports 2025-08-14 18:01:19 +02:00
Johannes Kirschbauer
90c7951704 exports: expose in special args or 'perInstance' and 'perMachine' 2025-08-14 17:58:23 +02:00
Johannes Kirschbauer
116ff37156 exports: rename special args 2025-08-14 17:58:23 +02:00
pinpox
35e5f4a42a Remove clanModules
- Removes clanModules in favor of the new clanServices
- Adds a warning and link to the migration guide
2025-08-14 12:02:40 +02:00
Michael Hoang
a71a5880c1 treewide: reformat 2025-08-08 15:28:37 +10:00
Johannes Kirschbauer
caaf9dc4f3 docs: unify documentation
Strictly enforce diataxis
Use resource driven approach
Can extend later to add 'developer' link index page
2025-07-24 16:51:57 +02:00
Johannes Kirschbauer
59105bd1da docs/options: expose all clan options in NüschtOS search 2025-07-24 09:42:21 +02:00
Qubasa
5c7e6b3830 docs: Move developer guides into the Developer section
nix fmt

address davhau review
2025-07-23 18:31:19 +07:00
Johannes Kirschbauer
b5a3d617fd services: fix extraModules as path 2025-07-21 19:51:16 +02:00
lassulus
60768cc537 Add networking module
This adds a (for now hidden) clan network command that exposes list,
ping, overview subcommands to get informations about configured
networks.
ClanServices can now use the exports to define network specific
information.

This is not the complete feature yet, as we are lacking more tests and
documentation, but merging this now makes it easier to iterate.
2025-07-17 15:23:08 +02:00
Qubasa
5a86862f47 buildClan: Add deprecation warning 2025-07-17 15:32:12 +07:00
Qubasa
e6a6cb27ec inventory: Add missing default value for exports.instances and exports.machines 2025-07-17 13:10:30 +07:00
Johannes Kirschbauer
5fc98a9611 clanInternals: refactor configsPerSystem, minimize diff 2025-07-15 21:40:22 +02:00
hsjobeki
341f444fa0 revert bd3861c580
revert Merge pull request 'Remove clanModules/*' (#4202) from remove-modules into main

Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4202

See: https://git.clan.lol/clan/clan-core/issues/4365

Not all modules are migrated.
If they are not migrated, we need to write migration docs and please display the link to the migration docs
2025-07-15 17:51:36 +00:00
pinpox
2a50dadf84 fmt 2025-07-15 13:48:37 +02:00
pinpox
aeb555a320 Fix tests 2025-07-15 13:40:54 +02:00
pinpox
8caaaa5b8b wip 2025-07-15 13:17:34 +02:00
pinpox
0e53499f40 Remove clanModules 2025-07-15 11:53:32 +02:00
Johannes Kirschbauer
e7c9d1e6d0 services: add modules schema to inventoryClass 2025-07-13 14:17:57 +02:00
Johannes Kirschbauer
5f19e76cd0 api/modules: remove redundant localModules 2025-07-13 11:52:19 +02:00
Johannes Kirschbauer
bb20e3926f modules: add explicit class constraints 2025-07-11 14:38:59 +02:00
Jörg Thalheim
0e97efbbef refactor: move docs transformOptions to clanLib to reduce rebuilds
- Add clanLib.docs.stripStorePathsFromDeclarations to deduplicate code
- Update all documentation generation to use the shared function
- This strips store paths from option declarations to prevent options.json
  from rebuilding when only store paths change but content remains the same
- Reduces unnecessary documentation rebuilds when making unrelated changes
2025-07-09 16:59:58 +02:00
Jörg Thalheim
462974b85c checks/inventory: optimize eval tests to use filtered sources
Replace full flake source (self) with minimal filtered filesets to prevent
unnecessary rebuilds when unrelated files change. All three inventory eval
tests now use the same unified fileset containing only necessary files.

This follows the same optimization pattern applied to other eval tests,
significantly reducing rebuild frequency during development.
2025-07-07 20:41:20 +02:00
Jörg Thalheim
b692f6fcfe put flake input overrides into a helper function 2025-07-07 15:59:09 +00:00
Johannes Kirschbauer
adb726c318 Templates/list: display templates via exposed nix value 2025-07-06 14:37:03 +02:00