This change is in preparation to support running synchronizations from
Windows systems. However, Windows remotes won't be supported in the
foreseeable future.
"fmt"
"io/fs"
"os"
+ slashpath "path"
"path/filepath"
+ "runtime"
"ruderich.org/simon/safcm"
)
return fmt.Errorf("%q: file type not supported", path)
}
- // Convert to absolute path as used on the target host
+ // Convert to absolute and slash-separated path as used on the
+ // target host
x, err := filepath.Rel(basePath, path)
if err != nil {
return err
}
- x = filepath.Join("/", x)
+ x = slashpath.Join("/", filepath.ToSlash(x))
files[x] = &safcm.File{
Path: x,
"fmt"
"math"
"os"
- "path/filepath"
"sort"
"strings"
return paths[i] < paths[j]
})
- const sep = string(filepath.Separator)
+ // Slash separated paths are used for the configuration
+ const sep = "/"
// Remove invalid paths which can result from group_priority
// overriding paths from another group (e.g. "/foo" as file from one