From 2abe29627811d2efcd9ab2865aaccd10780ee0ad Mon Sep 17 00:00:00 2001 From: aomizu Date: Fri, 20 Jun 2025 19:08:31 +0900 Subject: [PATCH] added guidance to a common error with crossover patching --- FyneApp.toml | 2 +- pkg/patching/patching.go | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/FyneApp.toml b/FyneApp.toml index 390e0cd..4fa58e0 100644 --- a/FyneApp.toml +++ b/FyneApp.toml @@ -3,4 +3,4 @@ Name = "TurtleSilicon" ID = "com.tairasu.turtlesilicon" Version = "1.2.3" - Build = 72 + Build = 73 diff --git a/pkg/patching/patching.go b/pkg/patching/patching.go index 2899db4..31ec81c 100644 --- a/pkg/patching/patching.go +++ b/pkg/patching/patching.go @@ -243,7 +243,11 @@ func PatchCrossOver(myWindow fyne.Window, updateAllStatuses func()) { debug.Printf("Copying %s to %s", wineloaderOrig, wineloaderCopy) if err := utils.CopyFile(wineloaderOrig, wineloaderCopy); err != nil { - dialog.ShowError(fmt.Errorf("failed to copy wineloader: %w", err), myWindow) + errMsg := fmt.Sprintf("failed to copy wineloader: %v", err) + if strings.Contains(err.Error(), "operation not permitted") { + errMsg += "\n\nSolution: Open System Settings, go to Privacy & Security > App Management, and enable TurtleSilicon." + } + dialog.ShowError(fmt.Errorf(errMsg), myWindow) paths.PatchesAppliedCrossOver = false updateAllStatuses() return