Commit Graph

339 Commits

Author SHA1 Message Date
Aos Dabbagh
8a6d544eef fix(networking): Use true instead of "yes" for multicast config
I ran into an issue when I had clan + this module:
ce61f71680/nixos/mixins/mdns.nix (L6)
they both set the same config value, but clan uses "yes" and that module
uses `true`. systemd allows for "yes" or `true` (`man systemd.syntax`),
so I opted to change this to `true`.

Here's the full error:
```
error: The option `systemd.network.networks."99-ethernet-default-dhcp".networkConfig.MulticastDNS' has conflicting definition values:
- In `/nix/store/3yv22nq7rqd0ra30qvzc2d624rwa6h7c-source/nixosModules/clanCore/networking.nix': "yes"
- In `/nix/store/ivjk0r776mxal8v7jamwsrn4yidvg0dv-source/nixos/mixins/mdns.nix': true
Use `lib.mkForce value` or `lib.mkDefault value` to change the priority on any of these definitions.
```
2024-11-30 23:24:17 -05:00
lassulus
5372066e04 vars password-store: fix secretLocation again :) 2024-11-30 18:01:23 +01:00
lassulus
893892aff4 vars password-store: fix secretLocation 2024-11-30 17:24:17 +01:00
DavHau
66ce80c096 vars: rename: invalidation -> validation 2024-11-29 17:23:31 +07:00
DavHau
03bcf6bba3 vars: generate docs for cli and module 2024-11-29 17:23:31 +07:00
lassulus
748053154e vars: remove dead option 2024-11-28 16:39:01 +01:00
lassulus
af1dacc651 vars: use vars in option descriptions 2024-11-28 16:38:47 +01:00
lassulus
c00ac4a246 vars: remove secretsUploadDirectory from common module 2024-11-28 16:38:06 +01:00
Jörg Thalheim
0239770978 vars: add name to generators 2024-11-26 15:26:16 +01:00
lassulus
70a5910946 core password-store: define fileModule only if file is secret 2024-11-25 12:40:51 +01:00
lassulus
35cafe141b core password-store: set default location to not conflict with facts 2024-11-23 10:38:14 +01:00
lassulus
8ec33eb8cf core password-store: fix secret location 2024-11-22 22:34:09 +01:00
lassulus
0ef31a42df clan-cli password-store: silence move-mount output 2024-11-22 22:34:09 +01:00
DavHau
3f62e143ec vars: implement invalidation mechanism
This adds options `invalidationData` to generators.

`invalidationData` can be used by an author of a generator to signal if a re-generation is required after updating the logic.

Whenever a generator with invalidation data is executed, a hash of that data is stored by the respective public and/or secret backends.

The stored hashes will be checked on future deployments, and a re-generation is triggered whenever a hash doesn't match what's defined in nix.
2024-11-20 16:27:22 +07:00
lassulus
8e1697a089 password-store owner & group support 2024-11-16 01:18:59 +01:00
Qubasa
250eed0798 clan-cli: upload.py -> Replace rsync with native ssh command 2024-11-15 22:03:47 +07:00
lassulus
7ae7ac8bd1 cli vars password-store: fix file locations 2024-11-14 12:07:52 +01:00
clan-bot
f543040109 Merge pull request 'Inventory/constraints improve observability' (#2400) from hsjobeki/clan-core:hsjobeki-main into main 2024-11-13 13:42:17 +00:00
Johannes Kirschbauer
15492f12fa Assertions: Fixup dont render assertions into docs 2024-11-13 14:30:50 +01:00
Johannes Kirschbauer
8a5d99f6d2 Inventory/assertions: add seperate assertion layer 2024-11-13 13:52:47 +01:00
lassulus
9f7d46a536 core vars: remove default for dirs 2024-11-13 13:23:42 +01:00
Johannes Kirschbauer
959193fba1 Chore: fix export of machines clan schema 2024-11-12 14:46:26 +01:00
Johannes Kirschbauer
c7da3e165f Chore: remove unused clanImports module 2024-11-12 14:46:25 +01:00
Jörg Thalheim
1dc0692472 waypipe: fix basic eval 2024-11-11 12:52:55 +01:00
Jörg Thalheim
e7930f4f4d clanCore/zerotier: quote "or" keyword in attrset 2024-11-08 14:10:23 +00:00
Jörg Thalheim
6bfabbb8e6 vars: use explicit lib.mkOption function
the error messages where hard to read, when I tried to add a nested
option. Let's make the code easier to understand instead of saving some
characters to type.
2024-10-31 12:10:57 +01:00
Jörg Thalheim
56bb9c4c5a vars: move owner/group to a sops namespace
we want to allow users to use this feature but do not want to use this
option in our own module because it's not supported by password store.
2024-10-31 12:10:57 +01:00
Jörg Thalheim
eb761f3105 only add gitMinimal for older nix version 2024-10-29 13:53:58 +01:00
Jörg Thalheim
467b92063c add nixos-facter to base system 2024-10-29 13:53:46 +01:00
Jörg Thalheim
4230ae6750 ruff: enable warning lints 2024-10-23 09:06:02 +00:00
Louis Opter
f540ab91a1 vars: add the user and group options on files
This changeset forwards the ownership control options from sops-nix.
2024-10-23 09:05:53 +00:00
Jörg Thalheim
71e7ecd49c improve terminating processes on error 2024-10-10 17:59:26 +02:00
Jörg Thalheim
8844f6aad7 drop optionsNix 2024-10-09 13:22:06 +02:00
Jörg Thalheim
83f6485abc move nixos-facter imports to clanCore 2024-10-09 11:56:36 +02:00
Jörg Thalheim
fd114ab0f9 import nixos facter by default 2024-10-09 11:36:03 +02:00
Jörg Thalheim
1cea965bc1 switch from userborn to sysusers
fixes #2117
2024-10-08 17:51:55 +00:00
Johannes Kirschbauer
d96cf90a52 Inventory/interface: optional instances, allow to use modules without inventory 2024-10-02 11:01:06 +02:00
Jörg Thalheim
44e17e9ee6 fix zfs latest again 2024-09-24 12:52:53 +02:00
Jörg Thalheim
bd383a9f35 add nixos-facter to flash installer 2024-09-24 11:38:33 +02:00
DavHau
501ade7de7 vars: implement migration
Migrating generated files from the facts subsystem to the vars subsystem is now possible.

HowTo:
1. declare `clan.core.vars.generators.<generator>.migrateFact = my_service` where `my_service` refers to a service from `clan.core.facts.services`
2. run `clan vers generate your_machine` or `clan machines update your_machine`

Vars will only be migrated for a generator if:
1. The facts service specified via `migrateFact` does exist
2. None of the vars to generate exist yet
3. All public var names exist in the public facts store
4. All secret var names exist in the secret fact store

If the migration is deemed possible, the generator script will not be executed. Instead the files from the public or secret facts store are read and stored into the corresponding vars store
2024-09-19 17:57:03 +02:00
DavHau
1c56ef5725 vars: allow setting a default for values 2024-09-17 21:11:38 +02:00
clan-bot
35b12a59ed Merge pull request 'better nixos defaults' (#2106) from better-defaults into main 2024-09-15 13:52:48 +00:00
Jörg Thalheim
885d073fbc disable ldso32 stub to save eval time 2024-09-15 15:43:25 +02:00
Jörg Thalheim
ff2a9a110f switch to systemd-initrd 2024-09-15 15:43:25 +02:00
Jörg Thalheim
d3d2dd0277 disable info pages 2024-09-15 15:17:11 +02:00
Jörg Thalheim
d52b9096e5 enable zfs settings by default 2024-09-15 12:46:09 +02:00
DavHau
53592837a9 vars: get rid of meta.json 2024-09-12 16:52:44 +02:00
DavHau
3c27cc31e9 vars/sops: load sops info from nix instead of filesystem 2024-09-12 16:30:21 +02:00
a-kenji
4d2ad709ad vars: use correct paths for value accesses
Use correct paths for value accesses of vars under:

- `per-machine`
- `shared`
2024-09-11 19:02:43 +02:00
a-kenji
f1b857f4ae Revert "Merge pull request 'machine_id_v2' (#2052) from Qubasa/clan-core:machine_id_v2 into main"
This reverts commit 68a72a4156, reversing
changes made to 7af3e80249.
2024-09-10 14:01:12 +02:00