buildx/util/desktop/paths_linux.go
CrazyMax 812b42b329
history: desktop build backend not yet supported on WSL
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-03-10 17:12:21 +01:00

30 lines
807 B
Go

package desktop
import (
"os"
"path/filepath"
"github.com/pkg/errors"
)
const (
socketName = "docker-desktop-build.sock"
socketPath = ".docker/desktop"
wslSocketPath = "/mnt/wsl/docker-desktop/shared-sockets/host-services"
)
func BuildServerAddr() (string, error) {
if os.Getenv("WSL_DISTRO_NAME") != "" {
socket := filepath.Join(wslSocketPath, socketName)
if _, err := os.Stat(socket); os.IsNotExist(err) {
return "", errors.New("Docker Desktop Build backend is not yet supported on WSL. Please run this command on Windows host instead.") //nolint:revive
}
return "unix://" + socket, nil
}
dir, err := os.UserHomeDir()
if err != nil {
return "", errors.Wrap(err, "failed to get user home directory")
}
return "unix://" + filepath.Join(dir, socketPath, socketName), nil
}