Commit Graph

36 Commits

Author SHA1 Message Date
lassulus
195134dd5e clan_cli: better select debug output 2025-07-06 01:17:55 +02:00
lassulus
0670f0ad32 clan_cli flake: remove apply from select, as it will break stuff in horrible ways
Since apply changes the structure of the retuned value, the cache will
be confused about the structure and in subsequent request will use this
wrong structure.

For example: we would use builtins.attrNames on inputs, the flake will
forever think that inputs is a list of strings and will report errors
whenever we try to fetch subkeys from it
2025-07-06 01:17:55 +02:00
lassulus
8f9d88a104 flake: prevent outPath in multiselect to avoid serialization issues
When using multiselect with outPath like {outPath,?meta}, nix evaluation
collapses the attrset to just the outPath string, breaking further selection.
Add validation during selector parsing to catch this and provide a clear error.
2025-07-03 18:53:36 +02:00
Jörg Thalheim
65ee951b72 select: drop unused --impure flag 2025-06-27 19:30:45 +02:00
Jörg Thalheim
b251275063 select: use nix_options copy 2025-06-27 19:30:45 +02:00
Jörg Thalheim
6afe4305b4 select: drop unused nixpkgs fallback 2025-06-27 19:30:45 +02:00
Jörg Thalheim
553d13b05a don't keep appending --impure to nix_options when running tests 2025-06-27 18:54:13 +02:00
Jörg Thalheim
3035752d00 select: disable remote building and substitution
this should make things faster since the derivation itself is trivial.
2025-06-27 13:37:16 +02:00
Qubasa
d14a5d34fd clan-lib: Move nix_options from Machine class to Flake class 2025-06-24 19:03:20 +02:00
pinpox
cb69eea68f Make machine ID a option 2025-06-24 10:42:03 +02:00
DavHau
7e18dc6bb4 vars-check: enable debug logging for cache misses 2025-06-18 14:22:57 +00:00
Jörg Thalheim
d9c97fcb10 fix: correctly check existence of CLAN_TEST_STORE paths in cache
The flake cache was only checking existence for paths starting with
NIX_STORE_DIR (defaulting to /nix/store), but not for paths in the
test store when CLAN_TEST_STORE is set. This caused the cache to
return stale references to paths that had been garbage collected.

This fix updates the is_cached method to also check for paths in 
the test store, preventing cache misses during tests.
2025-06-17 17:21:06 +02:00
Johannes Kirschbauer
2d2af10c78 feat(flake): add function to get input names 2025-06-11 20:21:29 +02:00
Johannes Kirschbauer
0e88b0ff66 feat(flake/select): add apply argument 2025-06-11 20:21:29 +02:00
Johannes Kirschbauer
30fe01be7b Chore(complete_machines): simplify by using inventoryStore 2025-06-10 19:15:07 +02:00
Johannes Kirschbauer
b2785d3b24 Chore(flake.py): remove unused uncached_nix_eval_with_args 2025-06-10 19:15:07 +02:00
Johannes Kirschbauer
0837a8ecd7 Refactor(clanInternals): remove depending on clanInternals.inventory 2025-06-10 17:43:59 +02:00
hsjobeki
9b5410a46d Merge pull request 'chore(api/create_clan): remove unused reponse class' (#3907) from api-narrowing into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3907
2025-06-09 19:00:27 +00:00
Johannes Kirschbauer
8360ee58b5 chore(flake): move 'inputs-from' into templates handling 2025-06-09 20:40:20 +02:00
lassulus
795d722461 select: fix error message showing nonsense 2025-06-06 10:12:15 +02:00
lassulus
fe7c618ae5 select: fix non escaped ' 2025-06-06 10:12:15 +02:00
lassulus
98b0f97d45 clan_lib flake_test: fix on darwin 2025-05-23 12:29:34 +02:00
lassulus
68183634bb clan_cli flake_test: fix on non sandboxed runs 2025-05-20 16:08:02 +02:00
lassulus
f5e9f305d0 clan-cli: clan_cli.dirs -> clan_lib.dirs 2025-05-20 12:08:30 +02:00
lassulus
1df5dfe6d3 clan-cli: clan_cli.cmd -> clan_lib.cmd 2025-05-19 19:07:24 +02:00
lassulus
b10682c7f7 clan-cli: move clan_cli.nix to clan_lib.nix 2025-05-19 18:40:36 +02:00
lassulus
9f27e21bd4 clan_lib flake: remove redundant store definition 2025-05-19 17:49:12 +02:00
lassulus
2129790bda clan_lib flake: test if cache gets invalidated with nix gc 2025-05-19 17:48:46 +02:00
lassulus
bd70f4cff2 clan_lib flake: get select output without nixpkgs 2025-05-19 16:11:56 +02:00
lassulus
fb5839f929 clan_lib flake: get store path from NIX_STORE_DIR 2025-05-19 16:11:56 +02:00
lassulus
76e4ecb6d5 clan_lib flake: check the whole tree even if we fetched all keys before
This is needed because nix garbage collection can remove store paths. So
the cache can become invalid because a path needs to be rebuild.
2025-05-19 16:11:56 +02:00
lassulus
96feb5bd26 clan_lib: move test_flake_caching into clan_lib flake folder 2025-05-18 21:35:56 +02:00
lassulus
fb746b874c clan_lib: move clan_lib.flake.flake to clan_lib.flake 2025-05-16 19:28:36 +02:00
Johannes Kirschbauer
1adcada568 Fix: dynamically import clan_cli in flake methods
This is a temporary workaround to solve cyclic imports all these modules should be moved to clan_lib
soon afterwards
2025-05-16 17:02:58 +02:00
Johannes Kirschbauer
f210b2f9a6 refactor: move clan_cli.error to clan_lib.error 2025-05-16 16:14:39 +02:00
lassulus
3dc41f7d5f clan_cli: move flake class to clan_lib 2025-05-16 13:38:47 +02:00