Commit Graph

6384 Commits

Author SHA1 Message Date
Michael Hoang
c2d53e4525 Merge pull request 'vars: make wording nicer when multiple vars are found' (#3351) from push-zrtnwqoxyzmz into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3351
2025-04-18 17:28:01 +00:00
Michael Hoang
23ae0e6712 vars: make wording nicer when multiple vars are found 2025-04-18 19:18:42 +02:00
hsjobeki
58aaf879e0 Merge pull request 'Revert "remove nix_shell_legacy"' (#3356) from hsjobeki/clan-core:patch-2 into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3356
2025-04-18 12:58:57 +00:00
Johannes Kirschbauer
1232fb5af2 Revert "remove nix_shell_legacy"
This reverts commit 8cde32c76f.
2025-04-18 14:49:54 +02:00
pinpox
83542b20b4 Merge pull request 'Fix conftest typo' (#3355) from fix-conftest into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3355
2025-04-18 12:35:31 +00:00
pinpox
2152d59d9d Fix conftest typo 2025-04-18 14:25:22 +02:00
hsjobeki
0b983d7994 Merge pull request 'test(cli/select): add simple caching test' (#3342) from hsjobeki/clan-core:select-testing into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3342
2025-04-18 12:15:05 +00:00
Johannes Kirschbauer
ebb1be084f test(cli/select): add simple caching test 2025-04-18 14:06:59 +02:00
renovate[bot]
98adaebde3 chore(deps): update treefmt-nix digest to 8d404a6 2025-04-18 08:10:19 +00:00
renovate[bot]
3ca04e4c3b chore(deps): update data-mesher digest to 0328b8c 2025-04-18 08:00:13 +00:00
renovate[bot]
5b627f9b48 chore(deps): update data-mesher digest to b824c4f 2025-04-18 06:10:22 +00:00
renovate[bot]
a7256f7fb3 chore(deps): update treefmt-nix digest to 2550683 2025-04-18 06:00:14 +00:00
renovate[bot]
00921311a9 chore(deps): update dependency vite to v6.3.2 2025-04-18 05:00:15 +00:00
renovate[bot]
5aeee3716b chore(deps): update disko digest to 51d33bb 2025-04-18 02:10:10 +00:00
Michael Hoang
2424ae21b7 Merge pull request 'build-clan: fix constructing nix-darwin machines' (#3345) from push-rnzmyrvqrqmv into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3345
2025-04-17 18:32:22 +00:00
Michael Hoang
41ff4a4247 build-clan: fix constructing nix-darwin machines 2025-04-17 20:23:54 +02:00
renovate[bot]
3f8b7feb1d fix(deps): update dependency @tanstack/solid-query to v5.74.4 2025-04-17 10:00:16 +00:00
renovate[bot]
3ec8dbdcdf chore(deps): update dependency vite to v6.3.1 2025-04-17 02:00:17 +00:00
Mic92
e90b6c7f82 Merge pull request 'Remove nix_shell_legacy' (#3341) from nix_shell into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3341
2025-04-16 19:56:53 +00:00
Jörg Thalheim
8cde32c76f remove nix_shell_legacy 2025-04-16 21:03:58 +02:00
Mic92
37f8b5919e Merge pull request 'nix_shell' (#3339) from nix_shell into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3339
2025-04-16 18:38:09 +00:00
Jörg Thalheim
10cd98e158 rename CLAN_STATIC_PROGRAMS -> CLAN_PROVIDED_PACKAGES 2025-04-16 18:27:01 +00:00
Jörg Thalheim
2240a3a533 rename nix_shell_legacy to nix_shell and run_cmd to nix_shell
Than it's more obvious that we need to migrate.
2025-04-16 18:27:01 +00:00
Mic92
4b9a0d8c19 Merge pull request 'lib/jsonschema: make attrs required' (#3335) from fricklerhandwerk/clan-core:required-attrs into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3335
2025-04-16 18:26:46 +00:00
Mic92
25b1b9301b Merge pull request 'sunshine/moonlight/mumble: migrate to vars' (#3338) from sunshine into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3338
2025-04-16 17:59:09 +00:00
Jörg Thalheim
56a0b0a994 run_cmd: print what commands are allowed in if the current command is not in the allow list 2025-04-16 19:50:27 +02:00
Jörg Thalheim
ed68a4dde1 update_hardware_config: migrate from nix_shell to run_cmd 2025-04-16 19:32:40 +02:00
Jörg Thalheim
80a252cf1a sort allowed-programs.json 2025-04-16 19:32:40 +02:00
Jörg Thalheim
00d25d7fb8 Host: migrate from nix_shell to run_cmd 2025-04-16 19:32:40 +02:00
Jörg Thalheim
f94625fa6e mumble: fix certificate generator
no idea how this ever worked before.
2025-04-16 18:49:24 +02:00
Jörg Thalheim
bcd2b1ae1f mumble: migrate to inventory 2025-04-16 18:49:24 +02:00
Jörg Thalheim
51b184e8be mumble: remove duplicate nixos test 2025-04-16 18:49:24 +02:00
Jörg Thalheim
45ae0920e2 mumble: migrate to vars 2025-04-16 18:49:24 +02:00
Jörg Thalheim
1f50ee51df update-vars: don't print private key 2025-04-16 18:49:24 +02:00
Jörg Thalheim
6057d3e044 update-vars: fallback to gitroot 2025-04-16 18:49:24 +02:00
Jörg Thalheim
188764bca5 moonlight/sunshine: mark as unusuable outside of our VM
we depend on VM user, which only will work with our vm nixos module
2025-04-16 17:48:09 +02:00
Jörg Thalheim
cdfd03a067 migrate moonlight/sunshine to vars 2025-04-16 17:48:09 +02:00
Valentin Gagarin
ebd5afe8f5 fixup(jsonschema): test attrsOf submodules with valid value 2025-04-16 16:55:50 +02:00
Valentin Gagarin
6a2e81373c lib/jsonschema: render defaults for submodule options
this relaxes the constraint that options of type `submodule` are always
required, and will render benign default values.
2025-04-16 16:55:46 +02:00
Mic92
ee16f7c072 Merge pull request 'Move clan history subcommand to clan-vm-manager' (#3336) from fix-update into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3336
2025-04-16 13:14:34 +00:00
Jörg Thalheim
6703473152 impure-checks: limit number of workers to number of tests 2025-04-16 15:05:59 +02:00
Jörg Thalheim
d2173cb120 migrate clan history to clan-vm-manager
this functionality is not really useful or used in clan-vm-manager and
therefore should live in the clan-vm-manager.

Not porting the test for now because we probably get rid of the clan-vm-manager soon in favour of the UI.
2025-04-16 14:51:37 +02:00
Jörg Thalheim
42025fbfff Remove unused clan history update subcommand 2025-04-16 14:51:37 +02:00
Johannes Kirschbauer
9f7e9ca9df feat(jsonschema): add test for attrsof submodule 2025-04-16 14:48:49 +02:00
Valentin Gagarin
e28681c4f2 lib/jsonschema: make attrs required
Before the change, modules of the form

```nix
{ lib, ... }: {
  foo.bar = lib.mkOption {
    # ...
  };
}
```

or

```nix
{ lib, ... }: {
  foo = lib.mkOption {
    type = lib.types.subModule {
      bar = lib.mkOption {
        # ...
      };
    };
  };
}
```

would not render with `foo` as required, which is not faithful to the
module system's semantics.

This change also tests that fields with defaults are not marked required.
Note that submodule options cannot have their defaults rendered to JSON
schema, and are therefore always marked required.

Architecturally this change is rather unfortunate: So far the checks for
defaults happen in the rendering (using `isDefault`) and not in the parsing,
but here we're adding a field to `$exportedModuleInfo`. While strictly
speaking we probably don't want to consider requiredness as module-level
information, it seems more reasonable to me to do it that way since at
the JSON schema level we have lost the distinction between `attrs`,
`attrsOf`, `submodule`.
2025-04-16 13:20:00 +02:00
renovate[bot]
46ddc9f438 chore(deps): update dependency vite to v6.3.0 2025-04-16 09:50:12 +00:00
hsjobeki
65bb3863e0 Merge pull request 'init(clanServices): create a new folder for migrated modules (clanServices); add a module as example' (#3334) from hsjobeki/clan-core:clanServices-init into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3334
2025-04-16 09:44:57 +00:00
Johannes Kirschbauer
69ce584b96 init(clanServices): add zerotier boilerplate to clanServices 2025-04-16 11:34:58 +02:00
hsjobeki
49977bd935 Merge pull request 'feat(scripts/update-vars): expose all configurables as arguments {repo_root, test_dir, check_attr}' (#3333) from hsjobeki/clan-core:lib-cleanup into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3333
2025-04-16 08:50:44 +00:00
Johannes Kirschbauer
2796038254 chore(test/makeTestClan): document all options, remove magic specialArgs 2025-04-16 10:33:32 +02:00