Commit Graph

24 Commits

Author SHA1 Message Date
Johannes Kirschbauer
78563b0544 Fix(clan.nix): create public attributes from 'clan', dont expose them from clanInternals
ClanInternals is already exposed at the toplevel the API can access anything
This also deduplicated 'templates' and 'modules' into 'clan.modules' and 'clan.templates' repsectively
Only this one path is its source
2025-06-10 18:51:42 +02:00
Michael Hoang
1079fb7812 flake-parts: remove unnecessary mkSubmoduleOptions
This is no longer necessary as of https://github.com/NixOS/nixpkgs/pull/156533.
2025-04-08 19:03:29 +02:00
Michael Hoang
88669ec19c flake-parts: ensure flake.darwinConfigurations is mergeable
We didn't run into issues previously for `nixosConfigurations` because
there is already a [flake-parts module] that creates the option inside
`flake`.

[flake-parts module]: https://github.com/hercules-ci/flake-parts/blob/main/modules/nixosConfigurations.nix
2025-04-08 19:03:29 +02:00
Michael Hoang
6de4735c81 build-clan: support constructing darwinConfigurations 2025-04-08 08:53:29 +02:00
Johannes Kirschbauer
2715c398cc fix(inventory/interface): use explizit file dependency, until dependency injection works properly 2025-04-02 11:12:16 +02:00
Johannes Kirschbauer
81898996f4 chore(buildClan): make buildClan and flake-parts return identical outputs 2025-04-02 09:56:28 +02:00
Johannes Kirschbauer
11701d5607 feat(lib/buildClan): turn lib/build-clan into a 'buildClanModule' with sub-features such as 'buildClan' and 'flakePartsModule' 2025-04-01 15:39:12 +02:00
Michael Hoang
61c1943ccc templates: allow specifying from flake-parts module 2025-02-16 21:10:22 +07:00
Johannes Kirschbauer
821a781e55 buildClan: add empty default 2024-11-08 10:43:05 +01:00
a-kenji
16e6b690ad Fix: forward meta attributes in flake-parts module
This fixes building machines with the flake-parts module.

Since the inventory merges the machines, the `clan.core.meta` attribute
is now a submodule and conditionally imported.

Also drops the following attributes:
- clan.core.meta.icon
- clan.core.meta.description

In favor of specifying them inside the inventory.

This doesn't use `mkRemovedOptionsModule`, because in our case it would
cause infinite recursion.
2024-08-07 12:19:17 +00:00
Johannes Kirschbauer
d51508656f Add flake-parts module 2024-08-03 12:05:09 +02:00
Johannes Kirschbauer
ac95878ead Inventory: init: deployment info for machines 2024-07-17 10:07:57 +02:00
Johannes Kirschbauer
a2c3c09564 Inventory: migrate failure test message 2024-07-16 10:33:24 +02:00
Jörg Thalheim
5c0b482431 wip: debug 2024-07-15 20:41:27 +02:00
Jörg Thalheim
fabea318d9 flake-parts: expose inventory 2024-07-15 17:17:14 +02:00
Johannes Kirschbauer
9b0e2a87e8 ClanModules: Add docs and api to retrieve metadata 2024-06-25 21:17:01 +02:00
Johannes Kirschbauer
7f674e6f63 Remove useless settings.json 2024-06-25 12:23:29 +00:00
Johannes Kirschbauer
2f8b782a1f Inventory: init module merge & validation logic for inventory 2024-06-25 12:23:29 +00:00
Johannes Kirschbauer
83fe58e003 clan-core: add clan meta for ui usage 2024-05-31 16:26:46 +00:00
Johannes Kirschbauer
581b48b518 docs: improve flake-parts configuration 2024-04-16 12:02:44 +02:00
Jörg Thalheim
a4b15d2ca2 flake-parts: fix merging of all-machines-json 2024-04-15 22:14:54 +02:00
Jörg Thalheim
1fd28f2f4c flake-parts: fixup type for specialArgs 2024-04-05 18:48:37 +02:00
Jörg Thalheim
28e8af60cf flake-parts: fix clan-core reference 2024-04-04 13:38:15 +02:00
Jörg Thalheim
3212410704 add flake-parts module for clan 2024-04-03 16:45:06 +02:00