> ## Documentation Index
> Fetch the complete documentation index at: https://siderolabs-fe86397c-1-11-reference.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Install Talos Linux Extensions

<Tabs>
  <Tab title="UI">
    On the overview page click “Download Installation Media” button on the right.

    Select the list of extensions you want to be installed on the machine, Talos version and installation media type:

    <img src="https://mintcdn.com/siderolabs-fe86397c-1-11-reference/YGuga1UT8xktZXw3/omni/infrastructure-and-extensions/images/install-talos-linux-extensions-download-installation-media.jpg?fit=max&auto=format&n=YGuga1UT8xktZXw3&q=85&s=25d9014a92d563f2f9abf002b7e57c12" alt="Download installation media" width="6300" height="3692" data-path="omni/infrastructure-and-extensions/images/install-talos-linux-extensions-download-installation-media.jpg" />

    Click “Download”

    Boot the machine with that installation media. It will have all extensions installed.

    You can also add, remove or modify the extensions on an existing machine in a cluster by navigating to the "Nodes" view in a cluster, clicking on a machine, selecting the Extensions panel, then select "Update Extensions" to add or remove extensions.
  </Tab>

  <Tab title="CLI">
    Create a file called `cluster.yaml` with the following content:

    ```yaml
    kind: Cluster
    name: example
    kubernetes:
      version: v1.29.1
    talos:
      version: v1.6.7
    systemExtensions:
      - siderolabs/hello-world-service
    ---
    kind: ControlPlane
    machines:
      - <control plane machine UUID>
    ---
    kind: Workers
    machines:
      - <worker machine UUID>
    ---
    kind: Machine
    name: <control plane machine UUID>
    ---
    kind: Machine
    name: <worker machine UUID>
    install:
      disk: /dev/<disk>
    systemExtensions:
      - siderolabs/nvidia-container-toolkit
      - siderolabs/nvidia-fabricmanager
      - siderolabs/nvidia-open-gpu-kernel-modules
      - siderolabs/nonfree-kmod-nvidia
    ```

    Now, validate the document:

    ```bash
    omnictl cluster template validate -f cluster.yaml
    ```

    Create the cluster:

    ```bash
    omnictl cluster template sync -f cluster.yaml --verbose
    ```

    Finally, wait for the cluster to be up:

    ```bash
    omnictl cluster template status -f cluster.yaml
    ```

    The cluster will have `hello-world-service` extension installed on the control plane and all nvidia drivers on the worker.
  </Tab>
</Tabs>
