Commit Graph

132 Commits

Author SHA1 Message Date
Michael Hoang
871326fb91 clan-cli: fix clan-cli accidentally dependending on all packages 2025-02-04 04:52:47 +00:00
lassulus
26143b4b5b clan-cli: add ipython to dev dependencies 2025-02-02 11:52:36 +00:00
Qubasa
7545a9a883 clan-cli: Make clan flakes create discover templates from inputs. Add clan flakes list command 2025-01-30 16:24:50 +07:00
Qubasa
8d4d98361d clan-app: Fix default.nix 2025-01-11 10:52:22 +07:00
Michael Hoang
e7dcabc5c4 clan-cli: don't list non-Clan NixOS configurations 2024-12-17 15:11:38 +11:00
Michael Hoang
877862d758 clan-cli: fix PATH not correctly including runtime dependencies 2024-12-17 13:05:25 +11:00
Michael Hoang
160854a31d clan-cli: fix nix run clan-core failing inside direnv 2024-12-17 10:55:36 +11:00
Jörg Thalheim
419e17a999 extract nix_test_store helper for sandbox builds 2024-12-05 11:38:58 +01:00
DavHau
61576649ff vars: make all python tests work in nix sandbox
- generate a flake.lock file for each template by copying the clan-core flake.lock and modifying it

- call nix build with --store for tests inside the sandbox
2024-11-27 14:32:02 +07:00
danjujan
a9552b07c6 pkgs: fix typos 2024-10-29 12:37:34 +00:00
Jörg Thalheim
10c2f7844f fix nixpkgs command with latest nix version 2024-10-22 12:46:56 +02:00
Jörg Thalheim
93b1391e4c abort tests on python warning 2024-10-01 20:54:19 +02:00
Johannes Kirschbauer
ca79433aa9 CLI: use abstract schema to avoid module imports 2024-09-15 18:42:50 +02:00
Johannes Kirschbauer
39518d302b API: remove all python dataclasses for clanModules (services) 2024-09-12 16:19:51 +02:00
Jörg Thalheim
4632e5d0d9 replace breakpoint() check with python lint 2024-09-02 13:36:07 +02:00
Jörg Thalheim
9f66ded76a Merge remote-tracking branch 'origin/main' into rework-installation 2024-08-21 13:38:04 +02:00
a-kenji
a465ad8638 clan: remove config subcommand
This removes the `config` subcommand from the cli and the documentation
to keep the api surface small.

While this functionality was convenient it doesn't need to be surfaced
by the clan cli.

The remaining `config` python module should be ported to the `clan-app`
in a follow up pr. Because the functionality is currently only used by
the `clan-app`.
Ideally together with: #1830.
2024-07-31 16:35:36 +00:00
Johannes Kirschbauer
e21bfbc257 Deserializer: replace pydantic 2024-07-30 12:26:16 +02:00
Jörg Thalheim
2df19898a7 Merge remote-tracking branch 'origin/main' into rework-installation 2024-07-30 11:52:36 +02:00
Johannes Kirschbauer
b015f1f123 PropagatedBuild inputs workaround 2024-07-26 15:23:25 +02:00
Johannes Kirschbauer
c648e647bf Serde: add unit tests for all serialization and deserialization logic 2024-07-26 14:23:41 +02:00
Jörg Thalheim
1e43a471d2 cli: default template url should come from the package itself rather than our gitea
This allow easier testing and also forks.
2024-07-22 08:22:58 +02:00
Johannes Kirschbauer
07965598f5 Classgen: add mapped keys and more stuff 2024-07-18 21:58:36 +02:00
DavHau
0e335f7ecc impure-checks: improve performance by disabling dynamic deps 2024-07-16 12:42:45 +07:00
DavHau
75b969b1ad clan-cli: improve runtime dependency management
Many dependencies of clan-cli  are currently dynamically loaded via nix-shell on each execution.
This is nice, as it reduces the initial closure size of clan, but the overhead introduced by nix-shell piles up quickly, as some commands shell out many times during their lifetime. For example, when adding a secret git is called 10+ times.

This reduces the time of a test which adds a secret from around 50 seconds to 15 seconds.

- add run_cmd() as an alternative to nix_shell()
- introduce the concept of static dependencies which do not need to go through nix-shell
- static dependencies are defined at build time and included into the wrapper for clan-cli
- add package: clan-cli-full which statically ships all required dependencies

TODO: deprecate nix_shell() in favor of run_cmd()
2024-07-11 15:34:41 +07:00
Jörg Thalheim
2e2358d850 introduce minifakeroot that also works on macos 2024-06-27 18:53:10 +02:00
a-kenji
2ce704dd40 clan: remove very obvious comments
Remove some very obvious comments as to not lose meaning of the
comments.

We want comments that convey non-obvious behavior so they will be
actually read.
2024-06-07 14:45:53 +02:00
a-kenji
02a015a1b6 clan: install shell completions for zsh 2024-06-06 23:20:54 +02:00
DavHau
ccadac4bb3 gui-installer: depend on git + ignore flake config 2024-05-29 17:42:44 +02:00
Qubasa
0e1478edcd clan-cli: Fix nix develop not working in template because of symlink 2024-05-27 14:00:31 +02:00
Qubasa
4f6d25160f Add --ssh-pubkey FILE argument 2024-05-14 15:41:15 +02:00
DavHau
cf67de2f69 secrets: ensure all added/deleted files get committed 2024-04-24 17:26:32 +07:00
Qubasa
8ab9d20342 clan-vm-manager: Working pytest skeleton. clan-cli: Fixing devshell depending on itself 2024-03-24 23:36:00 +01:00
Jörg Thalheim
e296a3019d re-format with nixfmt 2024-03-17 19:48:49 +01:00
a-kenji
4044e42e58 fix: typo 2024-03-12 17:37:19 +01:00
Jörg Thalheim
a3d92a766e clan-cli: drop unused variables 2024-01-30 10:30:25 +07:00
Qubasa
330ef00a7c Removed python deal. 2023-12-30 23:10:43 +01:00
Qubasa
cb06353451 pytest: Removed -s flag for CI 2023-12-26 18:20:41 +01:00
Qubasa
7dc2c21517 Deleted everything webui 2023-12-14 18:47:14 +01:00
Qubasa
030d31c8b4 Removed democlan dependency 2023-12-09 00:23:19 +01:00
Qubasa
136246de79 Removed democlan dependency 2023-12-09 00:19:30 +01:00
Qubasa
d4b8cef242 Added clan flakes inspect command. Improved ClanURI. Added democlan as dependency in flake.nix 2023-12-09 00:09:21 +01:00
Jörg Thalheim
d033f523b8 openapi: put a static version into the repository
This avoids a lot of rebuilds and we can also track api changes better
2023-11-24 15:56:27 +01:00
Jörg Thalheim
f68c10a008 clan-vm-manager: add nix package 2023-11-23 15:30:44 +01:00
Jörg Thalheim
a838c4da17 mv clan-vm-manager to its own package 2023-11-23 15:03:46 +01:00
Qubasa
832c41df7e Added gtk demo app 2023-11-23 15:03:38 +01:00
Jörg Thalheim
7d3ccb23ea drop desktop item from cli 2023-11-21 15:26:36 +01:00
Jörg Thalheim
8759e5a049 drop dependency on fastapi in the cli 2023-11-21 15:09:18 +01:00
Qubasa
48f0381fb5 schemathesis: Add as runnable application instead of library to resolve httpx dependency collision issue 2023-11-20 17:14:12 +01:00
Jörg Thalheim
1f558954af drop schemathesis
This creates conflicting python packages when included
2023-11-15 16:48:46 +01:00