From 91aed5fad2d3b8432f371c75b9db122e67a9ab4e Mon Sep 17 00:00:00 2001 From: crschnick Date: Wed, 19 Nov 2025 22:29:37 +0000 Subject: [PATCH] Remove macos gnu tools check --- .../core/check/AppHomebrewCoreutilsCheck.java | 46 ------------------- .../xpipe/app/core/check/AppShellCheck.java | 5 -- .../io/xpipe/app/core/mode/AppBaseMode.java | 1 - .../io/xpipe/app/process/ShellDialect.java | 2 +- 4 files changed, 1 insertion(+), 53 deletions(-) delete mode 100644 app/src/main/java/io/xpipe/app/core/check/AppHomebrewCoreutilsCheck.java diff --git a/app/src/main/java/io/xpipe/app/core/check/AppHomebrewCoreutilsCheck.java b/app/src/main/java/io/xpipe/app/core/check/AppHomebrewCoreutilsCheck.java deleted file mode 100644 index 407ae5730..000000000 --- a/app/src/main/java/io/xpipe/app/core/check/AppHomebrewCoreutilsCheck.java +++ /dev/null @@ -1,46 +0,0 @@ -package io.xpipe.app.core.check; - -import io.xpipe.app.core.AppNames; -import io.xpipe.app.issue.ErrorEventFactory; -import io.xpipe.app.process.LocalShell; -import io.xpipe.app.process.ShellDialects; -import io.xpipe.app.util.LocalExec; -import io.xpipe.core.FilePath; -import io.xpipe.core.OsType; - -import java.util.Optional; - -public class AppHomebrewCoreutilsCheck { - - public static Optional checkCoreutils() { - var r = LocalExec.readStdoutIfPossible("which", "stat"); - if (r.isEmpty()) { - return Optional.empty(); - } - - var first = r.get().lines().findFirst(); - return first.filter(s -> s.contains("coreutils")) - .map(s -> FilePath.of(s).getParent().toString()); - } - - public static void check() { - if (OsType.ofLocal() != OsType.MACOS) { - return; - } - - if (LocalShell.getDialect() != ShellDialects.ZSH) { - return; - } - - var loc = checkCoreutils(); - if (loc.isPresent()) { - ErrorEventFactory.fromMessage("You have the homebrew coreutils package installed and added to your PATH at " - + loc.get() + "." - + " The coreutils commands overwrite and are incompatible to the native macOS commands, which " - + AppNames.ofCurrent().getName() + " expects." - + " Please remove the coreutils commands from your PATH prior to launching XPipe.") - .expected() - .handle(); - } - } -} diff --git a/app/src/main/java/io/xpipe/app/core/check/AppShellCheck.java b/app/src/main/java/io/xpipe/app/core/check/AppShellCheck.java index 2ecf5fb47..5ce93ec03 100644 --- a/app/src/main/java/io/xpipe/app/core/check/AppShellCheck.java +++ b/app/src/main/java/io/xpipe/app/core/check/AppShellCheck.java @@ -29,11 +29,6 @@ public class AppShellCheck { @Override protected boolean fallBackInstantly() { - var coreutils = AppHomebrewCoreutilsCheck.checkCoreutils(); - if (coreutils.isPresent()) { - return true; - } - return false; } }; diff --git a/app/src/main/java/io/xpipe/app/core/mode/AppBaseMode.java b/app/src/main/java/io/xpipe/app/core/mode/AppBaseMode.java index 4a498832e..24878152a 100644 --- a/app/src/main/java/io/xpipe/app/core/mode/AppBaseMode.java +++ b/app/src/main/java/io/xpipe/app/core/mode/AppBaseMode.java @@ -67,7 +67,6 @@ public class AppBaseMode extends AppOperationMode { AppPathCorruptCheck.check(); AppWindowsTempCheck.check(); AppDirectoryPermissionsCheck.checkDirectory(AppSystemInfo.ofCurrent().getTemp()); - AppHomebrewCoreutilsCheck.check(); WindowsRegistry.init(); AppAvCheck.check(); AppJavaOptionsCheck.check(); diff --git a/app/src/main/java/io/xpipe/app/process/ShellDialect.java b/app/src/main/java/io/xpipe/app/process/ShellDialect.java index 5416665f2..bc6715d8b 100644 --- a/app/src/main/java/io/xpipe/app/process/ShellDialect.java +++ b/app/src/main/java/io/xpipe/app/process/ShellDialect.java @@ -38,7 +38,7 @@ public interface ShellDialect { String queryVersion(ShellControl shellControl) throws Exception; - CommandControl queryFileSize(ShellControl shellControl, String file); + CommandControl queryFileSize(ShellControl shellControl, String file) throws Exception; long queryDirectorySize(ShellControl shellControl, String file) throws Exception;