a8d35d37e7
refactor clanCore.secrets -> clanCore.facts
2024-03-27 16:03:16 +01:00
3771be2110
checks: add check for rendering docs
2024-03-27 16:59:42 +07:00
4b8b1107ba
clanCore/packages.nix: add gitMinimal
...
WIthout this, deployment via `clan machines update` will fail on the remote machine if the flake.nix has a git input
2024-03-25 11:47:32 +07:00
f16667e25a
refactor secrets & facts -> secret_facts & public_facts
2024-03-23 05:46:54 +01:00
539df08706
backups: skip preRestore and postRestore if not specified by a service
2024-03-20 09:32:01 +01:00
92ac151292
rework backup interface to no longer need to list backups to restore them
2024-03-20 09:32:01 +01:00
e296a3019d
re-format with nixfmt
2024-03-17 19:48:49 +01:00
77c0e6b31a
make installer nixos module stand-alone
2024-03-17 19:38:50 +01:00
2dcdcd98e9
installer: also match qemu and serial consoles for prompting qrcode
2024-03-17 19:14:24 +01:00
a6c3e15aca
don't use impure builtins.storePath
2024-03-17 18:10:23 +01:00
377302ff6c
change facts path to be reachable as a store path
2024-03-17 18:10:23 +01:00
a6d52a669d
fix openssh secrets
...
change facts path to be the full path
sshd: fixup store path
2024-03-13 14:59:46 +01:00
c2e43a4e65
allow fact-only secrets
2024-03-13 11:08:36 +01:00
5d5f504013
enable: spice-vdagent if xserver is enable
2024-03-12 16:00:54 +00:00
dd73406a92
installer: switch to systemd-boot
...
grub is not able to boot from the disks that we flash for weird reasons.
Since BIOS-boot is on life-support, we may as well just use systemd-boot.
2024-03-07 14:13:11 +01:00
0481746198
drop meshnamed from repository
...
It's not super useful and we can always add it back later if we need it.
2024-03-06 10:02:21 +01:00
603893872e
secrets: fix typo
2024-03-05 11:59:55 +01:00
a1dcddf9b4
clan-cli: add interactive secrets/fact generation
2024-03-03 04:06:18 +01:00
f500aee786
clanCore secrets: rename toplevel secret to service
2024-03-02 11:43:20 +01:00
4cfd580447
outputs: pass secretsData directly
2024-03-02 11:43:20 +01:00
57e9b27ff8
add option to set defaultGroups for secrets
2024-02-16 17:26:20 +01:00
6871b29d15
vms: use vm fact/secret-store
2024-02-15 10:41:25 +01:00
98139ac48d
add factsStore modules
2024-02-15 10:41:25 +01:00
7cab50c088
optimize filesystem mount flags
...
perf!
2024-02-14 13:01:47 +01:00
7a3fcd3deb
vms: enable sysusers
2024-02-13 14:14:54 +01:00
952f976ea7
fix virtiofsd in CIs
2024-02-13 13:57:52 +01:00
11ac50c17b
format rootfs in vm itself
2024-02-13 11:45:42 +01:00
07caab537f
drop unused mounts
2024-02-13 11:45:42 +01:00
a56dc3bf8c
simplify vmstate directory
2024-02-13 11:45:42 +01:00
d6b3e03d70
vms: integrate virtiofsd
2024-02-13 11:44:17 +01:00
10cbe11e53
nixosModules clanCore: fix iso format
2024-02-10 13:27:51 +01:00
02dd132e08
vms: init graceful shutdown for GUI
...
- add python modules for qemu protocols: QMP (hardware interactions) and QGA (guest service interaction)
- refactor state directory: remove name from path (already contains url)
- add impure vm test for basic qmp interaction
- simplify existing vm persistance test (factor out shared code)
- integrate graceful shutdown into GUI
the GUI integration still needs to be improved later:
- add fallback in case system doesn't react to powerdown button
- shutdown GUI switch fails if VM hasn't been started yet, and then remains in a wrong position
2024-02-09 19:55:18 +07:00
67d264263c
nixosModules zerotier: remove unneeded default
2024-02-07 05:26:01 +01:00
b780754621
clan-cli: add simple flash command
2024-02-07 05:26:01 +01:00
6fe6229498
add requireExplicitUpdate option for mobile devices
2024-02-06 17:55:34 +01:00
ad1a87fc14
move checks if targetHost/buildHost is set to cli
2024-02-06 14:51:44 +01:00
4d18ce2366
Merge pull request 'cli,nix: Add machine_icon, machine_description to vm' ( #812 ) from Qubasa-main into main
2024-02-06 12:29:32 +00:00
21443d0647
cli,nix: Add machine_icon, machine_description
2024-02-06 19:25:34 +07:00
923696c21c
clanCore: fix deploymentAddress -> targetHost alias
2024-02-06 10:55:07 +01:00
b3815527a5
Added machineIcon and machineDescription to buildClan
2024-02-05 14:18:40 +07:00
a2eb6f219d
nixosModules zerotier: fix type of dns
2024-02-05 02:31:14 +01:00
b39fda8d85
clanCore zerotier: set default values in config for merging
2024-02-03 09:26:04 +01:00
a52f1e3594
clanCore zerotier: add settings option
2024-02-03 04:48:54 +01:00
3538cf2e46
rename deployment address to target address
...
This is a prepares having a build server for deployment
2024-02-02 16:39:29 +07:00
86b248d457
zerotier generate: retry if port allocation fails
2024-02-01 10:11:30 +01:00
93874705fe
zerotier generate: kill process group
2024-02-01 10:01:28 +01:00
533012af7d
vms: rename wayland attrs to waypipe
...
And remove the options from the cli interface.
2024-02-01 10:14:36 +07:00
f89c9b00dd
vms: wayland attr specified in configuration
2024-02-01 09:00:43 +07:00
59fa63eba9
Reapply "vm-state: fix and improve testing"
...
This reverts commit 99092f6e76
.
vm-state: revert sysusers, improve testing
zerotier: enable persistence
vm-state: cleanup tests
2024-01-31 11:02:16 +07:00
0dbfe52d62
secrets: add sandbox user
2024-01-30 12:11:05 +01:00
99092f6e76
Revert "vm-state: fix and improve testing"
...
This reverts commit 6adc68a354
.
2024-01-29 15:16:10 +07:00
6adc68a354
vm-state: fix and improve testing
...
Also adds qemu qga protocol implementation to execute commands
2024-01-26 19:41:05 +07:00
a3ef8ce832
Merge pull request 'clan-cli secrets: add secret_store as python class' ( #733 ) from lassulus-HEAD into main
2024-01-24 14:52:14 +00:00
ce5e6bfd10
secret generators: run with set -efu -o pipefail
2024-01-24 15:49:12 +01:00
aee0ee4d5e
move secret stores into clan_cli codebase
2024-01-24 15:49:12 +01:00
f0895d5e3e
fix zerotier in vms
2024-01-23 19:43:42 +01:00
8338944062
move python code in nixos Module to external file
2024-01-23 15:04:40 +01:00
09887037f5
WIP: clan-cli secrets: add secret_store as python class
2024-01-23 15:04:40 +01:00
bd5ad0dc31
Merge pull request 'disable state home for now' ( #740 ) from Mic92-main into main
2024-01-17 10:03:48 +00:00
776b238d9c
disable state home for now
2024-01-17 10:59:01 +01:00
0b291c656f
Merge pull request 'state.nix: improve docs' ( #732 ) from DavHau-main into main
2024-01-17 06:51:55 +00:00
98e1c629c3
clanModules: disable nixos manual by default
2024-01-16 15:14:16 +01:00
c944fe8b48
state.nix: improve docs
2024-01-15 16:03:47 +07:00
876ffab3b1
add option to orbit moons
2024-01-12 18:31:18 +01:00
b1bb887dbf
zerotier: add support for moons
2024-01-12 18:26:00 +01:00
e941334ecf
zerotier: configure alternative tcp fallback relay
2024-01-12 15:13:20 +01:00
cedd1d7492
zerotier: set interface altname
2024-01-11 15:51:34 +01:00
7bf76eea06
zerotier: use configuration file instead to set the network name
2024-01-11 14:57:00 +01:00
0e62348d72
make zerotier name configureable
2024-01-11 14:57:00 +01:00
3563b6eaa4
zerotier: delete old networks
2024-01-11 13:24:00 +01:00
a5132a4f81
meshnamed: mark networkmanager interfaces as unmanaged
2024-01-11 12:17:44 +01:00
7a4b176248
open up zerotier ports
2024-01-10 17:24:41 +00:00
414f475802
state: declare /home as state by default
2024-01-10 17:37:40 +07:00
9f8e719b48
state: move options clanCore.state to a separate file
2024-01-10 17:10:10 +07:00
c29e0086a4
VMs: persist state folders on host
...
Done:
- move vm inspect attrs from system.clan.vm.config to clanCore.vm.inspect. This gives us proper name and type checking. everything in `system` is basically freeform, so the previous option definitions were never enforced
- when running VMs, mount state directory from ~/.config/clan/vmstate/{...} from the host to /var/vmstate inside the vm
- create bind mount inside the VM from /var/vmstate/{folder} to / for all folders defined in clanCore.state.<name>.folders
TODOs:
- make sure directories in ~/.config/clan/vmstate never collide (include hash of clan-url, etc.)
- port impure test to python
2024-01-08 18:38:07 +07:00
0922856fa5
switch to xwayland display :1
...
no conflict with Xorg
2024-01-04 16:18:27 +01:00
9dfc3f9613
add wayland-proxy-virtwl module
2023-12-15 14:14:20 +01:00
8ee72ba5fa
clanCore: refactor flake-module.nix into smaller files
2023-12-15 14:14:20 +01:00
9f4ab67fc2
Merge pull request 'clanCore: Fixed missing type null for clanIcon' ( #634 ) from Qubasa-main into main
2023-12-08 18:33:58 +00:00
4a5e5feb73
clanCore: Fixed missing type null for clanIcon
2023-12-08 19:30:04 +01:00
d6052c3497
clanCore: Fixed missing type null for clanIcon
2023-12-08 19:27:58 +01:00
28a6613bde
Merge pull request 'backups: support services for restore' ( #631 ) from lassulus-HEAD into main
2023-12-08 18:16:08 +00:00
dec431e69f
backups: support services for restore
2023-12-08 19:09:29 +01:00
eba34bf2f7
Changed clanIcon to be included into clanCore
2023-12-08 19:08:57 +01:00
57bded996b
Merge pull request 'move clanName into nixos machine configuration' ( #630 ) from Mic92-main into main
2023-12-08 15:21:59 +00:00
2a0a50fb5e
switch to initrd.systemd by default
2023-12-08 16:17:58 +01:00
4aa60317fa
move clanName into nixos machine configuration
2023-12-08 15:05:56 +00:00
4b9635c706
move clanName into nixos machine configuration
2023-12-08 16:03:29 +01:00
76c3c77886
Merge pull request 'add serial module to vms' ( #621 ) from Mic92-main into main
2023-12-08 11:37:50 +00:00
64944f896a
add serial module to vms
...
This is useful for debugging in the cli.
2023-12-08 12:35:33 +01:00
cf68bd41d6
backups: implement list/create and dry-run restore
2023-12-07 18:23:22 +01:00
45e9ab45f7
backups: implement list the easy way
2023-12-07 13:22:41 +01:00
0b772668a8
Merge pull request 'backups: add clanCore backup & clan borgbackup module' ( #605 ) from lassulus-backups into main
2023-12-04 16:51:33 +00:00
e772d29f44
implement backup cli for borgbackup
2023-12-04 17:47:23 +01:00
4fd84d1c48
disallow variable shadowing
2023-11-30 14:31:37 +01:00
780ffb9c8f
make type checking more strict
2023-11-30 14:31:37 +01:00
373fc83160
add option to extend path for generator
2023-11-30 14:15:40 +01:00
41afc65f34
clan-core/secrets: escape facts trailing newline
2023-11-29 13:29:20 +01:00
640430075a
backups: add clanCore backup & clan borgbackup module
2023-11-23 18:12:49 +01:00
1f03a9b7ec
Fix typo
2023-11-16 14:39:15 +01:00