talos/pkg/makefs/vfat.go
Noel Georgi 3f68485e44
feat: add uki iso generation
This adds code to generate a UKI ISO (UEFI only).

Fixes: #7261

Signed-off-by: Noel Georgi <git@frezbo.dev>
2023-06-02 22:44:27 +05:30

31 lines
680 B
Go

// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
package makefs
import (
"github.com/siderolabs/go-cmd/pkg/cmd"
)
// VFAT creates a VFAT filesystem on the specified partition.
func VFAT(partname string, setters ...Option) error {
opts := NewDefaultOptions(setters...)
args := []string{}
if opts.Label != "" {
args = append(args, "-F", "32", "-n", opts.Label)
}
if opts.Reproducible {
args = append(args, "--invariant")
}
args = append(args, partname)
_, err := cmd.Run("mkfs.vfat", args...)
return err
}