//go:build linux || darwin package fileops import ( "io/fs" "os" "syscall" ) func preserveFileMetadata(file *os.File, _ string, info fs.FileInfo) error { stat, ok := info.Sys().(*syscall.Stat_t) if !ok { return nil } return file.Chown(int(stat.Uid), int(stat.Gid)) }