Skip to main content
  1. Patching and building the kernel image
    1. Clone the pkgs repository from Github and check out the revision corresponding to your version of Talos Linux
    2. Clone the Linux kernel and check out the revision that pkgs uses (this can be found in kernel/kernel-prepare/pkg.yaml and it will be something like the following: https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-x.xx.x.tar.xz)
    3. Your module will need to be converted to be in-tree. The steps for this are different depending on the complexity of the module to port, but generally it would involve moving the module source code into the drivers tree and creating a new Makefile and Kconfig.
    4. Stage your changes in Git with git add -A.
    5. Run git diff --cached --no-prefix > foobar.patch to generate a patch from your changes.
    6. Copy this patch to kernel/kernel/patches in the pkgs repo.
    7. Add a patch line in the prepare segment of kernel/kernel/pkg.yaml:
    8. Build the kernel image. Make sure you are logged in to ghcr.io before running this command, and you can change or omit PLATFORM depending on what you want to target.
    9. Make a note of the image name the make command outputs.
  2. Building the installer image
    1. Copy the following into a new Dockerfile:
    2. Run to build and push the installer:
  3. Deploying to your cluster