Commit Graph

82 Commits

Author SHA1 Message Date
Johannes Kirschbauer
c357cfa29f chore(lib/buildClan): remove dependencies {nixpkgs,nix-darwin} from the clanLib file 2025-04-08 22:13:46 +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
2b392866d6 chore(buildClan): remove dependency on clan-core in the lib function 2025-04-02 09:49:54 +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
Johannes Kirschbauer
ffaf87b881 chore(buildClan): rename eval.nix to function-adapter.nix to make its shallows purpose more clear 2025-04-01 14:33:55 +02:00
Johannes Kirschbauer
2341b0e673 buildClan: add depercation warnings for directory=self 2025-02-03 12:00:47 +01:00
Jörg Thalheim
6f1ab30881 fix infinite recursion 2025-02-03 12:00:47 +01:00
Jörg Thalheim
8634087309 Do not deprecate directory argument 2025-02-02 10:30:26 +00:00
Qubasa
c212538ac7 clan: Remove unecessary templates and modules interface 2025-01-29 19:24:15 +07:00
Qubasa
e36654daa1 clan: Add autoloaded clanModules from flake inputs. Rename 'directory' to 'self' in buildClan 2025-01-24 12:32:04 +07:00
Qubasa
3ffefc3064 clan: revert imports.nix and wait till tuesday 2025-01-18 20:21:49 +07:00
Qubasa
8d0a9762a2 Reapply "buildClan: Add automatic inventory import directory"
This reverts commit e5bfa926e2.

This is incorrect we have mentions to inventory.modules in the codebase since much longer.
As can be seen in the documentation: https://docs.clan.lol/reference/nix-api/inventory/
As this PR improves the readability of the docs, I will re-apply it.
2025-01-18 10:01:19 +07:00
Jörg Thalheim
e5bfa926e2 Revert "buildClan: Add automatic inventory import directory"
This reverts commit 850eabb98c.

This introduces the name "inventory module" whereas we already use the
term clan modules everywhere else. I don't don't too many confusing
termologies in the codebase. Let's discuss this before adding it back.
2025-01-17 15:43:44 +01:00
Qubasa
850eabb98c buildClan: Add automatic inventory import directory 2025-01-17 20:58:48 +07:00
danjujan
61958130fd lib: fix typos 2024-10-29 12:37:34 +00: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
a-kenji
10f7509a5f Revert "Fix: forward meta attributes in flake-parts module"
This reverts commit e7c6333e06.

The propagated `self` attribute can be an error in non `flake-parts`
modules.
2024-08-07 10:40:36 +00:00
a-kenji
e7c6333e06 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 09:33:49 +00:00
DavHau
d7475bef37 build-clan: fix specialArgs not passed 2024-08-04 13:06:51 +07:00
Johannes Kirschbauer
ac6b7f84e0 Fix wrong unit tests 2024-08-03 12:05:09 +02:00
Johannes Kirschbauer
8fd09b8403 Add build-clan module 2024-08-03 12:05:09 +02:00
Johannes Kirschbauer
c6466f070e Fix: hostPlatform not hostSystem 2024-07-24 10:34:10 +02:00
Johannes Kirschbauer
0bfba72739 Inventory: fix options 2024-07-17 10:55:46 +02:00
Johannes Kirschbauer
7e21428548 Inventory: extend model by deployment info 2024-07-17 10:09:58 +02:00
Johannes Kirschbauer
ac95878ead Inventory: init: deployment info for machines 2024-07-17 10:07:57 +02:00
Johannes Kirschbauer
9afed2295d Inventory: add global imports 2024-07-15 20:41:27 +02:00
Johannes Kirschbauer
914d50a1c5 Inventory: only apply if settings.json exists 2024-07-15 19:14:45 +02:00
Jörg Thalheim
00dbdaf071 improve error message for removed settings.json 2024-07-09 11:44:29 +02:00
Johannes Kirschbauer
9eb00df6b7 buildClan: autoimport configuration.nix & hardware-configuration.nix 2024-07-06 17:22:47 +02:00
Johannes Kirschbauer
c678608105 Inventory: add system and sample machine 2024-07-01 21:25:02 +02:00
Jörg Thalheim
0ead3b477f buildClan: improve deprecation error message of clanName
Printing the clanName in my case was actually more confusing then
helpful. Also mention what function needs to be updated.
2024-06-30 08:08:22 +02:00
Johannes Kirschbauer
9b0e2a87e8 ClanModules: Add docs and api to retrieve metadata 2024-06-25 21:17:01 +02:00
Johannes Kirschbauer
db951f1d9e buildClan: bugfixing 2024-06-25 12:23:29 +00:00
Johannes Kirschbauer
4fb15d8733 Add machinesDirs with default 2024-06-25 12:23:29 +00:00
Johannes Kirschbauer
c0293b889c Add machinesDirs with default 2024-06-25 12:23:29 +00:00
Johannes Kirschbauer
26c655ff3c Add settings.json back 2024-06-25 12:23:29 +00:00
Johannes Kirschbauer
7f674e6f63 Remove useless settings.json 2024-06-25 12:23:29 +00:00
Johannes Kirschbauer
3aa7a6ee69 Inventory: move to lib.inventory 2024-06-25 12:23:29 +00:00
Johannes Kirschbauer
b74590f381 Inventory: simplify build-clan interface 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
c89080deb4 Extend build-clan interface 2024-06-25 12:23:29 +00:00
DavHau
313db5643f refactor: rename clanCore -> clan.core 2024-06-18 18:32:40 +07:00
Johannes Kirschbauer
83fe58e003 clan-core: add clan meta for ui usage 2024-05-31 16:26:46 +00:00
Jörg Thalheim
1ac982fbdb set networking.hostName to clanCore.machineName 2024-04-09 15:10:08 +02:00
DavHau
6f9216d3b6 buildClan: add clan-core to specialArgs 2024-04-02 16:03:45 +07:00
Jörg Thalheim
e296a3019d re-format with nixfmt 2024-03-17 19:48:49 +01:00
Jörg Thalheim
1356ca9b8c fix cross-system deploy
This allows to be nixpkgs.pkgs and deploy systems of a different arch.
2024-02-21 10:55:53 +01:00
lassulus
6871b29d15 vms: use vm fact/secret-store 2024-02-15 10:41:25 +01:00