{{ define "wizard-final" }} {{ template "hidden-inputs" . }} {{ template "header" (t .Localizer "final.title") }}
{{ t .Localizer "final.image" }}{{ template "copyable-text" .Schematic}}
{{ .Marshaled }}

{{ t .Localizer "final.first_boot" }}

{{ if eq .Target "metal" }}

{{ t .Localizer "final.first_boot.metal" }}

{{ else if eq .Target "cloud" }}

{{ t .Localizer "final.first_boot.cloud" }} {{ .PlatformMeta.Label }}:

{{ else if eq .Target "sbc" }}

{{ t .Localizer "final.first_boot.sbc" }} {{ .BoardMeta.Label }}:

{{ end }}
{{ if or (eq .Target "metal") (eq .Target "cloud") }} {{ range .PlatformMeta.BootMethods }} {{ if eq . "disk-image" }} {{ template "disk-image" $ }} {{ else if eq . "iso" }} {{ template "iso" $ }} {{ else if eq . "pxe" }} {{ template "pxe-boot" $ }} {{ end }} {{ end }} {{ else if eq .Target "sbc" }} {{ template "board-image" . }} {{ end }}
{{ if or (eq .Target "metal") (and (eq .Target "cloud") .PlatformMeta.NotOnlyDiskImage) }}

{{ t .Localizer "final.initial_installation" }}

{{ t .Localizer "final.initial_installation.description" }}
{{ template "installer-image" . }}

{{ end }}

{{ t .Localizer "final.upgrading" }}

{{ t .Localizer "final.upgrading.to" }}{{ t .Localizer "final.upgrading.name" }}{{ t .Localizer "final.upgrading.description" }}
{{ template "installer-image" . }}

{{ if not (version_less .Version "1.12.0-alpha.2") }}

{{ t .Localizer "final.local_test_cluster" }}

{{ t .Localizer "final.local_test_cluster.prompt" }}
{{ template "talosctl-cluster-create" . }}

{{ end }}

{{ t .Localizer "final.booter" }}

{{ t .Localizer "final.booter.command_pre" }}{{ t .Localizer "final.booter.name" }}{{ t .Localizer "final.booter.command_post" }}
{{ template "booter-command" . }}

{{ t .Localizer "final.documentation" }}

{{ if eq .Target "metal" }}

{{ t .Localizer "final.extra" }}

{{ if eq .SecureBoot "true" }} {{ template "secureboot-extra-assets" . }} {{ else }} {{ template "extra-assets" . }} {{ end }}
{{ end }} {{ if .SBOMAvailable }}

{{ t .Localizer "final.extra.spdx" }}

{{ if .Enterprise }}
{{ .SPDXBaseURL }}
{{ else }}
{{ t .Localizer "final.extra.spdx_enterprise_feature" }}
{{ end }} {{ end }}
{{ template "back-button" (dict "Params" "target,version,platform,board,arch,secureboot,extensions,selected-bootloader,selected-cmdline,selected-overlay-options" "Localizer" .Localizer) }}
{{ end }} {{ define "iso" }} {{ if eq .SecureBoot "true" }}
SecureBoot ISO
{{ .PlatformMeta.SecureBootISOPath .Arch | $.ImageBaseURL.JoinPath }} {{ template "checksum-link" (dict "Path" (.PlatformMeta.SecureBootISOPath .Arch) "ChecksumBaseURL" $.ChecksumBaseURL "Enterprise" $.Enterprise "Localizer" $.Localizer) }} ({{ t .Localizer "final.disk_image.secure_boot_docs" }})
{{ else}}
ISO
{{ .PlatformMeta.ISOPath .Arch | $.ImageBaseURL.JoinPath }} {{ template "checksum-link" (dict "Path" (.PlatformMeta.ISOPath .Arch) "ChecksumBaseURL" $.ChecksumBaseURL "Enterprise" $.Enterprise "Localizer" $.Localizer) }} {{ if eq .Target "metal" }} ({{ t .Localizer "final.disk_image.iso_docs" }}) {{ end }}
{{ end }} {{ end }} {{ define "disk-image" }} {{ if eq .SecureBoot "true" }}
{{ t .Localizer "final.disk_image.secure_boot" }}
{{ .PlatformMeta.SecureBootDiskImageDefaultPath .Arch | $.ImageBaseURL.JoinPath }} {{ template "checksum-link" (dict "Path" (.PlatformMeta.SecureBootDiskImageDefaultPath .Arch) "ChecksumBaseURL" $.ChecksumBaseURL "Enterprise" $.Enterprise "Localizer" $.Localizer) }} {{ if eq .Target "metal" }} ({{ t .Localizer "final.disk_image.secure_boot_docs" }}) {{ end }}
{{ else }} {{ if eq .Target "metal" }}
{{ t .Localizer "final.disk_image.all" }} (raw)
{{ .PlatformMeta.DiskImageDefaultPath .Arch | $.ImageBaseURL.JoinPath }} {{ template "checksum-link" (dict "Path" (.PlatformMeta.DiskImageDefaultPath .Arch) "ChecksumBaseURL" $.ChecksumBaseURL "Enterprise" $.Enterprise "Localizer" $.Localizer) }}
{{ t .Localizer "final.disk_image.all" }} (qcow2)
{{ .PlatformMeta.DiskImagePath .Arch "qcow2" | $.ImageBaseURL.JoinPath }} {{ template "checksum-link" (dict "Path" (.PlatformMeta.DiskImagePath .Arch "qcow2") "ChecksumBaseURL" $.ChecksumBaseURL "Enterprise" $.Enterprise "Localizer" $.Localizer) }}
{{ else }}
{{ t .Localizer "final.disk_image.all" }}
{{ .PlatformMeta.DiskImageDefaultPath .Arch | $.ImageBaseURL.JoinPath }} {{ template "checksum-link" (dict "Path" (.PlatformMeta.DiskImageDefaultPath .Arch) "ChecksumBaseURL" $.ChecksumBaseURL "Enterprise" $.Enterprise "Localizer" $.Localizer) }}
{{ end }} {{ end}} {{ end }} {{ define "pxe-boot" }} {{ if eq .SecureBoot "true" }}
{{ t .Localizer "final.pxe.secure_boot" }} (iPXE script) {{ if eq .Target "metal" }} ({{ t .Localizer "final.pxe.docs" }}) {{ end }}
{{ .PlatformMeta.SecureBootPXEScriptPath .Arch | $.PXEBaseURL.JoinPath }}
{{ else }}
{{ t .Localizer "final.pxe.boot" }} (iPXE script) {{ if eq .Target "metal" }} ({{ t .Localizer "final.pxe.docs" }}) {{ end }}
{{ template "copyable-text" (.PlatformMeta.PXEScriptPath .Arch | $.PXEBaseURL.JoinPath) }}
{{ end }} {{ end }} {{ define "board-image" }}
{{ t .Localizer "final.board_image" }}
{{ .BoardMeta.DiskImagePath .Version | $.ImageBaseURL.JoinPath }} {{ template "checksum-link" (dict "Path" (.BoardMeta.DiskImagePath .Version) "ChecksumBaseURL" $.ChecksumBaseURL "Enterprise" $.Enterprise "Localizer" $.Localizer) }}
{{ end }} {{ define "installer-image" }} {{ if eq .SecureBoot "true"}} {{ template "copyable-text" .SecureBootInstallerImage }} {{ else }} {{ template "copyable-text" .InstallerImage }} {{ end }} {{ end }} {{ define "talosctl-cluster-create" }} {{ template "copyable-text" (printf "talosctl cluster create qemu --schematic-id=%s --talos-version=v%s" .Schematic .Version) }} {{ end }} {{ define "booter-command" }} {{ template "copyable-text" (printf "docker run --rm --network host ghcr.io/siderolabs/booter:v0.3.0 --talos-version=v%s --schematic-id=%s" .Version .Schematic) }} {{ end }} {{ define "extra-assets" }}
{{ t .Localizer "final.extra.kernel_image" }}
{{ .PlatformMeta.KernelPath .Arch | $.ImageBaseURL.JoinPath }} {{ template "checksum-link" (dict "Path" (.PlatformMeta.KernelPath .Arch) "ChecksumBaseURL" $.ChecksumBaseURL "Enterprise" $.Enterprise "Localizer" $.Localizer) }}
{{ t .Localizer "final.extra.cmdline" }}
{{ .PlatformMeta.CmdlinePath .Arch | $.ImageBaseURL.JoinPath }} {{ template "checksum-link" (dict "Path" (.PlatformMeta.CmdlinePath .Arch) "ChecksumBaseURL" $.ChecksumBaseURL "Enterprise" $.Enterprise "Localizer" $.Localizer) }}
{{ t .Localizer "final.extra.initramfs" }}
{{ .PlatformMeta.InitramfsPath .Arch | $.ImageBaseURL.JoinPath }} {{ template "checksum-link" (dict "Path" (.PlatformMeta.InitramfsPath .Arch) "ChecksumBaseURL" $.ChecksumBaseURL "Enterprise" $.Enterprise "Localizer" $.Localizer) }}
UKI
{{ .PlatformMeta.UKIPath .Arch | $.ImageBaseURL.JoinPath }} {{ template "checksum-link" (dict "Path" (.PlatformMeta.UKIPath .Arch) "ChecksumBaseURL" $.ChecksumBaseURL "Enterprise" $.Enterprise "Localizer" $.Localizer) }}
{{ if .TalosctlAvailable }}
{{ t .Localizer "final.extra.talosctl" }}
{{ range $index, $path := .TalosctlMeta.TalosctlPaths .TalosctlTuples }}
{{ $path | $.TalosctlBaseURL.JoinPath }}
{{ end }} {{ end }} {{ end }} {{ define "secureboot-extra-assets" }}
SecureBoot UKI
{{ .PlatformMeta.SecureBootUKIPath .Arch | $.ImageBaseURL.JoinPath }} {{ template "checksum-link" (dict "Path" (.PlatformMeta.SecureBootUKIPath .Arch) "ChecksumBaseURL" $.ChecksumBaseURL "Enterprise" $.Enterprise "Localizer" $.Localizer) }}
{{ end }} {{ define "checksum-link" }}{{ if .Enterprise }}(sha256)(sha512){{ else }}(checksums){{ end }}{{ end }} {{ template "wizard-final" . }}