diff --git a/src/main/utils/shell-env/compute-shell-environment.injectable.ts b/src/features/shell-sync/main/compute-shell-environment.injectable.ts similarity index 92% rename from src/main/utils/shell-env/compute-shell-environment.injectable.ts rename to src/features/shell-sync/main/compute-shell-environment.injectable.ts index 63eaede181..88fcd0de84 100644 --- a/src/main/utils/shell-env/compute-shell-environment.injectable.ts +++ b/src/features/shell-sync/main/compute-shell-environment.injectable.ts @@ -26,10 +26,8 @@ const computeShellEnvironmentInjectable = getInjectable({ return async (shell) => { const controller = new AbortController(); - const shellEnv = computeUnixShellEnvironment(shell, { signal: controller.signal }); const timeoutHandle = setTimeout(() => controller.abort(), 30_000); - - const result = await shellEnv; + const result = await computeUnixShellEnvironment(shell, { signal: controller.signal }); clearTimeout(timeoutHandle); diff --git a/src/main/utils/shell-env/compute-unix-shell-environment.global-override-for-injectable.ts b/src/features/shell-sync/main/compute-unix-shell-environment.global-override-for-injectable.ts similarity index 100% rename from src/main/utils/shell-env/compute-unix-shell-environment.global-override-for-injectable.ts rename to src/features/shell-sync/main/compute-unix-shell-environment.global-override-for-injectable.ts diff --git a/src/main/utils/shell-env/compute-unix-shell-environment.injectable.ts b/src/features/shell-sync/main/compute-unix-shell-environment.injectable.ts similarity index 97% rename from src/main/utils/shell-env/compute-unix-shell-environment.injectable.ts rename to src/features/shell-sync/main/compute-unix-shell-environment.injectable.ts index 04abdaf544..bd8935bf63 100644 --- a/src/main/utils/shell-env/compute-unix-shell-environment.injectable.ts +++ b/src/features/shell-sync/main/compute-unix-shell-environment.injectable.ts @@ -5,8 +5,8 @@ import type { EnvironmentVariables } from "./compute-shell-environment.injectable"; import { getInjectable } from "@ogre-tools/injectable"; import getBasenameOfPathInjectable from "../../../common/path/get-basename.injectable"; -import spawnInjectable from "../../child-process/spawn.injectable"; -import randomUUIDInjectable from "../../crypto/random-uuid.injectable"; +import spawnInjectable from "../../../main/child-process/spawn.injectable"; +import randomUUIDInjectable from "../../../main/crypto/random-uuid.injectable"; import loggerInjectable from "../../../common/logger.injectable"; import processExecPathInjectable from "./execPath.injectable"; import processEnvInjectable from "./env.injectable"; diff --git a/src/main/utils/shell-env/compute-unix-shell-environment.test.ts b/src/features/shell-sync/main/compute-unix-shell-environment.test.ts similarity index 98% rename from src/main/utils/shell-env/compute-unix-shell-environment.test.ts rename to src/features/shell-sync/main/compute-unix-shell-environment.test.ts index 59a899da37..55766fbb8a 100644 --- a/src/main/utils/shell-env/compute-unix-shell-environment.test.ts +++ b/src/features/shell-sync/main/compute-unix-shell-environment.test.ts @@ -7,10 +7,10 @@ import type { DiContainer } from "@ogre-tools/injectable"; import type { ChildProcessWithoutNullStreams } from "child_process"; import EventEmitter from "events"; import { flushPromises } from "../../../common/test-utils/flush-promises"; -import type { Spawn } from "../../child-process/spawn.injectable"; -import spawnInjectable from "../../child-process/spawn.injectable"; -import randomUUIDInjectable from "../../crypto/random-uuid.injectable"; -import { getDiForUnitTesting } from "../../getDiForUnitTesting"; +import type { Spawn } from "../../../main/child-process/spawn.injectable"; +import spawnInjectable from "../../../main/child-process/spawn.injectable"; +import randomUUIDInjectable from "../../../main/crypto/random-uuid.injectable"; +import { getDiForUnitTesting } from "../../../main/getDiForUnitTesting"; import type { ComputeUnixShellEnvironment } from "./compute-unix-shell-environment.injectable"; import computeUnixShellEnvironmentInjectable from "./compute-unix-shell-environment.injectable"; import processEnvInjectable from "./env.injectable"; diff --git a/src/main/utils/shell-env/env.injectable.ts b/src/features/shell-sync/main/env.injectable.ts similarity index 100% rename from src/main/utils/shell-env/env.injectable.ts rename to src/features/shell-sync/main/env.injectable.ts diff --git a/src/main/utils/shell-env/execPath.injectable.ts b/src/features/shell-sync/main/execPath.injectable.ts similarity index 100% rename from src/main/utils/shell-env/execPath.injectable.ts rename to src/features/shell-sync/main/execPath.injectable.ts diff --git a/src/main/start-main-application/runnables/setup-shell.injectable.ts b/src/features/shell-sync/main/setup-shell.injectable.ts similarity index 87% rename from src/main/start-main-application/runnables/setup-shell.injectable.ts rename to src/features/shell-sync/main/setup-shell.injectable.ts index 8d0f6bd68a..0c91f049f4 100644 --- a/src/main/start-main-application/runnables/setup-shell.injectable.ts +++ b/src/features/shell-sync/main/setup-shell.injectable.ts @@ -4,11 +4,11 @@ */ import { getInjectable } from "@ogre-tools/injectable"; import loggerInjectable from "../../../common/logger.injectable"; -import { onLoadOfApplicationInjectionToken } from "../runnable-tokens/on-load-of-application-injection-token"; +import { onLoadOfApplicationInjectionToken } from "../../../main/start-main-application/runnable-tokens/on-load-of-application-injection-token"; import { unionPATHs } from "../../../common/utils/union-env-path"; import isSnapPackageInjectable from "../../../common/vars/is-snap-package.injectable"; -import electronAppInjectable from "../../electron-app/electron-app.injectable"; -import computeShellEnvironmentInjectable from "../../utils/shell-env/compute-shell-environment.injectable"; +import electronAppInjectable from "../../../main/electron-app/electron-app.injectable"; +import computeShellEnvironmentInjectable from "./compute-shell-environment.injectable"; import userShellSettingInjectable from "../../../common/user-store/shell-setting.injectable"; const setupShellInjectable = getInjectable({ diff --git a/src/main/getDiForUnitTesting.ts b/src/main/getDiForUnitTesting.ts index 2be5018b84..d8f87d8692 100644 --- a/src/main/getDiForUnitTesting.ts +++ b/src/main/getDiForUnitTesting.ts @@ -25,7 +25,7 @@ import lensResourcesDirInjectable from "../common/vars/lens-resources-dir.inject import environmentVariablesInjectable from "../common/utils/environment-variables.injectable"; import setupIpcMainHandlersInjectable from "./electron-app/runnables/setup-ipc-main-handlers/setup-ipc-main-handlers.injectable"; import setupLensProxyInjectable from "./start-main-application/runnables/setup-lens-proxy.injectable"; -import setupShellInjectable from "./start-main-application/runnables/setup-shell.injectable"; +import setupShellInjectable from "../features/shell-sync/main/setup-shell.injectable"; import setupSyncingOfWeblinksInjectable from "./start-main-application/runnables/setup-syncing-of-weblinks.injectable"; import stopServicesAndExitAppInjectable from "./stop-services-and-exit-app.injectable"; import isDevelopmentInjectable from "../common/vars/is-development.injectable"; diff --git a/src/main/shell-session/local-shell-session/open.injectable.ts b/src/main/shell-session/local-shell-session/open.injectable.ts index 621e7470f7..113f4824c5 100644 --- a/src/main/shell-session/local-shell-session/open.injectable.ts +++ b/src/main/shell-session/local-shell-session/open.injectable.ts @@ -17,7 +17,7 @@ import type WebSocket from "ws"; import getDirnameOfPathInjectable from "../../../common/path/get-dirname.injectable"; import joinPathsInjectable from "../../../common/path/join-paths.injectable"; import getBasenameOfPathInjectable from "../../../common/path/get-basename.injectable"; -import computeShellEnvironmentInjectable from "../../utils/shell-env/compute-shell-environment.injectable"; +import computeShellEnvironmentInjectable from "../../../features/shell-sync/main/compute-shell-environment.injectable"; import spawnPtyInjectable from "../spawn-pty.injectable"; import userShellSettingInjectable from "../../../common/user-store/shell-setting.injectable"; import appNameInjectable from "../../../common/vars/app-name.injectable"; diff --git a/src/main/shell-session/node-shell-session/open.injectable.ts b/src/main/shell-session/node-shell-session/open.injectable.ts index 8ef9b62825..797333a2ce 100644 --- a/src/main/shell-session/node-shell-session/open.injectable.ts +++ b/src/main/shell-session/node-shell-session/open.injectable.ts @@ -12,7 +12,7 @@ import isMacInjectable from "../../../common/vars/is-mac.injectable"; import isWindowsInjectable from "../../../common/vars/is-windows.injectable"; import loggerInjectable from "../../../common/logger.injectable"; import createKubeJsonApiForClusterInjectable from "../../../common/k8s-api/create-kube-json-api-for-cluster.injectable"; -import computeShellEnvironmentInjectable from "../../utils/shell-env/compute-shell-environment.injectable"; +import computeShellEnvironmentInjectable from "../../../features/shell-sync/main/compute-shell-environment.injectable"; import spawnPtyInjectable from "../spawn-pty.injectable"; import userShellSettingInjectable from "../../../common/user-store/shell-setting.injectable"; import appNameInjectable from "../../../common/vars/app-name.injectable"; diff --git a/src/main/shell-session/shell-session.ts b/src/main/shell-session/shell-session.ts index 56c7ba26db..d47cd676d5 100644 --- a/src/main/shell-session/shell-session.ts +++ b/src/main/shell-session/shell-session.ts @@ -13,7 +13,7 @@ import type * as pty from "node-pty"; import { getOrInsertWith } from "../../common/utils"; import { type TerminalMessage, TerminalChannels } from "../../common/terminal/channels"; import type { Logger } from "../../common/logger"; -import type { ComputeShellEnvironment } from "../utils/shell-env/compute-shell-environment.injectable"; +import type { ComputeShellEnvironment } from "../../features/shell-sync/main/compute-shell-environment.injectable"; import type { SpawnPty } from "./spawn-pty.injectable"; import type { InitializableState } from "../../common/initializable-state/create"; import type { EmitAppEvent } from "../../common/app-event-bus/emit-event.injectable";