Skip to content

Releases: siderolabs/talos

v1.13.0-beta.1

27 Mar 14:37
Immutable release. Only release title and notes can be modified.
v1.13.0-beta.1
213ecf2

Choose a tag to compare

v1.13.0-beta.1 Pre-release
Pre-release

Talos 1.13.0-beta.1 (2026-03-27)

Welcome to the v1.13.0-beta.1 release of Talos!
This is a pre-release of Talos

Please try out the release binaries and report any issues at
https://github.com/siderolabs/talos/issues.

Clang built kernel and ThinLTO

Talos now uses a kernel built using Clang compiler, and optimized using ThinLTO. This should bring a small performance improvement,
alongside some hardening features, such as BTI on supported ARM systems.

Container Device Interface

Talos now enables CDI by default and extension/extension services can bring in dynamic
CDI spec files under /run/cdi.

talosctl debug

Talos Linux now provides a way to run and attach to the privileged debug container with a user-provided container image.
The debug container might be used for troubleshooting and debugging purposes.

Environment Configuration Document

A new EnvironmentConfig document has been introduced to allow users to specify environment variables for Talos components.
It replaces and deprecates the previous method of setting environment variables via the .machine.env field.

Multiple values for the same environment variable will replace previous values, with the last one taking precedence.

To remove an environment variable, remove it from the EnvironmentConfig document and restart the node.

External Volumes

Talos now supports virtiofs-based external volumes via the new
ExternalVolumeConfig
document.

These virtiofs external volumes are not supported when SELinux is running
in enforcing mode.

Extra Arguments accept slices in addition to strings

Several Talos configuration fields that previously accepted single string values for extra arguments have been updated to accept slices of strings as well.
This includes fields such as .cluster.apiServer.extraArgs.

BREAKING: If you were relying on the resources EtcdConfigs, KubeletConfigs, ControllerManagerConfigs, SchedulerConfigs or APIServerConfigs, the protobuf format has changed from map<string,string> to map<string,message>.

Container Image Signature Verification

Talos now supports machine-wide container image signature verification via the new ImageVerificationConfig machine config document.

Any image which gets pulled on the node will be verified against the configured rules, and if no rule matches, it will be pulled without verification.

Talos Imager Enhancements

Talos imager now supports running rootless. --privileged and -v /dev:/dev are no longer required.

Image APIs Updated

Talos Linux provides new APIs to manage container images on the node: listing, pulling, importing and removing images.
The new pull API provides pull progress notifications.

The CLI commands talosctl image pull, talosctl image list and talosctl image remove have been updated to interact with the new APIs.

Talosctl images k8s-bundle subcommand accepts version parameter

The talosctl images k8s-bundle command now accepts an optional argument to override Talos version.

Install and Upgrade API

Talos now exposes install and upgrade operations via the LifecycleService API, enabling programmatic installs and upgrades through a single, consistent interface.
The legacy upgrade API is deprecated; new integrations should migrate to LifecycleService for future compatibility.

Kubernetes server-side apply

Talos now uses inventory backed server-side apply when applying bootstrap manifests (including extraManifests and inlineManifests).
Purging of unneeded manifests is automatically performed.
The switch and inventory backfill is automatic and no action is needed from the user.

Dynamic Linux Kernel Preemption Model

Talos Linux now defaults to dynamic Linux kernel preemption model, the default value none matches
previous version, but now with kernel argument preempt= the preemption model can be changed.

See Linux kernel documentation for more
information on supported values.

This change only applies to amd64 (x86_64) architecture.

KubeSpan Configuration

A new KubeSpanConfig document has been introduced to configure KubeSpan settings.
It replaces and deprecates the previous method of configuring KubeSpan via the .machine.network.kubespan field.

The old configuration field will continue to work for backward compatibility.

KubeSpan Advertised Network Filters

KubeSpan now supports filtering of advertised networks using the excludeAdvertisedNetworks field in the KubeSpanConfig document.
This allows users to specify a list of CIDRs to exclude from the advertised networks. Please note that routing must be symmetric for any
pair of peers, so if one peer excludes a certain network, the other peer must also exclude it. In other words, for any given pair of peers,
and any pair of their addresses, the traffic should either go through KubeSpan or not, but not one way or the other.

LinkAliasConfig Pattern-Based Multi-Alias

LinkAliasConfig now supports pattern-based alias names using %d format verb (e.g. net%d).

When the alias name contains a %d format verb, the selector is allowed to match multiple links.
Each matched link receives a sequential alias (e.g. net0, net1, ...) based on hardware address order
of the links. Links already aliased by a previous config are automatically skipped.

This enables creating stable aliases from any N links using a single config document,
useful for BondConfig and BridgeConfig member interfaces on varying hardware.

Negative Max Volume Size

Negative max size represents the amount of space to be left free on the device, rather than the size the volume should consume.
For example:
* a max size of "-10GiB" means the volume can grow to the available space minus 10GiB.
* a max size of "-25%" means the volume can grow to the available space minus 25%.

Flannel CNI with Network Policy Support

Talos Linux now supports optionally deploying Flannel CNI with network policy support enabled.
The network policy implementation is kube-network-policies.

To enable Flannel CNI with network policy support, use the following machine configuration patch:

cluster:
  network:
    cni:
      name: flannel
      flannel:
        kubeNetworkPoliciesEnabled: true

(If the cluster is already running, sync the bootstrap manifests after applying the patch to deploy the new CNI configuration.)

NVIDIA GPU Support

Talos switched to using CDI and now supports configuring NVIDIA GPU via the gpu-operator helm chart.
See the documentation on upgrade notes
for more details on how to configure NVIDIA GPU support in Talos.

Container Image Decompression

Talos now ships with igzip (amd64) and pigz (arm64) to speed up container image decompression.

ProbeConfig

The TCPProbeConfig configuration document allows to configure TCP probes for network reachability checks.
This allows to define a custom connectivity condition.

/proc/PID/mem Access Hardening

A new kernel parameter proc_mem.force_override=never has been introduced by default to enhance system security
by preventing unwanted writes to protected process memory via /proc/PID/mem.
If the kernel parameter is removed, default behavior is restored, allowing access only if the process is traced.

Reproducible Disk Images

Talos disk images are now reproducible. Building the same version of Talos multiple times will yield
identical disk images.

Note: VHD and VMDK (Azure and VMware) images are not currently reproducible due to limitations in the underlying image creation tools.
Users verifying reproducible images should use raw images, verify checksums, and convert them to VHD/VMDK as needed.

ResolverConfig

The nameservers configuration in machine configuration now overwrites any previous layers (defaults, platform, etc.) when specified.
Previously a smart merge was performed to keep IPv4/IPv6 nameservers from lower layers if the machine configuration specified only one type.

Routing Rules Support

Talos now supports routing rules via the new RoutingRuleConfig machine config document.

Service Account Issuer configuration

In API Server, passing extra args with service-account-issuer will append them after default value.
This allows easy migration, e.g. by changing .cluster.controlPlane.endpoint to new value, and keeping the old value in
.cluster.apiServer.extraArgs["service-account-issuer"].

talosctl images talos-bundle can ignore reaching to the registry

The talosctl images talos-bundle command now accepts optional --overlays and --extensions flags.
If those are set to false, the command will not attempt to reach out to the container registry to fetch the latest versions and digests of the overlays and extensions.

Lifecycle Upgrade in talosctl

talosctl upgrades now route through LifecycleService, aligning CLI behavior with the new install/upgrade API and unifying the upgrade path.
This change is transparent to users but standardizes the backend used for upgrades.

Component Updates

Linux: 6.18.19
containerd: 2.2.2
etcd: 3.6.9
CoreDNS: 1.14.2
Kubernetes: 1.36.0-beta.0
CNI: 1.9.1
Flannel CNI plugin: v1.9.0-flannel1
...

Read more

v1.12.6

19 Mar 15:52
Immutable release. Only release title and notes can be modified.
v1.12.6
a1b8bd6

Choose a tag to compare

Talos 1.12.6 (2026-03-19)

Welcome to the v1.12.6 release of Talos!

Please try out the release binaries and report any issues at
https://github.com/siderolabs/talos/issues.

Component Updates

Linux: 6.18.18
runc: 1.3.5

Talos is built with Go 1.25.8.

Contributors

  • Mickaël Canévet
  • Andrey Smirnov
  • Dominik Pitz
  • Kai Zhang
  • Noel Georgi
  • Stanley Chan
  • Zadkiel AHARONIAN

Changes

21 commits

  • a1b8bd612 release(v1.12.6): prepare release
  • 72bd570f0 feat: update Linux to 6.18.18
  • 9d5638f4c fix: accept image cache volume encryption config
  • 0f018bf80 fix: panic in hardware.SystemInfoController
  • c46b89807 fix: validate missing apiVersion in config document decoder
  • c47cad9ec fix: pull in a fix for dmesg timestamps
  • 190336a66 fix: prevent stale discovered volumes reads
  • 217e9bb02 fix: bring in new version of go-cmd and go-blockdevice
  • d7779a5ba fix: stop pulling wrong platform for images
  • eb6eb664a fix(machined): support USERDATA legacy fallback in OpenNebula driver
  • ba20c7c12 feat(machined): add ONEGATE proxy route and deterministic interface iteration for OpenNebula
  • 739f66458 feat(machined): inherit IP6_METHOD from METHOD in OpenNebula driver
  • 93878c079 fix(machined): align OpenNebula hostname precedence with reference
  • 9718d737f feat(machined): add IPv6 alias address support for OpenNebula (ETH*_ALIAS*_IP6)
  • b649fb467 feat(machined): support ETH*_IP6_METHOD (static/dhcp/auto/disable) for OpenNebula
  • c81df6fa9 refactor(machined): extract per-interface IPv4 helper in OpenNebula driver
  • 501924e5a fix(machined): use ParseFQDN for hostname parsing in OpenNebula
  • e9331b271 feat(machined): support per-interface route metric for OpenNebula (ETH*_METRIC)
  • 6e78afbab feat(machined): add network alias support for OpenNebula (ETH*_ALIAS*)
  • 9f648b491 feat(machined): merge global and per-interface DNS for OpenNebula
  • 04fba03a9 feat(machined): add static routes support via ETH*_ROUTES for OpenNebula

Changes from siderolabs/go-cmd

2 commits

Changes from siderolabs/go-kmsg

3 commits

Changes from siderolabs/pkgs

4 commits

Dependency Changes

  • github.com/google/go-containerregistry v0.20.6 -> v0.20.7
  • github.com/siderolabs/go-blockdevice/v2 v2.0.24 -> v2.0.26
  • github.com/siderolabs/go-cmd v0.1.3 -> v0.2.0
  • github.com/siderolabs/go-kmsg v0.1.4 -> v0.1.5
  • github.com/siderolabs/pkgs v1.12.0-46-ge695c74 -> v1.12.0-50-ga92bed5
  • github.com/siderolabs/talos/pkg/machinery v1.12.5 -> v1.12.6
  • github.com/spf13/cobra v1.10.1 -> v1.10.2
  • golang.org/x/sys v0.41.0 -> v0.42.0
  • google.golang.org/grpc v1.78.0 -> v1.79.3

Previous release can be found at v1.12.5

Images

ghcr.io/siderolabs/flannel:v0.27.4
registry.k8s.io/coredns/coredns:v1.13.2
registry.k8s.io/etcd:v3.6.8
registry.k8s.io/kube-apiserver:v1.35.2
registry.k8s.io/kube-controller-manager:v1.35.2
registry.k8s.io/kube-scheduler:v1.35.2
registry.k8s.io/kube-proxy:v1.35.2
ghcr.io/siderolabs/kubelet:v1.35.2
registry.k8s.io/pause:3.10
ghcr.io/siderolabs/installer:v1.12.6
ghcr.io/siderolabs/installer-base:v1.12.6
ghcr.io/siderolabs/imager:v1.12.6
ghcr.io/siderolabs/talos:v1.12.6
ghcr.io/siderolabs/talosctl-all:v1.12.6
ghcr.io/siderolabs/overlays:v1.12.6
ghcr.io/siderolabs/extensions:v1.12.6

v1.13.0-beta.0

18 Mar 14:11
Immutable release. Only release title and notes can be modified.
v1.13.0-beta.0
a544aea

Choose a tag to compare

v1.13.0-beta.0 Pre-release
Pre-release

Talos 1.13.0-beta.0 (2026-03-18)

Welcome to the v1.13.0-beta.0 release of Talos!
This is a pre-release of Talos

Please try out the release binaries and report any issues at
https://github.com/siderolabs/talos/issues.

Clang built kernel and ThinLTO

Talos now uses a kernel built using Clang compiler, and optimized using ThinLTO. This should bring a small performance improvement,
alongside some hardening features, such as BTI on supported ARM systems.

Container Device Interface

Talos now enables CDI by default and extension/extension services can bring in dynamic
CDI spec files under /run/cdi.

talosctl debug

Talos Linux now provides a way to run and attach to the privileged debug container with a user-provided container image.
The debug container might be used for troubleshooting and debugging purposes.

Environment Configuration Document

A new EnvironmentConfig document has been introduced to allow users to specify environment variables for Talos components.
It replaces and deprecates the previous method of setting environment variables via the .machine.env field.

Multiple values for the same environment variable will replace previous values, with the last one taking precedence.

To remove an environment variable, remove it from the EnvironmentConfig document and restart the node.

External Volumes

Talos now supports virtiofs-based external volumes via the new
ExternalVolumeConfig
document.

These virtiofs external volumes are not supported when SELinux is running
in enforcing mode.

Extra Arguments accept slices in addition to strings

Several Talos configuration fields that previously accepted single string values for extra arguments have been updated to accept slices of strings as well.
This includes fields such as .cluster.apiServer.extraArgs.

BREAKING: If you were relying on the resources EtcdConfigs, KubeletConfigs, ControllerManagerConfigs, SchedulerConfigs or APIServerConfigs, the protobuf format has changed from map<string,string> to map<string,message>.

Container Image Signature Verification

Talos now supports machine-wide container image signature verification via the new ImageVerificationConfig machine config document.

Any image which gets pulled on the node will be verified against the configured rules, and if no rule matches, it will be pulled without verification.

Talos Imager Enhancements

Talos imager now supports running rootless. --privileged and -v /dev:/dev are no longer required.

Image APIs Updated

Talos Linux provides new APIs to manage container images on the node: listing, pulling, importing and removing images.
The new pull APIs provides pull progress notifications.

The CLI commands talosctl image pull, talosctl image list and talosctl image remove have been updated to interact with the new APIs.

Talosctl images k8s-bundle subcommand accepts version parameter

The talosctl images k8s-bundle command now accepts an optional version overrides arguments.

Install and Upgrade API

Talos now exposes install and upgrade operations via the LifecycleService API, enabling programmatic installs and upgrades through a single, consistent interface.
The legacy upgrade API is deprecated; new integrations should migrate to LifecycleService for future compatibility.

Kubernetes server-side apply

Talos now uses inventory backed server-side apply when applying bootsrap manifests (including extraManifests and inlineManifests).
Purging of unneeded manifests is automatically performed.
The switch and inventory backfill is automatic and no action is needed from the user.

Dynamic Linux Kernel Preemption Model

Talos Linux now defaults to dynamic Linux kernel preemption model, the default value none matches
previous version, but now with kernel argument preempt= the preemption model can be changed.

See Linux kernel documentation for more
information on supported values.

This change only applies to amd64 (x86_64) architecture.

KubeSpan Configuration

A new KubeSpanConfig document has been introduced to configure KubeSpan settings.
It replaces and deprecates the previous method of configuring KubeSpan via the .machine.network.kubespan field.

The old configuration field will continue to work for backward compatibility.

KubeSpan Advertised Network Filters

KubeSpan now supports filtering of advertised networks using the excludeAdvertisedNetworks field in the KubeSpanConfig document.
This allows users to specify a list of CIDRs to exclude from the advertised networks. Please note that routing must be symmetric for any
pair of peers, so if one peer excludes a certain network, the other peer must also exclude it. In other words, for any given pair of peers,
and any pair of their addresses, the traffic should either go through KubeSpan or not, but not one way or the other.

LinkAliasConfig Pattern-Based Multi-Alias

LinkAliasConfig now supports pattern-based alias names using %d format verb (e.g. net%d).

When the alias name contains a %d format verb, the selector is allowed to match multiple links.
Each matched link receives a sequential alias (e.g. net0, net1, ...) based on hardware address order
of the links. Links already aliased by a previous config are automatically skipped.

This enables creating stable aliases from any N links using a single config document,
useful for BondConfig and BridgeConfig member interfaces on varying hardware.

Negative Max Volume Size

Negative max size represents the amount of space to be left free on the device, rather than the size the volume should consume.
For example:
* a max size of "-10GiB" means the volume can grow to the available space minus 10GiB.
* a max size of "-25%" means the volume can grow to the available space minus 25%.

Flannel CNI with Network Policy Support

Talos Linux now supports optionally deploying Flannel CNI with network policy support enabled.
The network policy implementation is kube-network-policies.

To enable Flannel CNI with network policy support, use the following machine configuration patch:

cluster:
  network:
    cni:
      name: flannel
      flannel:
        kubeNetworkPoliciesEnabled: true

(If the cluster is already running, sync the bootstrap manifests after applying the patch to deploy the new CNI configuration.)

NVIDIA GPU Support

Talos switched to using CDI and now supports configuring NVIDIA GPU via the gpu-operator helm chart.
See the documentation on upgrade notes
for more details on how to configure NVIDIA GPU support in Talos.

Container Image Decompression

Talos now ships with igzip (amd64) and pigz (arm64) to speed up container image decompression.

ProbeConfig

The TCPProbeConfig configuration document allows to configure TCP probes for network reachability checks.
This allows to define a custom connectivity condition.

/proc/PID/mem Access Hardening

A new kernel parameter proc_mem.force_override=never has been introduced by default to enhance system security
by preventing unwanted writes to protected process memory via /proc/PID/mem.
If the kernel parameter is removed, default behavior is restored, allowing access only if the process is traced.

Reproducible Disk Images

Talos disk images are now reproducible. Building the same version of Talos multiple times will yield
identical disk images.

Note: VHD and VMDK (Azure and VMware) images are not currently reproducible due to limitations in the underlying image creation tools.
Users verifying reproducible images should use raw images, verify checksums, and convert them to VHD/VMDK as needed.

ResolverConfig

The nameservers configuration in machine configuration now overwrites any previous layers (defaults, platform, etc.) when specified.
Previously a smart merge was performed to keep IPv4/IPv6 nameservers from lower layers if the machine configuration specified only one type.

Routing Rules Support

Talos now supports routing rules via the new RoutingRuleConfig machine config document.

Service Account Issuer configuration

In API Server, passing extra args with service-account-issuer will append them after default value.
This allows easy migration, e.g. by changing .cluster.controlPlane.endpoint to new value, and keeping the old value in
.cluster.apiServer.extraArgs["service-account-issuer"].

talosctl images talos-bundle can ignore reaching to the registry

The talosctl images talos-bundle command now accepts optional --overlays and --extensions flags.
If those are set to false, the command will not attempt to reach out to the container registry to fetch the latest versions and digests of the overlays and extensions.

Lifecycle Upgrade in talosctl

talosctl upgrades now route through LifecycleService, aligning CLI behavior with the new install/upgrade API and unifying the upgrade path.
This change is transparent to users but standardizes the backend used for upgrades.

Component Updates

Linux: 6.18.18
containerd: 2.2.2
etcd: 3.6.8
CoreDNS: 1.14.2
Kubernetes: 1.36.0-alpha.2
Flannel CNI plugin: v1.9.0-flannel1
Flannel: 0.28.1
...

Read more

v1.12.5

09 Mar 15:16
Immutable release. Only release title and notes can be modified.
v1.12.5
da6c6e4

Choose a tag to compare

Talos 1.12.5 (2026-03-09)

Welcome to the v1.12.5 release of Talos!

Please try out the release binaries and report any issues at
https://github.com/siderolabs/talos/issues.

Component Updates

Linux: 6.18.15
Kubernetes: 1.35.2
etcd: 3.6.8

Talos is built with Go 1.25.8.

Contributors

  • Andrey Smirnov
  • Mateusz Urbanek
  • Dmitrii Sharshakov
  • Fritz Schaal
  • Jan Paul
  • Max Makarov
  • Mickaël Canévet
  • Nico Berlee
  • Orzelius
  • Spencer Smith

Changes

19 commits

  • da6c6e461 release(v1.12.5): prepare release
  • 4f978a747 fix: correctly calculate end ranges for nftables sets
  • 8d52e2dbe feat: add trusted roots generation to stdpatches
  • 628487715 fix: use correct dhcp option for unicast dhcp renewal
  • dcf23be4f fix: ignore image digest when doing upgrade-k8s
  • f8a2a9b7a fix(machined): opennebula: process ETH*_ vars regardless of NETWORK context flag
  • db9ff23ae fix: patch with delete for LinkConfigs
  • e0c38e2ae fix: update path handling on talosctl cgroups
  • ca2d4c146 fix: stop Kubernetes client from dynamically reloading the certs
  • 70ae2f274 refactor: split locate and provision
  • c3b04844e fix: hold user volumes root mountpoint
  • d935420b2 fix: handle raw encryption keys with \n properly
  • 7fe1a47af fix: remove stale endpoints
  • 3ea08888a fix: allow static hosts in /etc/hosts without hostname
  • 5ebb00fdc fix: switch to better Myers algorithm implementation
  • 2b4037935 feat: update etcd to v3.6.8
  • 1ce9328e4 fix: disks flag parsing and handling in create qemu command
  • 1f989dfb0 fix: read multi-doc machine config with newer talosctl
  • 40ba6e3ec feat: update Linux 6.18.15, Go 1.25.8

Changes from siderolabs/go-debug

1 commit

Changes from siderolabs/pkgs

7 commits

Changes from siderolabs/tools

1 commit

Dependency Changes

  • github.com/docker/cli v29.0.0 -> v29.2.1
  • github.com/siderolabs/go-blockdevice/v2 v2.0.23 -> v2.0.24
  • github.com/siderolabs/go-debug v0.6.1 -> v0.6.2
  • github.com/siderolabs/pkgs v1.12.0-39-gb1fc4c6 -> v1.12.0-46-ge695c74
  • github.com/siderolabs/talos/pkg/machinery v1.12.3 -> v1.12.5
  • github.com/siderolabs/tools v1.12.0-6-gdc37e09 -> v1.12.0-7-g57916cb
  • golang.org/x/net v0.48.0 -> v0.51.0
  • golang.org/x/sys v0.40.0 -> v0.41.0
  • golang.org/x/term v0.38.0 -> v0.40.0
  • golang.org/x/text v0.33.0 -> v0.34.0
  • google.golang.org/grpc v1.76.0 -> v1.78.0
  • google.golang.org/protobuf v1.36.10 -> v1.36.11
  • k8s.io/api v0.35.0 -> v0.35.2
  • k8s.io/apiextensions-apiserver v0.35.0 -> v0.35.2
  • k8s.io/apiserver v0.35.0 -> v0.35.2
  • k8s.io/client-go v0.35.0 -> v0.35.2
  • k8s.io/component-base v0.35.0 -> v0.35.2
  • k8s.io/kube-scheduler v0.35.0 -> v0.35.2
  • k8s.io/kubectl v0.35.0 -> v0.35.2
  • k8s.io/kubelet v0.35.0 -> v0.35.2
  • k8s.io/pod-security-admission v0.35.0 -> v0.35.2

Previous release can be found at v1.12.4

Images

ghcr.io/siderolabs/flannel:v0.27.4
registry.k8s.io/coredns/coredns:v1.13.2
registry.k8s.io/etcd:v3.6.8
registry.k8s.io/kube-apiserver:v1.35.2
registry.k8s.io/kube-controller-manager:v1.35.2
registry.k8s.io/kube-scheduler:v1.35.2
registry.k8s.io/kube-proxy:v1.35.2
ghcr.io/siderolabs/kubelet:v1.35.2
registry.k8s.io/pause:3.10
ghcr.io/siderolabs/installer:v1.12.5
ghcr.io/siderolabs/installer-base:v1.12.5
ghcr.io/siderolabs/imager:v1.12.5
ghcr.io/siderolabs/talos:v1.12.5
ghcr.io/siderolabs/talosctl-all:v1.12.5
ghcr.io/siderolabs/overlays:v1.12.5
ghcr.io/siderolabs/extensions:v1.12.5

v1.13.0-alpha.2

25 Feb 11:05
Immutable release. Only release title and notes can be modified.
v1.13.0-alpha.2
59311a7

Choose a tag to compare

v1.13.0-alpha.2 Pre-release
Pre-release

Talos 1.13.0-alpha.2 (2026-02-25)

Welcome to the v1.13.0-alpha.2 release of Talos!
This is a pre-release of Talos

Please try out the release binaries and report any issues at
https://github.com/siderolabs/talos/issues.

Clang built kernel and ThinLTO

Talos now uses a kernel built using Clang compiler, and optimized using ThinLTO. This should bring a small performance improvement,
alongside some hardening features, such as BTI on supported ARM systems.

talosctl debug

Talos Linux now provides a way to run and attach to the privileged debug container with a user-provided container image.
The debug container might be used for troubleshooting and debugging purposes.

Environment Configuration Document

A new EnvironmentConfig document has been introduced to allow users to specify environment variables for Talos components.
It replaces and deprecates the previous method of setting environment variables via the .machine.env field.

Multiple values for the same environment variable will replace previous values, with the last one taking precedence.

To remove an environment variable, remove it from the EnvironmentConfig document and restart the node.

External Volumes

Talos now supports virtiofs-based external volumes via the new
ExternalVolumeConfig
document.

These virtiofs external volumes are not supported when SELinux is running
in enforcing mode.

Extra Arguments accept slices in addition to strings

Several Talos configuration fields that previously accepted single string values for extra arguments have been updated to accept slices of strings as well.
This includes fields such as .cluster.apiServer.extraArgs.

BREAKING: If you were relying on the resources EtcdConfigs, KubeletConfigs, ControllerManagerConfigs, SchedulerConfigs or APIServerConfigs, the protobuf format has changed from map<string,string> to map<string,message>.

Talos Imager Enhancements

Talos imager now supports running rootless. --privileged and -v /dev:/dev are no longer required.

Image APIs Updated

Talos Linux provides new APIs to manage container images on the node: listing, pulling, importing and removing images.
The new pull APIs provides pull progress notifications.

The CLI commands talosctl image pull, talosctl image list and talosctl image remove have been updated to interact with the new APIs.

Talosctl images k8s-bundle subcommand accepts version parameter

The talosctl images k8s-bundle command now accepts an optional version overrides arguments.

Kubernetes server-side apply

Talos now uses inventory backed server-side apply when applying bootsrap manifests (including extraManifests and inlineManifests).
Purging of unneeded manifests is automatically performed.
The switch and inventory backfill is automatic and no action is needed from the user.

KubeSpan Configuration

A new KubeSpanConfig document has been introduced to configure KubeSpan settings.
It replaces and deprecates the previous method of configuring KubeSpan via the .machine.network.kubespan field.

The old configuration field will continue to work for backward compatibility.

KubeSpan Advertised Network Filters

KubeSpan now supports filtering of advertised networks using the excludeAdvertisedNetworks field in the KubeSpanConfig document.
This allows users to specify a list of CIDRs to exclude from the advertised networks. Please note that routing must be symmetric for any
pair of peers, so if one peer excludes a certain network, the other peer must also exclude it. In other words, for any given pair of peers,
and any pair of their addresses, the traffic should either go through KubeSpan or not, but not one way or the other.

LinkAliasConfig Pattern-Based Multi-Alias

LinkAliasConfig now supports pattern-based alias names using %d format verb (e.g. net%d).

When the alias name contains a %d format verb, the selector is allowed to match multiple links.
Each matched link receives a sequential alias (e.g. net0, net1, ...) based on hardware address order
of the links. Links already aliased by a previous config are automatically skipped.

This enables creating stable aliases from any N links using a single config document,
useful for BondConfig and BridgeConfig member interfaces on varying hardware.

Negative Max Volume Size

Negative max size represents the amount of space to be left free on the device, rather than the size the volume should consume.
For example:
* a max size of "-10GiB" means the volume can grow to the available space minus 10GiB.
* a max size of "-25%" means the volume can grow to the available space minus 25%.

Flannel CNI with Network Policy Support

Talos Linux now supports optionally deploying Flannel CNI with network policy support enabled.
The network policy implementation is kube-network-policies.

To enable Flannel CNI with network policy support, use the following machine configuration patch:

cluster:
  network:
    cni:
      name: flannel
      flannel:
        kubeNetworkPoliciesEnabled: true

(If the cluster is already running, sync the bootstrap manifests after applying the patch to deploy the new CNI configuration.)

Container Image Decompression

Talos now ships with igzip (amd64) and pigz (arm64) to speed up container image decompression.

ProbeConfig

The TCPProbeConfig configuration document allows to configure TCP probes for network reachability checks.
This allows to define a custom connectivity condition.

/proc/PID/mem Access Hardening

A new kernel parameter proc_mem.force_override=never has been introduced by default to enhance system security
by preventing unwanted writes to protected process memory via /proc/PID/mem.
If the kernel parameter is removed, default behavior is restored, allowing access only if the process is traced.

Reproducible Disk Images

Talos disk images are now reproducible. Building the same version of Talos multiple times will yield
identical disk images.

Note: VHD and VMDK (Azure and VMware) images are not currently reproducible due to limitations in the underlying image creation tools.
Users verifying reproducible images should use raw images, verify checksums, and convert them to VHD/VMDK as needed.

ResolverConfig

The nameservers configuration in machine configuration now overwrites any previous layers (defaults, platform, etc.) when specified.
Previously a smart merge was performed to keep IPv4/IPv6 nameservers from lower layers if the machine configuration specified only one type.

Service Account Issuer configuration

In API Server, passing extra args with service-account-issuer will append them after default value.
This allows easy migration, e.g. by changing .cluster.controlPlane.endpoint to new value, and keeping the old value in
.cluster.apiServer.extraArgs["service-account-issuer"].

talosctl images talos-bundle can ignore reaching to the registry

The talosctl images talos-bundle command now accepts optional --overlays and --extensions flags.
If those are set to false, the command will not attempt to reach out to the container registry to fetch the latest versions and digests of the overlays and extensions.

Component Updates

Linux: 6.18.13
containerd: 2.2.1
etcd: 3.6.8
CoreDNS: 1.14.1
Kubernetes: 1.36.0-alpha.1
Flannel CNI plugin: v1.9.0-flannel1
Flannel: 0.28.1
LVM2: 2_03_38
runc: 1.4.0
systemd: 259.1
cryptsetup: 2.8.3
Tenstorrent: 2.7.0
iptables: 1.8.12

Talos is built with Go 1.26.0.

VM Hot-Add Support

Talos now includes udev rules to support hot-adding of CPUs in virtualized environments.

Contributors

  • Andrey Smirnov
  • Mateusz Urbanek
  • Noel Georgi
  • Dmitrii Sharshakov
  • Orzelius
  • Laura Brehm
  • Edward Sammut Alessi
  • Max Makarov
  • Andreas Freund
  • Artem Chernyshev
  • Bryan Lee
  • Fritz Schaal
  • Justin Garrison
  • Mickaël Canévet
  • Nico Berlee
  • Pranav Patil
  • Alexis La Goutte
  • Andras BALI
  • Andrei Kvapil
  • Birger Johan Nordølum
  • Camillo Rossi
  • Christopher Puschmann
  • Daniil Kivenko
  • Dmitrii Sharshakov
  • Florian Ströger
  • Gregor Gruener
  • Jaakko Sirén
  • Jan Paul
  • Jean-Francois Roy
  • Joakim Nohlgård
  • Jonas Lammler
  • Lennard Klein
  • Matthew Sanabria
  • Michal Baumgartner
  • Olav Thoresen
  • Serge van Ginderachter
  • Skye Soss
  • Spencer Smith
  • Sébastien Masset
  • Tim Jones
  • Utku Ozdemir
  • arita
  • dataprolet
  • drew
  • eseiker
  • greenpsi
  • lmacka
  • pranav767

Changes

222 commits

  • 59311a792 release(v1.13.0-alpha.2): prepare release
  • 009f0d6ca chore: update pkgs
  • ba56b0295 feat: include hid-multitouch.ko kernel module in rootfs
  • ae29a0dcc feat: update Linux to 6.18.13
  • 7cf1de279 fix: bring in new version of go-cmd and go-blockdevice
  • c8800b41e fix: update path handling on talosctl cgroups
  • 0a7b6eb2c chore: test extensions
  • 8b1c974a2 refactor: drop termui-widgets library
  • 5baa0028e fix: add owning inventory annotation to talos manifests
  • d3e793d14 fix: stop Kubernetes client from dynamically reloading the certs
  • 6a5a0e3bd feat: support pattern link aliases
  • 9758bd4fe feat: update Go to 1.26
  • e00aed0f6 feat: update Kubernetes v1.36.0-alpha.1
  • si...
Read more

v1.12.4

13 Feb 11:14
Immutable release. Only release title and notes can be modified.
v1.12.4
fc8e600

Choose a tag to compare

Talos 1.12.4 (2026-02-13)

Welcome to the v1.12.4 release of Talos!

Please try out the release binaries and report any issues at
https://github.com/siderolabs/talos/issues.

KubeSpan Advertised Network Filters

KubeSpan now supports filtering of advertised networks using the excludeAdvertisedNetworks field in the KubeSpanConfig document.
This allows users to specify a list of CIDRs to exclude from the advertised networks. Please note that routing must be symmetric for any
pair of peers, so if one peer excludes a certain network, the other peer must also exclude it. In other words, for any given pair of peers,
and any pair of their addresses, the traffic should either go through KubeSpan or not, but not one way or the other.

Component Updates

Linux: 6.18.9

Talos is built with Go 1.25.7.

Contributors

  • Andrey Smirnov
  • Daniil Kivenko
  • Florian Ströger
  • Fritz Schaal
  • Mateusz Urbanek

Changes

9 commits

  • fc8e600ba release(v1.12.4): prepare release
  • 14dde14eb feat: add filter for KubeSpan advertised networks
  • c277d0119 fix: ignore volumes in wave calculation without provisioning
  • f90af88d8 fix: use node podCIDRs for kubespan advertiseKubernetesNetworks
  • a025ea46c feat: add IPv6 GRE support
  • 924125420 fix: typo with rpi_5 profile name
  • 64f49851a fix: swap volume configuration for min/max size
  • 19354ab58 feat: update Linux to 6.18.9
  • 639c1c928 fix: mismerge of nft with json support

Changes from siderolabs/discovery-api

2 commits

Changes from siderolabs/pkgs

4 commits

Dependency Changes

  • github.com/siderolabs/discovery-api v0.1.6 -> v0.1.8
  • github.com/siderolabs/pkgs v1.12.0-35-g15d5d78 -> v1.12.0-39-gb1fc4c6

Previous release can be found at v1.12.3

Images

ghcr.io/siderolabs/flannel:v0.27.4
registry.k8s.io/coredns/coredns:v1.13.2
registry.k8s.io/etcd:v3.6.7
registry.k8s.io/kube-apiserver:v1.35.0
registry.k8s.io/kube-controller-manager:v1.35.0
registry.k8s.io/kube-scheduler:v1.35.0
registry.k8s.io/kube-proxy:v1.35.0
ghcr.io/siderolabs/kubelet:v1.35.0
registry.k8s.io/pause:3.10
ghcr.io/siderolabs/installer:v1.12.4
ghcr.io/siderolabs/installer-base:v1.12.4
ghcr.io/siderolabs/imager:v1.12.4
ghcr.io/siderolabs/talos:v1.12.4
ghcr.io/siderolabs/talosctl-all:v1.12.4
ghcr.io/siderolabs/overlays:v1.12.4
ghcr.io/siderolabs/extensions:v1.12.4

v1.12.3

07 Feb 19:16
v1.12.3
6d6471f

Choose a tag to compare

Talos 1.12.3 (2026-02-07)

Welcome to the v1.12.3 release of Talos!

Please try out the release binaries and report any issues at
https://github.com/siderolabs/talos/issues.

Component Updates

Linux: 6.18.8

Talos is built with Go 1.25.7.

Contributors

  • Andrey Smirnov
  • Mateusz Urbanek
  • Andrei Kvapil
  • Gregor Gruener
  • Matthew Sanabria

Changes

14 commits

  • 6d6471f69 release(v1.12.3): prepare release
  • 65782007e feat: update Linux kernel with dm-integrity
  • b8f824525 fix: add hostname to endpoints
  • 624f9b52a chore: update deps
  • 3aa153992 fix: implement merger for PercentageSize
  • f17d07cb7 feat: add a helper module to generate standard patches
  • 4a3385dfb fix: undo CRLF on Windows (talosctl edit)
  • a842775a8 feat: add RPi5 to the list of supported SBCs
  • b8cdb6100 fix(talosctl): pass --k8s-endpoint flag to rotate-ca kubernetes rotation
  • 27cbe29cc fix: skip empty documents on config decoding
  • 8f49dd220 fix: open the filesystem as read-only
  • b2a83d12a fix: always set advertised peer URLs
  • 249acdbb5 fix: fallback to /proc/meminfo for memory modules
  • bc56bdff7 fix: add warnings to 802.3ad bond

Changes from siderolabs/pkgs

3 commits

Changes from siderolabs/tools

2 commits

Dependency Changes

  • github.com/siderolabs/pkgs v1.12.0-32-g4f8efaf -> v1.12.0-35-g15d5d78
  • github.com/siderolabs/talos/pkg/machinery v1.12.2 -> v1.12.3
  • github.com/siderolabs/tools v1.12.0-4-g31959f4 -> v1.12.0-6-gdc37e09

Previous release can be found at v1.12.2

Images

ghcr.io/siderolabs/flannel:v0.27.4
registry.k8s.io/coredns/coredns:v1.13.2
registry.k8s.io/etcd:v3.6.7
registry.k8s.io/kube-apiserver:v1.35.0
registry.k8s.io/kube-controller-manager:v1.35.0
registry.k8s.io/kube-scheduler:v1.35.0
registry.k8s.io/kube-proxy:v1.35.0
ghcr.io/siderolabs/kubelet:v1.35.0
registry.k8s.io/pause:3.10
ghcr.io/siderolabs/installer:v1.12.3
ghcr.io/siderolabs/installer-base:v1.12.3
ghcr.io/siderolabs/imager:v1.12.3
ghcr.io/siderolabs/talos:v1.12.3
ghcr.io/siderolabs/talosctl-all:v1.12.3
ghcr.io/siderolabs/overlays:v1.12.3
ghcr.io/siderolabs/extensions:v1.12.3

v1.13.0-alpha.1

03 Feb 16:53
v1.13.0-alpha.1
055add7

Choose a tag to compare

v1.13.0-alpha.1 Pre-release
Pre-release

Talos 1.13.0-alpha.1 (2026-02-03)

Welcome to the v1.13.0-alpha.1 release of Talos!
This is a pre-release of Talos

Please try out the release binaries and report any issues at
https://github.com/siderolabs/talos/issues.

Environment Configuration Document

A new EnvironmentConfig document has been introduced to allow users to specify environment variables for Talos components.
It replaces and deprecates the previous method of setting environment variables via the .machine.env field.

Multiple values for the same environment variable will replace previous values, with the last one taking precedence.

To remove an environment variable, remove it from the EnvironmentConfig document and restart the node.

External Volumes

Talos now supports virtiofs-based external volumes via the new
ExternalVolumeConfig
document.

These virtiofs external volumes are not supported when SELinux is running
in enforcing mode.

Extra Arguments accept slices in addition to strings

Several Talos configuration fields that previously accepted single string values for extra arguments have been updated to accept slices of strings as well.
This includes fields such as .cluster.apiServer.extraArgs.

BREAKING: If you were relying on the resources EtcdConfigs, KubeletConfigs, ControllerManagerConfigs, SchedulerConfigs or APIServerConfigs, the protobuf format has changed from map<string,string> to map<string,message>.

Talos Imager Enhancements

Talos imager now supports running rootless. --privileged and -v /dev:/dev are no longer required.

Talosctl images k8s-bundle subcommand accepts version parameter

The talosctl images k8s-bundle command now accepts an optional version overrides arguments.

Kubernetes server-side apply

Talos now uses inventory backed server-side apply when applying bootsrap manifests (including extraManifests and inlineManifests).
Purging of unneeded manifests is automatically performed.
The switch and inventory backfill is automatic and no action is needed from the user.

KubeSpan Configuration

A new KubeSpanConfig document has been introduced to configure KubeSpan settings.
It replaces and deprecates the previous method of configuring KubeSpan via the .machine.network.kubespan field.

The old configuration field will continue to work for backward compatibility.

Negative Max Volume Size

Negative max size represents the amount of space to be left free on the device, rather than the size the volume should consume.
For example:
* a max size of "-10GiB" means the volume can grow to the available space minus 10GiB.
* a max size of "-25%" means the volume can grow to the available space minus 25%.

Container Image Decompression

Talos now ships with igzip (amd64) and pigz (arm64) to speed up container image decompression.

ProbeConfig

The TCPProbeConfig configuration document allows to configure TCP probes for network reachability checks.
This allows to define a custom connectivity condition.

/proc/PID/mem Access Hardening

A new kernel parameter proc_mem.force_override=never has been introduced by default to enhance system security
by preventing unwanted writes to protected process memory via /proc/PID/mem.
If the kernel parameter is removed, default behavior is restored, allowing access only if the process is traced.

Reproducible Disk Images

Talos disk images are now reproducible. Building the same version of Talos multiple times will yield
identical disk images.

Note: VHD and VMDK (Azure and VMware) images are not currently reproducible due to limitations in the underlying image creation tools.
Users verifying reproducible images should use raw images, verify checksums, and convert them to VHD/VMDK as needed.

ResolverConfig

The nameservers configuration in machine configuration now overwrites any previous layers (defaults, platform, etc.) when specified.
Previously a smart merge was performed to keep IPv4/IPv6 nameservers from lower layers if the machine configuration specified only one type.

Service Account Issuer configuration

In API Server, passing extra args with service-account-issuer will append them after default value.
This allows easy migration, e.g. by changing .cluster.controlPlane.endpoint to new value, and keeping the old value in
.cluster.apiServer.extraArgs["service-account-issuer"].

talosctl images talos-bundle can ignore reaching to the registry

The talosctl images talos-bundle command now accepts optional --overlays and --extensions flags.
If those are set to false, the command will not attempt to reach out to the container registry to fetch the latest versions and digests of the overlays and extensions.

Component Updates

Linux: 6.18.8
containerd: 2.2.1
etcd: 3.6.7
CoreDNS: 1.13.2
Kubernetes: 1.35.0
Flannel CNI plugin: v1.9.0-flannel1
LVM2: 2_03_38
runc: 1.4.0
systemd: 259
cryptsetup: 2.8.3

Talos is built with Go 1.25.6.

VM Hot-Add Support

Talos now includes udev rules to support hot-adding of CPUs in virtualized environments.

Contributors

  • Andrey Smirnov
  • Mateusz Urbanek
  • Noel Georgi
  • Dmitrii Sharshakov
  • Orzelius
  • Laura Brehm
  • Bryan Lee
  • Edward Sammut Alessi
  • Alexis La Goutte
  • Andras BALI
  • Andrei Kvapil
  • Artem Chernyshev
  • Birger Johan Nordølum
  • Camillo Rossi
  • Christopher Puschmann
  • Florian Ströger
  • Gregor Gruener
  • Jaakko Sirén
  • Jean-Francois Roy
  • Joakim Nohlgård
  • Jonas Lammler
  • Justin Garrison
  • Lennard Klein
  • Matthew Sanabria
  • Max Makarov
  • Michal Baumgartner
  • Mickaël Canévet
  • Olav Thoresen
  • Pranav Patil
  • Serge van Ginderachter
  • Skye Soss
  • Spencer Smith
  • Tim Jones
  • dataprolet
  • eseiker
  • pranav767

Changes

177 commits

  • 055add7ae release(v1.13.0-alpha.1): prepare release
  • 900516e68 chore: update image signer
  • 938de566e feat: bump kernel
  • 388cec727 feat(overlays): add new overlays
  • 9f2dd6312 refactor: api tests
  • a90783146 feat: add a helper module to generate standard patches
  • 1fec5b23d fix: implement merger for PercentageSize
  • 8b245b8f2 feat: implement new image service APIs
  • d90c775b8 chore: rename internal talosctl debug air-gapped
  • 2165280d0 refactor: change the way one2many proxying is picked
  • b1b703dbe chore: move sync logging code to go-kubernetes package
  • e48c6d7ab fix: allow to expose a port multiple times in Docker
  • 410d8cb57 fix: undo CRLF on Windows (talosctl edit)
  • 859d3f03c feat: add RPi5 to the list of supported SBCs
  • 0bd48bbc6 fix(talosctl): pass --k8s-endpoint flag to rotate-ca kubernetes rotation
  • b9e27ebe7 feat: update Linux kernel with dm-integrity
  • 6aa9b0677 fix: skip empty documents on config decoding
  • 494492489 fix: always set advertised peer URLs
  • 782cc507d fix: open the filesystem as read-only
  • 28e61a740 fix: set GRUB prefix correctly on arm64
  • a4f1c5239 feat: update GRUB to 2.14
  • 562920701 fix: use node podCIDRs for kubespan advertiseKubernetesNetworks
  • 39460365c feat: implement layering for ProbeSpec
  • b5c760f70 feat: add ProbeConfig for network connectivity probes
  • 4b274f761 feat: support aws cert manager in imager
  • 417209512 fix: fallback to /proc/meminfo for memory modules
  • 7f1147bed fix: add warnings to 802.3ad bond
  • ddd6b186e refactor: generate GRUB images
  • c7aa266ea fix: overwrite resolver config with machine config
  • cf70f05fa fix: oracle platform file format
  • 8c7b8f5b7 feat: add support for negative max size
  • 77bc3d21f fix: marshal of FailOverMac property
  • 38e280c93 fix: make OOM expression a bit less sensitive
  • 3d1301640 fix: wipe the first/last 1MiB in addition to wiping by signatures
  • 1aa6528ad fix: make OOM controller more precise by considering separate cgroup PSI
  • f7072c050 fix: check if the device is not mounted when wiping
  • 743c3b94b fix: use correct containerd import path
  • f2dd08594 feat: report image pull progress in the console
  • 72fe98a06 fix: boot with GRUB
  • d4ed13d93 fix: add talos version to Hetzner Cloud client user agent
  • 150c41c30 feat: update Linux to 6.18.5
  • 01a367891 fix: use append instead of prepend in service-account-issuer
  • d1954278a feat: add extraArgs from service-account-issuer
  • 91b88f7f9 feat: support multiple values for extraArgs
  • 96e604874 fix: add hostname to endpoints
  • 7033275a7 refactor: move BootloaderKind into machinery
  • 71adaf0ea fix: sort mirrors and tls configs when generating the machine config
  • 34f09a300 feat: add VLAN support to OpenStack platform
  • 5127ef7c2 fix: wipe disk by signatures
  • 415bfaedb fix: panic in configpatcher when the whole section is missing
  • e5aca71cd fix: fix healthcheck timeout
  • 634b71e2d docs: move talosctl pcap example to Example Block
  • 818492731 fe...
Read more

v1.12.2

22 Jan 09:27
v1.12.2
54e5b43

Choose a tag to compare

Talos 1.12.2 (2026-01-22)

Welcome to the v1.12.2 release of Talos!

Please try out the release binaries and report any issues at
https://github.com/siderolabs/talos/issues.

talosctl images talos-bundle can ignore reaching to the registry

The talosctl images talos-bundle command now accepts optional --ovelays and --extensions flags.
If those are set to false, the command will not attempt to reach out to the container registry to fetch the latest versions and digests of the overlays and extensions.

Component Updates

Linux: 6.18.5

Talos is built with Go 1.25.6.

Contributors

  • Andrey Smirnov
  • Dmitrii Sharshakov
  • Andras BALI
  • Artem Chernyshev
  • Jonas Lammler
  • Mateusz Urbanek
  • Max Makarov
  • Noel Georgi

Changes

21 commits

  • 54e5b438d release(v1.12.2): prepare release
  • 30da0bc19 fix: oracle platform file format
  • 7ddb37b1f fix: make OOM expression a bit less sensitive
  • e438ec23e fix: marshal of FailOverMac property
  • 717ed7265 fix: check if the device is not mounted when wiping
  • c95c9fd06 fix: wipe the first/last 1MiB in addition to wiping by signatures
  • 52bed358d fix: add talos version to Hetzner Cloud client user agent
  • 0e447a431 fix: make OOM controller more precise by considering separate cgroup PSI
  • 3b974b99e fix: sort mirrors and tls configs when generating the machine config
  • 8b16fe50b feat: add VLAN support to OpenStack platform
  • eb8480c4c fix: panic in configpatcher when the whole section is missing
  • 4d44306dd fix: wipe disk by signatures
  • cca4cd269 feat: add it87 hwmon module
  • d9480eef2 fix: resolve SideroLink Wireguard endpoint on reconnect
  • e16c2d5bb fix: handle correctly incomplete RegistryTLSConfig
  • dedd273df fix: bond config via platform
  • f527cff23 fix: allow HostnameConfig to be used with incomplete machine config
  • 10918136c fix: lock down etcd listen address to IPv4 localhost
  • 9f8d938db fix: print talosctl images to release notes
  • 95433c167 fix: update VIP config example
  • 919394fee feat: update Go to 1.25.6

Changes from siderolabs/pkgs

7 commits

Changes from siderolabs/tools

1 commit

Dependency Changes

  • github.com/klauspost/compress v1.18.2 -> v1.18.3
  • github.com/siderolabs/go-blockdevice/v2 v2.0.22 -> v2.0.23
  • github.com/siderolabs/pkgs v1.12.0-25-g90ff196 -> v1.12.0-32-g4f8efaf
  • github.com/siderolabs/talos/pkg/machinery v1.12.1 -> v1.12.2
  • github.com/siderolabs/tools v1.12.0-3-g5df8bae -> v1.12.0-4-g31959f4
  • go.uber.org/zap v1.27.0 -> v1.27.1
  • golang.org/x/net v0.47.0 -> v0.48.0
  • golang.org/x/oauth2 v0.33.0 -> v0.34.0
  • golang.org/x/sync v0.18.0 -> v0.19.0
  • golang.org/x/sys v0.38.0 -> v0.40.0
  • golang.org/x/term v0.37.0 -> v0.38.0
  • golang.org/x/text v0.31.0 -> v0.33.0

Previous release can be found at v1.12.1

Images

ghcr.io/siderolabs/flannel:v0.27.4
registry.k8s.io/coredns/coredns:v1.13.2
registry.k8s.io/etcd:v3.6.7
registry.k8s.io/kube-apiserver:v1.35.0
registry.k8s.io/kube-controller-manager:v1.35.0
registry.k8s.io/kube-scheduler:v1.35.0
registry.k8s.io/kube-proxy:v1.35.0
ghcr.io/siderolabs/kubelet:v1.35.0
registry.k8s.io/pause:3.10
ghcr.io/siderolabs/installer:v1.12.2
ghcr.io/siderolabs/installer-base:v1.12.2
ghcr.io/siderolabs/imager:v1.12.2
ghcr.io/siderolabs/talos:v1.12.2
ghcr.io/siderolabs/talosctl-all:v1.12.2
ghcr.io/siderolabs/overlays:v1.12.2
ghcr.io/siderolabs/extensions:v1.12.2

v1.12.1

05 Jan 13:14
v1.12.1
7ea2ef7

Choose a tag to compare

Talos 1.12.1 (2026-01-05)

Welcome to the v1.12.1 release of Talos!

Please try out the release binaries and report any issues at
https://github.com/siderolabs/talos/issues.

Component Updates

Linux: 6.18.2

Talos is built with Go 1.25.5.

Contributors

  • Mateusz Urbanek
  • Andrey Smirnov
  • Dmitrii Sharshakov

Changes

7 commits

  • 7ea2ef7cf release(v1.12.1): prepare release
  • 78a785604 chore: run rekres and update dependencies
  • c31067173 fix: disable swap for system services
  • a7e8426cf test: skip the source bundle on exact tag
  • 943984167 fix: probe small images correctly
  • 42df71637 fix: invalid versions check in talos-bundle
  • a3e90e445 fix: make upgrade work with SELinux enforcing=1

Changes from siderolabs/pkgs

2 commits

Changes from siderolabs/tools

1 commit

Dependency Changes

  • github.com/klauspost/compress v1.18.1 -> v1.18.2
  • github.com/siderolabs/go-blockdevice/v2 v2.0.20 -> v2.0.22
  • github.com/siderolabs/pkgs v1.12.0-23-ge0b78b8 -> v1.12.0-25-g90ff196
  • github.com/siderolabs/talos/pkg/machinery v1.12.0 -> v1.12.1
  • github.com/siderolabs/tools v1.12.0-2-g7d57df0 -> v1.12.0-3-g5df8bae

Previous release can be found at v1.12.0

Images

ghcr.io/siderolabs/flannel:v0.27.4
registry.k8s.io/coredns/coredns:v1.13.2
registry.k8s.io/etcd:v3.6.7
registry.k8s.io/kube-apiserver:v1.35.0
registry.k8s.io/kube-controller-manager:v1.35.0
registry.k8s.io/kube-scheduler:v1.35.0
registry.k8s.io/kube-proxy:v1.35.0
ghcr.io/siderolabs/kubelet:v1.35.0
registry.k8s.io/pause:3.10