Commit Graph

1676 Commits

Author SHA1 Message Date
Jörg Thalheim
41598b8f34 machines.eval_nix: remove unused refresh parameter 2025-05-16 16:31:25 +02:00
Jörg Thalheim
13c6543a88 installation: put use_tor option in right place
we would always disable tor, even if enabled.
2025-05-16 16:18:25 +02:00
Mic92
e4394b8dc7 Merge pull request 'Add multiline-hidden-prompt' (#3632) from multiline-hidden-prompt into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3632
Reviewed-by: hsjobeki <hsjobeki@gmail.com>
Reviewed-by: lopter <louis@opter.org>
2025-05-15 08:10:34 +00:00
lassulus
f9b910b5cb clan-cli vars upload: create dir if provided 2025-05-15 06:42:24 +00:00
Mic92
4058c8aede Merge pull request 'fix ssh master on macos' (#3649) from ssh-master into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3649
2025-05-14 22:19:51 +00:00
Jörg Thalheim
50dc6c4c50 fix ssh master on macos 2025-05-14 20:30:36 +02:00
Jörg Thalheim
31cb76721f prompt: handle KeyboardInterrupt more gracefully 2025-05-14 19:53:36 +02:00
Jörg Thalheim
b5d132b193 do not instantiate vars_generators several times
We should really not have any property that has side effects i.e.
spawning processes.
2025-05-14 19:53:36 +02:00
Jörg Thalheim
75fa7ac609 add multiline-hidden prompt for both ui and cli 2025-05-14 19:53:36 +02:00
Johannes Kirschbauer
7e0c8c3672 refactor(list/machines): use InventoryStore to interact with data" 2025-05-14 16:18:12 +02:00
Johannes Kirschbauer
70e2a6d116 chore: remove unused iwd python module 2025-05-14 16:17:03 +02:00
Johannes Kirschbauer
633e6ffeae refactor(lib/persist): rename 'patch' to 'apply_patch' 2025-05-14 16:16:16 +02:00
Johannes Kirschbauer
deb6b57a23 refactor(clan/lib): move tests for persist.util into clan_lib 2025-05-14 13:35:27 +02:00
Johannes Kirschbauer
91034b66bf refactor(lib/inventory): use util functions from clan_lib 2025-05-14 12:15:37 +02:00
Johannes Kirschbauer
bdb075be11 refactor(cli/inventory): remove unncessary init_inventory function 2025-05-14 12:15:36 +02:00
Johannes Kirschbauer
925756f7e0 chore(cli/inventory): add deprecation note for old python module 2025-05-14 10:18:27 +02:00
Johannes Kirschbauer
4507c4f3c3 chore(cli/inventory): remove unused 'default_inventory' 2025-05-14 09:28:06 +02:00
Johannes Kirschbauer
45b12cdce6 Refactor(clan_lib): move nix bound classes out of the cli folder 2025-05-13 18:39:36 +02:00
Jörg Thalheim
d8d0043249 cmd: wait on status after killing process 2025-05-13 16:18:03 +02:00
Jörg Thalheim
58c2cd8ffa tests_secrets_cli: improve assertion message for pgp key 2025-05-13 16:10:54 +02:00
Jörg Thalheim
c95237accd test_ssh_remote: skip whole module at once on macOS 2025-05-13 15:18:21 +02:00
Qubasa
8d80fe343d clan-app: Fix machine update cancel task 2025-05-13 14:06:02 +02:00
Qubasa
9544a3e522 clan-app: Working cancellable tasks 2025-05-12 17:54:10 +02:00
Mic92
f1a197ddb2 Merge pull request 'clan_cli flake select: fix on older nix versions' (#3580) from select-path into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3580
2025-05-12 15:31:13 +00:00
lassulus
47abebb43e clan_cli flake select: fix on older nix versions 2025-05-12 16:26:06 +02:00
Mic92
5ba0189648 Merge pull request 'clan/vars: Improve help for list subcommand' (#3576) from kenji/clan-core:ke-fix-vars-help into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3576
2025-05-12 14:04:27 +00:00
a-kenji
bdeb514eb1 clan/vars: Improve help for list subcommand
Closes #3550
2025-05-12 14:57:50 +02:00
a-kenji
02c5b60493 clan/vars: Fix vars help hyperlink 2025-05-12 14:55:34 +02:00
Mic92
a6a33372f9 Merge pull request 'Add /bin/sh to bubblewrap sandbox' (#3551) from jfly/clan-core:bin-sh-in-sandbox into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3551
2025-05-12 10:07:56 +00:00
Michael Hoang
e5250718e6 cli: allow age-plugin-1p 2025-05-12 16:36:24 +10:00
Michael Hoang
b46ae13453 cli: fix machines update not outputting stdout of nixos-rebuild 2025-05-10 17:02:56 +10:00
Jeremy Fleischman
f3c2e8f33f Add /bin/sh to bubblewrap sandbox
I ran into this error when trying to run `opendkim-genkey` in a vars
generator:

```console
=========================================================================== Command ===========================================================================
nix \
    --extra-experimental-features 'nix-command flakes' \
    shell \
    --inputs-from /nix/store/9r3ddw80dz4qzci9pj57ppbh6gy2pgv9-clan-cli/lib/python3.12/site-packages/clan_cli/nixpkgs \
    'nixpkgs#bash' \
    'nixpkgs#bubblewrap' \
    -c bwrap \
    --unshare-all --tmpfs \
    / \
    --ro-bind /nix/store \
    /nix/store \
    --dev /dev \
    --bind /tmp/nix-shell.ClOjgJ/vars-kh4qrnas \
    /tmp/nix-shell.ClOjgJ/vars-kh4qrnas \
    --chdir / \
    --bind /proc \
    /proc \
    --uid 1000 \
    --gid 1000 \
    -- bash \
    -c /nix/store/p0089w4y1w3h535g7ipv4jl4r6mb2hs2-generator-dkim-playground.jflei.com.mail

=========================================================================== Stderr ============================================================================
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Can't exec "/bin/sh": No such file or directory at /nix/store/nfawbww80p1hgpymfgq1vq8wqlak75yh-opendkim-2.11.0-Beta2/sbin/.opendkim-genkey-wrapped line 139.
.opendkim-genkey-wrapped: openssl died with signal %d
127
Return Code: 1

1 hosts failed with an error. Check the logs above
```

As we allow `/bin/sh` in the nix build sandbox, I assume we're OK
allowing it here as well?
2025-05-09 18:33:08 -07:00
Qubasa
01f9bb358e clan-cli: Use machine object everywhere instead of name + flake 2025-05-09 13:13:14 +02:00
Qubasa
c87e768bfa clan-cli: Fix clan not finding vendored packages when running from git repo 2025-05-08 12:31:21 +02:00
Qubasa
5f7b95ac73 clan-cli: remove useless run_no_stdout function 2025-05-08 12:30:16 +02:00
Qubasa
89decdaf7e clan-cli: Refactor the API to use the Flake object 2025-05-07 16:43:50 +00:00
hsjobeki
60a2246944 Merge pull request 'Feat(modules): display clan.service modules' (#3537) from hsjobeki/clan-core:module-list into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3537
2025-05-07 15:33:49 +00:00
Johannes Kirschbauer
3c7f08ebaf fix(tests/modules): list_modules returns moduleSets" 2025-05-07 16:46:13 +02:00
Jörg Thalheim
1037bd115b Revert "Merge pull request 'clan-cli: Refactor the API to use the Flake object' (#3531) from Qubasa/clan-core:replace_machine_name_with_machine_obj into main"
This reverts commit c09618b323, reversing
changes made to 45b2539455.
2025-05-07 15:24:57 +02:00
Mic92
c09618b323 Merge pull request 'clan-cli: Refactor the API to use the Flake object' (#3531) from Qubasa/clan-core:replace_machine_name_with_machine_obj into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3531
2025-05-07 13:21:13 +00:00
Mic92
45b2539455 Merge pull request 'Flake: remove unused variable and mark other fields as non-init' (#3535) from cleanup-flake into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3535
2025-05-07 13:20:10 +00:00
Jörg Thalheim
f3a6fe8870 Flake: remove unused variable and mark other fields as non-init 2025-05-07 14:40:22 +02:00
Qubasa
a6a69bb09b clan-cli: Refactor the API to use the Flake object 2025-05-07 13:12:48 +02:00
DavHau
18e75c9954 GUI: initialize support for vars prompts
... for now only when updating a machine (not when installing)

Whenever the user clicks on the update button in the machine view, and only if user input is needed for some missing vars, the user will be forwarded to a vars page.
2025-05-07 18:06:35 +07:00
Johannes Kirschbauer
f0d42c839b Refactor(machine/class): use frozen dataclass for class 'machine' 2025-05-06 17:12:52 +02:00
Johannes Kirschbauer
79a54616e5 Refactor(machine/install): don't mutate the machine class during installation 2025-05-06 17:09:37 +02:00
Johannes Kirschbauer
d8883db24d Refactor(machine/update): cleanup dataflow and logic conditions to be intuitive 2025-05-06 16:49:32 +02:00
Mic92
ec5c87c47c Merge pull request 'Host: actual setup ssh controlmaster' (#3515) from fix-control-master into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3515
2025-05-06 11:21:05 +00:00
Jörg Thalheim
f3c673d165 only apply ssh control master to local ssh connection 2025-05-06 13:11:30 +02:00
Jörg Thalheim
5846f5d63a Host: actual setup ssh controlmaster
before we were not entering the context manager
2025-05-06 13:11:30 +02:00