From cc57c8207fe47729d029ef508d165fafe6ed037b Mon Sep 17 00:00:00 2001 From: Itxaka Date: Wed, 12 Mar 2025 21:24:55 +0100 Subject: [PATCH] Fix refresh Signed-off-by: Itxaka --- pkg/lib/lock.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pkg/lib/lock.go b/pkg/lib/lock.go index e20f3b9..c91d082 100644 --- a/pkg/lib/lock.go +++ b/pkg/lib/lock.go @@ -208,10 +208,14 @@ func formatLuks(device, name, mapper, label, pass string, logger types.KairosLog return fmt.Errorf("mkfs err: %w, out: %s", err, out) } + // Refresh needs the password as its doing actions on the device directly l.Debug().Msg("discards") - out, err = SH(fmt.Sprintf("cryptsetup refresh --persistent --allow-discards %s", mapper)) + cmd := exec.Command("cryptsetup", "refresh", "--persistent", "--allow-discards", mapper) + cmd.Stdin = strings.NewReader(pass) + output, err := cmd.CombinedOutput() + if err != nil { - return fmt.Errorf("refresh err: %w, out: %s", err, out) + return fmt.Errorf("refresh err: %w, out: %s", err, string(output)) } l.Debug().Msg("close")