mirror of
https://github.com/Termix-SSH/Termix.git
synced 2026-10-31 23:55:23 +00:00
feat: Support OrbStack Docker socket path on macOS / Fix "Docker is not installed" on mac... (#1302)
https://github.com/Termix-SSH/Support/issues/1302
This commit is contained in:
1 parent
4052d63594
commit
f8a8139031
2 files changed
+24
-2
No files matched your search
@@ -31,11 +31,19 @@ export function getContainerRuntimeConfig(raw: unknown): {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Non-interactive SSH shells don't source ~/.zprofile or ~/.bash_profile,
|
||||||
|
* so PATH additions from installers like Homebrew or OrbStack are missing.
|
||||||
|
* Extend PATH with their common install locations before invoking the CLI.
|
||||||
|
*/
|
||||||
|
const EXTRA_PATH_DIRS =
|
||||||
|
'/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:"$HOME/.orbstack/bin"';
|
||||||
|
|
||||||
export function containerCommand(
|
export function containerCommand(
|
||||||
runtime: ContainerRuntime | undefined,
|
runtime: ContainerRuntime | undefined,
|
||||||
args: string,
|
args: string,
|
||||||
): string {
|
): string {
|
||||||
return `${normalizeContainerRuntime(runtime)} ${args}`;
|
return `PATH="${EXTRA_PATH_DIRS}:$PATH" ${normalizeContainerRuntime(runtime)} ${args}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function getRuntimeLabel(runtime: ContainerRuntime): string {
|
export function getRuntimeLabel(runtime: ContainerRuntime): string {
|
||||||
|
|||||||
@@ -12,11 +12,25 @@ export interface PlatformInfo {
|
|||||||
osPrettyName: string | null;
|
osPrettyName: string | null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Non-interactive SSH shells don't source ~/.zprofile or ~/.bash_profile,
|
||||||
|
* so PATH additions from installers like Homebrew or OrbStack are missing.
|
||||||
|
* Extend PATH with their common install locations before probing.
|
||||||
|
*/
|
||||||
|
export const EXTRA_PATH_DIRS =
|
||||||
|
'/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:"$HOME/.orbstack/bin"';
|
||||||
|
|
||||||
|
const DOCKER_PROBE =
|
||||||
|
`command -v docker >/dev/null 2>&1` +
|
||||||
|
` || [ -S /var/run/docker.sock ]` +
|
||||||
|
` || [ -S "$HOME/.orbstack/run/docker.sock" ]`;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Single probe that reports which tooling is available. Each line is
|
* Single probe that reports which tooling is available. Each line is
|
||||||
* "key=value" so the parser is trivial and order-independent.
|
* "key=value" so the parser is trivial and order-independent.
|
||||||
*/
|
*/
|
||||||
export const PLATFORM_PROBE_COMMAND = [
|
export const PLATFORM_PROBE_COMMAND = [
|
||||||
|
`PATH="${EXTRA_PATH_DIRS}:$PATH"`,
|
||||||
"echo systemd=$(command -v systemctl >/dev/null 2>&1 && echo 1 || echo 0)",
|
"echo systemd=$(command -v systemctl >/dev/null 2>&1 && echo 1 || echo 0)",
|
||||||
"echo apt=$(command -v apt-get >/dev/null 2>&1 && echo 1 || echo 0)",
|
"echo apt=$(command -v apt-get >/dev/null 2>&1 && echo 1 || echo 0)",
|
||||||
"echo dnf=$(command -v dnf >/dev/null 2>&1 && echo 1 || echo 0)",
|
"echo dnf=$(command -v dnf >/dev/null 2>&1 && echo 1 || echo 0)",
|
||||||
@@ -24,7 +38,7 @@ export const PLATFORM_PROBE_COMMAND = [
|
|||||||
"echo pacman=$(command -v pacman >/dev/null 2>&1 && echo 1 || echo 0)",
|
"echo pacman=$(command -v pacman >/dev/null 2>&1 && echo 1 || echo 0)",
|
||||||
"echo certbot=$(command -v certbot >/dev/null 2>&1 && echo 1 || echo 0)",
|
"echo certbot=$(command -v certbot >/dev/null 2>&1 && echo 1 || echo 0)",
|
||||||
'echo acmesh=$( { command -v acme.sh >/dev/null 2>&1 || [ -x "$HOME/.acme.sh/acme.sh" ]; } && echo 1 || echo 0)',
|
'echo acmesh=$( { command -v acme.sh >/dev/null 2>&1 || [ -x "$HOME/.acme.sh/acme.sh" ]; } && echo 1 || echo 0)',
|
||||||
"echo docker=$(command -v docker >/dev/null 2>&1 && echo 1 || echo 0)",
|
`echo docker=$(${DOCKER_PROBE} && echo 1 || echo 0)`,
|
||||||
'echo os=$(. /etc/os-release 2>/dev/null && echo "$PRETTY_NAME")',
|
'echo os=$(. /etc/os-release 2>/dev/null && echo "$PRETTY_NAME")',
|
||||||
].join("; ");
|
].join("; ");
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user