Commit Graph

27 Commits

Author SHA1 Message Date
Johannes Kirschbauer
d9dda1825d feat(darwinModules): add module location analog to flake-parts 2025-06-26 11:55:55 +02:00
Johannes Kirschbauer
af007bfe4a refactor: clan expose the clan module as is 2025-06-26 11:47:53 +02:00
Johannes Kirschbauer
ac5cc85d57 Refactor(build-clan): rename to lib/modules
This is a preparation for moving everything into clan, to make it all one module evaluation
2025-06-23 16:06:49 +02:00
Johannes Kirschbauer
c26743c247 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
69141d02d9 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
99589c1141 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
b5a57a72a0 build-clan: support constructing darwinConfigurations 2025-04-08 08:53:29 +02:00
Johannes Kirschbauer
f6f0c1b356 fix(inventory/interface): use explizit file dependency, until dependency injection works properly 2025-04-02 11:12:16 +02:00
Johannes Kirschbauer
d69a074366 chore(buildClan): make buildClan and flake-parts return identical outputs 2025-04-02 09:56:28 +02:00
Johannes Kirschbauer
3c2708b263 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
742040cd03 templates: allow specifying from flake-parts module 2025-02-16 21:10:22 +07:00
Johannes Kirschbauer
34873828ed buildClan: add empty default 2024-11-08 10:43:05 +01:00
a-kenji
f58d5c53be 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
35891f7165 Add flake-parts module 2024-08-03 12:05:09 +02:00
Johannes Kirschbauer
9e6f2743e0 Inventory: init: deployment info for machines 2024-07-17 10:07:57 +02:00
Johannes Kirschbauer
5ec952d29d Inventory: migrate failure test message 2024-07-16 10:33:24 +02:00
Jörg Thalheim
d9932b3b81 wip: debug 2024-07-15 20:41:27 +02:00
Jörg Thalheim
824ddfd0e1 flake-parts: expose inventory 2024-07-15 17:17:14 +02:00
Johannes Kirschbauer
cbb78ca1ae ClanModules: Add docs and api to retrieve metadata 2024-06-25 21:17:01 +02:00
Johannes Kirschbauer
7f897e29d6 Remove useless settings.json 2024-06-25 12:23:29 +00:00
Johannes Kirschbauer
0d4928ab73 Inventory: init module merge & validation logic for inventory 2024-06-25 12:23:29 +00:00
Johannes Kirschbauer
c7008fd302 clan-core: add clan meta for ui usage 2024-05-31 16:26:46 +00:00
Johannes Kirschbauer
da486ae9ec docs: improve flake-parts configuration 2024-04-16 12:02:44 +02:00
Jörg Thalheim
dba32ae28e flake-parts: fix merging of all-machines-json 2024-04-15 22:14:54 +02:00
Jörg Thalheim
0fd17a500f flake-parts: fixup type for specialArgs 2024-04-05 18:48:37 +02:00
Jörg Thalheim
0dc879410c flake-parts: fix clan-core reference 2024-04-04 13:38:15 +02:00
Jörg Thalheim
73321e230a add flake-parts module for clan 2024-04-03 16:45:06 +02:00