Commit Graph

39 Commits

Author SHA1 Message Date
Johannes Kirschbauer
b7508b2b43 clan/checks: fix clanLib not checking 2025-10-28 11:46:49 +01:00
Johannes Kirschbauer
0060ead876 clan/checks: move into lib function; add tests 2025-10-28 09:40:31 +01:00
Johannes Kirschbauer
2dabff5db1 lib/clan: add checks 2025-10-02 18:21:37 +02:00
Johannes Kirschbauer
ab8607e01a clan: add nixpkgs version checks 2025-09-23 17:07:33 +02:00
Jörg Thalheim
ad85a7bac8 darwinConfigurations/darwinModules: export with right _file attributes 2025-06-29 23:58:19 +02:00
Johannes Kirschbauer
8e5f03bd71 modules/clan: consistent logic for auto injecting nixpkgs, nix-darwin
We want to make them options this is a temporary fix
2025-06-27 10:23:53 +02:00
Johannes Kirschbauer
35d50489bb modules: add explizit class to clan module 2025-06-27 09:53:40 +02:00
Johannes Kirschbauer
04a31bea67 modules: fix consistent nixpkgs and nix-darwin injection 2025-06-27 09:21:19 +02:00
Johannes Kirschbauer
e9600a19c1 modules.clan.default: move specialArgs into common place 2025-06-26 17:37:42 +02:00
Johannes Kirschbauer
f6de6632e4 modules: move clan module to flake.modules.clan.default 2025-06-26 17:08:47 +02:00
Johannes Kirschbauer
d8d49c9d72 chore: clean up logic around clanInternals 2025-06-26 16:12:35 +02:00
Johannes Kirschbauer
761e8b0ec5 refactor: clanLib buildClan 2025-06-26 15:20:05 +02:00
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