Commit Graph

38 Commits

Author SHA1 Message Date
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
Jörg Thalheim
a6914a0598 use a clan-core snapshots for ci tests
We currently have to re-run our integration tests a lot because they are
depending on the whole repository. This pull request changes locks the
clan-core used for vm tests. This has the caveat that we might not run
the latest NixOS machine of our profiles. On the upside we can test
behaviour against an older clan-core version and capture breakages and
make it backwards compatible. If we actually want to test the latest
version, the PR that changes the exposed flake api, could also bump the
clan-core snapshot.
2025-05-12 13:21:25 +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
lassulus
0b1b43fded add demo_iso code for iso-morphing 2025-02-22 03:39:42 +00: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
DavHau
9b6fafcb2d clan config: re-enable clan config 2023-09-19 15:12:29 +02:00
DavHau
4afd9910e9 Revert "rename clanCore to clan.core"
This reverts commit fef796fa6e.
2023-08-30 15:24:33 +02:00
Jörg Thalheim
fef796fa6e rename clanCore to clan.core 2023-08-30 12:46:49 +00:00
DavHau
999fbe0d89 clan-config: add readme
Also add capability of reading an option value
2023-08-23 01:01:07 +02:00
DavHau
48686591d8 clan-config: improve and add flake-parts module for clan-config 2023-08-22 21:17:47 +00:00