5 Commits

Author SHA1 Message Date
Noel Georgi
9512e8f301
feat: allow modules to be loaded via extension
Allow modules to be loaded via [extensions](https://github.com/siderolabs/extensions/pull/52).

Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-08-15 17:14:38 +05:30
Noel Georgi
1ed3df295c
chore: support glibc apps extension spec
Update extension spec to support glibc standard path.

Ref: https://github.com/siderolabs/extensions/pull/49

Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-07-21 22:09:56 +05:30
Serge Logvinov
bcf928134c
feat: udev extensions support
Can add udev rules through extensions.

Signed-off-by: Serge Logvinov <serge.logvinov@sinextra.dev>
Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-11 15:12:22 +03:00
Andrey Smirnov
b3c3ef29bd
feat: install system extensions
Fixes #4815

This implements the following steps:

* machine configuration updates
* pulling and unpacking system extension images
* validating, listing system extensions
* re-packing system extensions
* preserving installed extensions in `/etc/extensions.yaml`

Once extension is enabled, raw information can be queried with:

```
$ talosctl -n 172.20.0.2 cat /etc/extensions.yaml
layers:
    - image: 000.ghcr.io-smira-gvisor-c927b54-dirty.sqsh
      metadata:
        name: gvisor
        version: 20220117.0-v1.0.0
        author: Andrew Rynhard
        description: |
            This system extension provides gVisor using containerd's runtime handler.
        compatibility:
            talos:
                version: '> v0.15.0-alpha.1'
```

This was tested with the `gvisor` system extension.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-01-26 16:24:28 +03:00
Artem Chernyshev
21f497b3e2
feat: install readonly overlay mounts during talos chroot sequence
The list of layers should come from the `/extensions.yaml` configuration
file.

Closes: https://github.com/talos-systems/talos/issues/4814

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2022-01-20 19:25:01 +03:00