windows-development-sandbox 1.25.0 → 1.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/config.example.json +17 -5
- package/dist/app/features/accounts/services.def.d.ts +1 -1
- package/dist/app/features/accounts/services.def.js +1 -1
- package/dist/app/features/data/data.def.d.ts +4 -4
- package/dist/app/features/data/data.run.d.ts +1 -1
- package/dist/app/features/defs.d.ts +356 -6
- package/dist/app/features/defs.js +15 -0
- package/dist/app/features/projects/projects.def.d.ts +1 -1
- package/dist/app/features/projects/projects.run.d.ts +1 -1
- package/dist/app/features/settings/categories.def.js +1 -0
- package/dist/app/features/unity/index.d.ts +2 -0
- package/dist/app/features/unity/index.js +3 -0
- package/dist/app/features/unity/unity.def.d.ts +294 -0
- package/dist/app/features/unity/unity.def.js +471 -0
- package/dist/app/features/unity/unity.run.d.ts +142 -0
- package/dist/app/features/unity/unity.run.js +363 -0
- package/dist/app/features/unreal/index.d.ts +2 -0
- package/dist/app/features/unreal/index.js +3 -0
- package/dist/app/features/unreal/unreal.def.d.ts +236 -0
- package/dist/app/features/unreal/unreal.def.js +379 -0
- package/dist/app/features/unreal/unreal.run.d.ts +96 -0
- package/dist/app/features/unreal/unreal.run.js +217 -0
- package/dist/app/registry.js +11 -0
- package/dist/bin/agent-sandbox.js +2 -2
- package/dist/bin/{chunk-IZRGTSQ5.js → chunk-6WWMBCT2.js} +4632 -1941
- package/dist/bin/{chunk-SUYYVIDW.js → chunk-JXL6ZOO3.js} +126 -6
- package/dist/bin/{chunk-KH4MI2U5.js → chunk-ZXCAVVS4.js} +1 -1
- package/dist/bin/claude-host.js +2 -2
- package/dist/bin/claude-sbx.js +2 -2
- package/dist/bin/codex-sbx.js +2 -2
- package/dist/bin/gemini-sbx.js +2 -2
- package/dist/bin/sandbox.js +2 -2
- package/dist/bin/sbx-hide.js +2 -2
- package/dist/bin/sbx-show.js +2 -2
- package/dist/cli/commands/launch/launch.js +17 -2
- package/dist/cli/commands/registry.js +6 -0
- package/dist/cli/manifest.d.ts +51 -1
- package/dist/cli/manifest.js +58 -1
- package/dist/cli/menu/coverage-exempt.js +2 -0
- package/dist/cli/menu/pages/sandbox-page.d.ts +6 -0
- package/dist/cli/menu/pages/sandbox-page.js +71 -4
- package/dist/cli/menu/views.js +4 -0
- package/dist/core/config/defaults.js +33 -6
- package/dist/core/schema/accounts.d.ts +3 -0
- package/dist/core/schema/accounts.js +1 -0
- package/dist/core/schema/config.d.ts +32 -14
- package/dist/core/schema/github.d.ts +1 -0
- package/dist/core/schema/github.js +3 -0
- package/dist/core/schema/pc-installs.d.ts +5 -2
- package/dist/core/schema/pc-installs.js +16 -2
- package/dist/core/schema/toolchains.d.ts +8 -0
- package/dist/core/schema/toolchains.js +20 -5
- package/dist/guest/accounts/adapters.js +2 -0
- package/dist/guest/accounts/apply.d.ts +4 -2
- package/dist/guest/accounts/kinds/epic.js +18 -13
- package/dist/guest/accounts/kinds/perplexityapp.d.ts +7 -0
- package/dist/guest/accounts/kinds/perplexityapp.js +53 -0
- package/dist/guest/accounts/kinds/unity.d.ts +27 -0
- package/dist/guest/accounts/kinds/unity.js +164 -7
- package/dist/guest/apps/after-install.d.ts +1 -1
- package/dist/guest/apps/after-install.js +6 -1
- package/dist/guest/apps/app-installer.d.ts +1 -0
- package/dist/guest/apps/app-installer.js +31 -3
- package/dist/guest/apps/comet-unpack.js +3 -2
- package/dist/guest/apps/resolvers-gamedev.js +55 -1
- package/dist/guest/apps/store-app.d.ts +4 -0
- package/dist/guest/apps/store-app.js +19 -0
- package/dist/guest/apps/store-check.d.ts +8 -0
- package/dist/guest/apps/store-check.js +33 -0
- package/dist/guest/boot/boot.js +15 -2
- package/dist/guest/boot/guide.js +42 -0
- package/dist/guest/browser/comet.d.ts +3 -1
- package/dist/guest/browser/comet.js +1 -1
- package/dist/guest/browser/perplexity-app.d.ts +12 -0
- package/dist/guest/browser/perplexity-app.js +60 -0
- package/dist/guest/daemon/daemon.js +5 -0
- package/dist/guest/devtools/devtool.d.ts +1 -1
- package/dist/guest/devtools/registry.js +1 -2
- package/dist/guest/entries/tool.js +1 -1
- package/dist/guest/setup/addon-mcp.d.ts +12 -0
- package/dist/guest/setup/addon-mcp.js +29 -4
- package/dist/guest/setup/browser-gpu.js +14 -11
- package/dist/guest/setup/github-token.js +4 -4
- package/dist/guest/setup/headroom.js +4 -0
- package/dist/guest/setup/unity-agent.d.ts +11 -0
- package/dist/guest/setup/unity-agent.js +36 -0
- package/dist/guest/toolchains/engines/epic-launcher.d.ts +26 -0
- package/dist/guest/toolchains/engines/epic-launcher.js +127 -0
- package/dist/guest/toolchains/engines/unity-cli.d.ts +24 -0
- package/dist/guest/toolchains/engines/unity-cli.js +74 -0
- package/dist/guest/toolchains/engines/unity-hub.d.ts +2 -0
- package/dist/guest/toolchains/engines/unity-hub.js +27 -0
- package/dist/guest/toolchains/engines/unity-release.d.ts +4 -15
- package/dist/guest/toolchains/engines/unity-release.js +17 -5
- package/dist/guest/toolchains/engines/unity-status.d.ts +11 -0
- package/dist/guest/toolchains/engines/unity-status.js +39 -0
- package/dist/guest/toolchains/engines/unity.d.ts +20 -1
- package/dist/guest/toolchains/engines/unity.js +250 -3
- package/dist/guest/toolchains/engines/unreal-engines.d.ts +21 -1
- package/dist/guest/toolchains/engines/unreal-engines.js +163 -3
- package/dist/guest/toolchains/engines/unreal-status.d.ts +13 -0
- package/dist/guest/toolchains/engines/unreal-status.js +41 -0
- package/dist/guest/toolchains/native/debuggers.d.ts +6 -0
- package/dist/guest/toolchains/native/debuggers.js +57 -0
- package/dist/guest/toolchains/native/mesa.js +15 -8
- package/dist/guest/toolchains/native/rust-extras.d.ts +7 -0
- package/dist/guest/toolchains/native/rust-extras.js +23 -1
- package/dist/guest/toolchains/native/unreal.d.ts +2 -2
- package/dist/guest/toolchains/native/unreal.js +96 -18
- package/dist/guest/toolchains/plan.js +17 -2
- package/dist/guest/toolchains/tools/cli.js +2 -2
- package/dist/guest/toolchains/tools/vscode-profile.js +2 -0
- package/dist/host/accounts/deliver.js +4 -0
- package/dist/host/accounts/kinds/epic.js +11 -5
- package/dist/host/accounts/kinds/perplexityapp.d.ts +2 -0
- package/dist/host/accounts/kinds/perplexityapp.js +8 -0
- package/dist/host/accounts/kinds/unity.d.ts +1 -1
- package/dist/host/accounts/kinds/unity.js +60 -8
- package/dist/host/accounts/leases.d.ts +2 -1
- package/dist/host/accounts/source.d.ts +2 -0
- package/dist/host/accounts/source.js +1 -0
- package/dist/host/accounts/sources.js +2 -0
- package/dist/host/apps/index.d.ts +1 -0
- package/dist/host/apps/index.js +2 -0
- package/dist/host/apps/store-package.d.ts +51 -0
- package/dist/host/apps/store-package.js +209 -0
- package/dist/host/github/deliver.d.ts +8 -3
- package/dist/host/github/deliver.js +42 -29
- package/dist/host/github/index.d.ts +1 -0
- package/dist/host/github/index.js +1 -0
- package/dist/host/github/pc-login.d.ts +27 -0
- package/dist/host/github/pc-login.js +129 -0
- package/dist/host/pc-installs/discover.d.ts +6 -0
- package/dist/host/pc-installs/discover.js +37 -5
- package/dist/host/pc-installs/epic.d.ts +3 -0
- package/dist/host/pc-installs/epic.js +33 -2
- package/dist/host/pc-installs/source.d.ts +1 -1
- package/dist/host/pc-installs/unity-assets.d.ts +5 -0
- package/dist/host/pc-installs/unity-assets.js +18 -0
- package/dist/host/pc-installs/unity.d.ts +20 -0
- package/dist/host/pc-installs/unity.js +135 -2
- package/dist/host/pc-installs/unreal-vault.d.ts +11 -0
- package/dist/host/pc-installs/unreal-vault.js +78 -0
- package/dist/host/pc-installs/unreal.d.ts +36 -0
- package/dist/host/pc-installs/unreal.js +145 -2
- package/dist/host/profile/claude-profile.d.ts +8 -0
- package/dist/host/profile/claude-profile.js +43 -4
- package/dist/host/profile/index.d.ts +1 -1
- package/dist/host/profile/index.js +1 -1
- package/dist/runtime/agent.js +197 -18
- package/dist/runtime/daemon.js +3938 -1386
- package/dist/runtime/db.js +197 -18
- package/dist/runtime/main.js +4336 -1978
- package/dist/runtime/netproxy.js +197 -18
- package/dist/runtime/tool.js +214 -38
- package/dist/runtime/view.js +197 -18
- package/dist/selftest/agent-paths.test.js +1 -0
- package/dist/selftest/agents-web.test.js +14 -1
- package/dist/selftest/engines.test.js +602 -3
- package/dist/selftest/github.test.js +64 -1
- package/dist/selftest/heavy-load.test.js +3 -1
- package/dist/selftest/hostile-input.test.js +11 -1
- package/dist/selftest/index.js +12 -0
- package/dist/selftest/menu-screens.js +5 -1
- package/dist/selftest/mixamo.test.d.ts +2 -0
- package/dist/selftest/mixamo.test.js +60 -0
- package/dist/selftest/persisted-installs.test.js +1 -1
- package/dist/selftest/secrets.test.js +36 -1
- package/dist/selftest/service-accounts.test.js +1 -1
- package/dist/selftest/store-app.test.d.ts +2 -0
- package/dist/selftest/store-app.test.js +162 -0
- package/dist/selftest/support/engine-golden.js +10 -0
- package/dist/selftest/support/fixtures.d.ts +13 -2
- package/dist/selftest/support/unity-sample.d.ts +2 -0
- package/dist/selftest/support/unity-sample.js +80 -0
- package/dist/selftest/support/unreal-sample.d.ts +2 -0
- package/dist/selftest/support/unreal-sample.js +83 -0
- package/dist/selftest/toolchains.test.js +32 -2
- package/dist/selftest/unity-accounts.test.d.ts +2 -0
- package/dist/selftest/unity-accounts.test.js +106 -0
- package/dist/selftest/unity-agent.test.d.ts +2 -0
- package/dist/selftest/unity-agent.test.js +47 -0
- package/dist/selftest/unity-page.test.d.ts +2 -0
- package/dist/selftest/unity-page.test.js +177 -0
- package/dist/selftest/unity-setup.test.d.ts +2 -0
- package/dist/selftest/unity-setup.test.js +49 -0
- package/dist/selftest/unity.test.js +238 -3
- package/dist/shared/accounts/index.d.ts +2 -1
- package/dist/shared/accounts/index.js +2 -1
- package/dist/shared/accounts/kinds/epic.d.ts +6 -1
- package/dist/shared/accounts/kinds/epic.js +11 -1
- package/dist/shared/accounts/kinds/unity.d.ts +28 -0
- package/dist/shared/accounts/kinds/unity.js +88 -0
- package/dist/shared/accounts/kinds.d.ts +2 -2
- package/dist/shared/accounts/kinds.js +23 -1
- package/dist/shared/accounts/payloads.d.ts +52 -0
- package/dist/shared/accounts/payloads.js +14 -2
- package/dist/shared/apps/associations.d.ts +7 -0
- package/dist/shared/apps/associations.js +26 -0
- package/dist/shared/apps/catalogue-agents-web.d.ts +11 -1
- package/dist/shared/apps/catalogue-agents-web.js +28 -2
- package/dist/shared/apps/catalogue-gamedev.d.ts +3 -0
- package/dist/shared/apps/catalogue-gamedev.js +102 -1
- package/dist/shared/apps/catalogue.d.ts +8 -0
- package/dist/shared/apps/index.d.ts +5 -2
- package/dist/shared/apps/index.js +5 -2
- package/dist/shared/apps/preview.d.ts +2 -0
- package/dist/shared/apps/preview.js +10 -0
- package/dist/shared/apps/selection.d.ts +6 -0
- package/dist/shared/apps/selection.js +9 -0
- package/dist/shared/apps/store-package.d.ts +31 -0
- package/dist/shared/apps/store-package.js +34 -0
- package/dist/shared/browser-policy.d.ts +14 -0
- package/dist/shared/browser-policy.js +22 -0
- package/dist/shared/channel/schema.d.ts +24 -0
- package/dist/shared/channel/secrets.d.ts +17 -0
- package/dist/shared/io/index.d.ts +1 -0
- package/dist/shared/io/index.js +1 -0
- package/dist/shared/io/rotate-log.d.ts +2 -0
- package/dist/shared/io/rotate-log.js +16 -0
- package/dist/shared/memory/policy.d.ts +5 -0
- package/dist/shared/memory/policy.js +7 -0
- package/dist/shared/paths/pc-installs.d.ts +13 -2
- package/dist/shared/paths/pc-installs.js +2 -0
- package/dist/shared/readiness.d.ts +2 -3
- package/dist/shared/readiness.js +2 -3
- package/dist/shared/signer.d.ts +4 -0
- package/dist/shared/signer.js +2 -0
- package/dist/shared/unity/asset-cache.d.ts +20 -0
- package/dist/shared/unity/asset-cache.js +44 -0
- package/dist/shared/unity/cli.d.ts +40 -0
- package/dist/shared/unity/cli.js +77 -0
- package/dist/shared/unity/editors.d.ts +46 -0
- package/dist/shared/unity/editors.js +89 -0
- package/dist/shared/unity/guide.d.ts +9 -0
- package/dist/shared/unity/guide.js +84 -0
- package/dist/shared/unity/index.d.ts +9 -0
- package/dist/shared/unity/index.js +11 -0
- package/dist/shared/unity/manifest.d.ts +10 -0
- package/dist/shared/unity/manifest.js +53 -0
- package/dist/shared/unity/mcp.d.ts +8 -0
- package/dist/shared/unity/mcp.js +12 -0
- package/dist/shared/unity/release.d.ts +28 -0
- package/dist/shared/unity/release.js +83 -0
- package/dist/shared/unity/status.d.ts +59 -0
- package/dist/shared/unity/status.js +45 -0
- package/dist/shared/unity/version.d.ts +27 -0
- package/dist/shared/unity/version.js +75 -0
- package/dist/shared/unreal/engines.d.ts +161 -0
- package/dist/shared/unreal/engines.js +308 -0
- package/dist/shared/unreal/guide.d.ts +19 -0
- package/dist/shared/unreal/guide.js +105 -0
- package/dist/shared/unreal/index.d.ts +7 -0
- package/dist/shared/unreal/index.js +8 -0
- package/dist/shared/unreal/launcher-files.d.ts +88 -0
- package/dist/shared/unreal/launcher-files.js +292 -0
- package/dist/shared/unreal/mixamo.d.ts +5 -0
- package/dist/shared/unreal/mixamo.js +16 -0
- package/dist/shared/unreal/room.d.ts +17 -0
- package/dist/shared/unreal/room.js +34 -0
- package/dist/shared/unreal/status.d.ts +54 -0
- package/dist/shared/unreal/status.js +57 -0
- package/dist/shared/unreal/vault.d.ts +21 -0
- package/dist/shared/unreal/vault.js +67 -0
- package/dist/shared/unreal/vs-check.d.ts +39 -0
- package/dist/shared/unreal/vs-check.js +79 -0
- package/dist/web/index.html +1 -1
- package/dist/web/{main-CCILLX2M.js → main-VPMYTSUL.js} +87 -87
- package/native/csharp/HcsHost/AssemblyInfo.cs +3 -3
- package/native/csharp/HostTools/AssemblyInfo.cs +3 -3
- package/native/csharp/StorageHelper/AssemblyInfo.cs +3 -3
- package/native/scripts/get-store-package.ps1 +58 -0
- package/package.json +1 -1
- package/sandbox/addons/openupm-cli/package-lock.json +2921 -0
- package/sandbox/addons/openupm-cli/package.json +7 -0
- package/sandbox/addons/unity-mcp/requirements.in +1 -0
- package/sandbox/addons/unity-mcp/requirements.txt +1165 -0
- package/sandbox/csharp/AppActivation.cs +38 -0
- package/sandbox/csharp/VsSetup.cs +210 -0
- package/sandbox/scripts/get-vs-setup.ps1 +93 -0
- package/sandbox/scripts/install-store-package.ps1 +28 -0
- package/sandbox/scripts/set-registry-values.ps1 +35 -0
- package/sandbox/scripts/start-store-app.ps1 +29 -0
- package/schemas/config.schema.json +96 -8
- package/schemas/sandbox-config.schema.json +46 -6
- package/dist/guest/devtools/unity.d.ts +0 -2
- package/dist/guest/devtools/unity.js +0 -7
package/dist/runtime/tool.js
CHANGED
|
@@ -26051,7 +26051,7 @@ var ToolchainsSchema = external_exports.strictObject({
|
|
|
26051
26051
|
`"auto" (default): on the sandbox's own disk when C: has 25 GB free at boot, else "separate" (builds then write through the mapped workspace, which can overload this PC's disk). "shared": cargo's default target\\ (shared with builds on this PC, so builds on either side invalidate the other), "separate": <workspace>\\target\\sandbox (kept, no cross-talk), "local": on the sandbox's own disk (fastest, lost every boot), or a guest path.`
|
|
26052
26052
|
),
|
|
26053
26053
|
linker: external_exports.enum(["lld", "gnu"]).describe(
|
|
26054
|
-
`
|
|
26054
|
+
`"lld" (default) links with Rust's own lld: through MinGW's gcc on the GNU host (much less memory than GNU ld), and instead of link.exe on the MSVC host (link.exe writes executables into mapped folders as all zeros: os error 1392). "gnu" keeps GNU ld / link.exe.`
|
|
26055
26055
|
),
|
|
26056
26056
|
linkSlots: external_exports.union([external_exports.literal("auto"), external_exports.number().int().min(1).max(32)]).describe(
|
|
26057
26057
|
'GNU host: how many programs may link at the same time in the whole sandbox (other links wait). "auto" = one per 6 GB of sandbox memory, 1 to 4 (the memory governor slows links down too when memory runs short).'
|
|
@@ -26091,21 +26091,35 @@ var ToolchainsSchema = external_exports.strictObject({
|
|
|
26091
26091
|
}),
|
|
26092
26092
|
unity: external_exports.strictObject({
|
|
26093
26093
|
enabled: enabled(
|
|
26094
|
-
"Unity: the editor version a project asks for, from Unity's release API (checked against its published hash), installed
|
|
26094
|
+
"Unity: the editor version a project asks for, from Unity's release API (checked against its published hash), installed on the data disk (tools\\unity\\editors\\<version>, 8-13 GB each, kept between sandboxes), with the modules you list. This PC's editors (pcInstalls.unityEditors) are used first.",
|
|
26095
26095
|
"ProjectSettings/ProjectVersion.txt"
|
|
26096
26096
|
),
|
|
26097
26097
|
acceptLicense: external_exports.boolean().describe(
|
|
26098
26098
|
"Required to install: you accept the Unity terms of service (https://unity.com/legal/terms-of-service), and the editor needs a Unity licence (Personal is free). A project file cannot accept it for you."
|
|
26099
26099
|
),
|
|
26100
26100
|
version: external_exports.string().min(1).describe(
|
|
26101
|
-
|
|
26101
|
+
`"project" = the version in ProjectSettings/ProjectVersion.txt, or an editor version such as "6000.0.32f1" for folders without one (a project's own version always wins).`
|
|
26102
26102
|
),
|
|
26103
26103
|
modules: external_exports.array(external_exports.string().regex(/^[a-z0-9-]+$/)).describe(
|
|
26104
26104
|
`Editor modules to add: "android" (4-5 GB, also the Android SDK), "webgl" (1.5 GB), "windows-il2cpp" (adds Visual Studio's C++ parts), "ios" (Xcode project export only: iOS builds need a Mac).`
|
|
26105
26105
|
),
|
|
26106
|
-
hub: external_exports.boolean().describe(
|
|
26106
|
+
hub: external_exports.boolean().describe(
|
|
26107
|
+
"Also Unity Hub (kept on the data disk), for signing in to Unity Personal and installing editors by hand."
|
|
26108
|
+
),
|
|
26107
26109
|
keepVersions: external_exports.number().int().min(1).max(20).describe(
|
|
26108
26110
|
"How many editor versions to keep in tools\\unity; older ones are removed (the least recently used first)."
|
|
26111
|
+
),
|
|
26112
|
+
mcp: external_exports.boolean().describe(
|
|
26113
|
+
"The Unity CLI's MCP server (unity mcp) in Claude Code and Codex as sbx-unity: Unity's read-only tools always, the open editor's tools when the project has the Unity Pipeline package (Unity 6 and later). Nothing in your project changes."
|
|
26114
|
+
),
|
|
26115
|
+
agentSkills: external_exports.boolean().describe(
|
|
26116
|
+
"Unity's skills for Claude Code and Codex, from Unity-Technologies/skills at the commit the Unity CLI pins."
|
|
26117
|
+
),
|
|
26118
|
+
cliVersion: external_exports.string().regex(/^(latest|\d+\.\d+\.\d+(-[A-Za-z0-9.]+)?)$/).describe(
|
|
26119
|
+
'The Unity CLI version, checked against the SHA-256 Unity publishes: a version such as "1.0.0-beta.16", or "latest". It never updates itself.'
|
|
26120
|
+
),
|
|
26121
|
+
assetCache: external_exports.enum(["persisted", "pc", "local"]).describe(
|
|
26122
|
+
`"persisted": Asset Store downloads made in the sandbox go to tools\\unity\\asset-store (kept). "pc": the sandbox uses this PC's Asset Store downloads (read-only; download new ones on your PC). "local": Unity's own place on the sandbox disk (lost when it closes).`
|
|
26109
26123
|
)
|
|
26110
26124
|
}),
|
|
26111
26125
|
godot: external_exports.strictObject({
|
|
@@ -26257,7 +26271,7 @@ var ToolchainsSchema = external_exports.strictObject({
|
|
|
26257
26271
|
}),
|
|
26258
26272
|
cli: external_exports.strictObject({
|
|
26259
26273
|
gh: EnabledSchema.describe(
|
|
26260
|
-
'GitHub CLI (gh). Only with provisioning.git.access "full": gh can push and merge through the GitHub API, past a read-only git. Your PC\'s gh login is
|
|
26274
|
+
'GitHub CLI (gh). Only with provisioning.git.access "full": gh can push and merge through the GitHub API, past a read-only git. Your PC\'s gh login is copied only with github.usePcLogin (or a token you saved for sandboxes with github.shareToken); otherwise `gh auth login` inside persists (GH_CONFIG_DIR). "auto" = when the project has a .github folder.'
|
|
26261
26275
|
),
|
|
26262
26276
|
zstd: EnabledSchema.describe('Zstandard (zstd). "auto" = off; set true to get it.'),
|
|
26263
26277
|
openssl: EnabledSchema.describe(
|
|
@@ -26309,9 +26323,12 @@ var CHROME_DEVTOOLS_MCP_VERSION = "1.12.0";
|
|
|
26309
26323
|
var BROWSER_USE_VERSION = "0.13.14";
|
|
26310
26324
|
var PERPLEXITY_COMPUTER_MCP_URL = "https://www.perplexity.ai/rest/computer/mcp";
|
|
26311
26325
|
var COMET_SIGNER = {
|
|
26312
|
-
subject: ['
|
|
26326
|
+
subject: ['(^|, )CN="?PERPLEXITY AI, INC\\.?"?(,|$)', '(^|, )O="?PERPLEXITY AI, INC\\.?"?(,|$)'],
|
|
26313
26327
|
issuer: ["^CN=GlobalSign GCC R45 EV CodeSigning CA 2020(,|$)"]
|
|
26314
26328
|
};
|
|
26329
|
+
var PERPLEXITY_DESKTOP_PRODUCT_ID = "9P9XG917PWCJ";
|
|
26330
|
+
var PERPLEXITY_DESKTOP_PACKAGE = "PerplexityAI.PerplexityApp";
|
|
26331
|
+
var PERPLEXITY_DESKTOP_FAMILY = "PerplexityAI.PerplexityApp_3jh4kjrg4dzr2";
|
|
26315
26332
|
var EDGE_EXE = "C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe";
|
|
26316
26333
|
var AGENTS_WEB_APPS = [
|
|
26317
26334
|
{
|
|
@@ -26358,6 +26375,22 @@ var AGENTS_WEB_APPS = [
|
|
|
26358
26375
|
signer: COMET_SIGNER,
|
|
26359
26376
|
userOnly: true
|
|
26360
26377
|
},
|
|
26378
|
+
{
|
|
26379
|
+
id: "perplexity-desktop",
|
|
26380
|
+
name: "Perplexity (desktop app)",
|
|
26381
|
+
category: "agents",
|
|
26382
|
+
about: "Perplexity's desktop app, with Perplexity Computer, from the Microsoft Store. The package comes from this PC (winget with your own Microsoft Store access) and is kept on the data disk; the sandbox installs it on every boot. With accounts.perplexityapp.share on, your sign-in made in a sandbox is kept for the next ones (it cannot be copied from this PC). It acts on what it reads: use it only on what you would let it act on.",
|
|
26383
|
+
size: "300 MB",
|
|
26384
|
+
source: {
|
|
26385
|
+
store: {
|
|
26386
|
+
productId: PERPLEXITY_DESKTOP_PRODUCT_ID,
|
|
26387
|
+
packageName: PERPLEXITY_DESKTOP_PACKAGE,
|
|
26388
|
+
family: PERPLEXITY_DESKTOP_FAMILY
|
|
26389
|
+
}
|
|
26390
|
+
},
|
|
26391
|
+
exe: "",
|
|
26392
|
+
userOnly: true
|
|
26393
|
+
},
|
|
26361
26394
|
{
|
|
26362
26395
|
id: "comet-mcp",
|
|
26363
26396
|
name: "Comet MCP",
|
|
@@ -26411,7 +26444,107 @@ var AGENTS_WEB_APPS = [
|
|
|
26411
26444
|
];
|
|
26412
26445
|
|
|
26413
26446
|
// src/shared/apps/catalogue-gamedev.ts
|
|
26414
|
-
var
|
|
26447
|
+
var UNITY_MCP_VERSION = "10.3.0";
|
|
26448
|
+
var OPENUPM_CLI_VERSION = "4.5.3";
|
|
26449
|
+
var GAMEDEV_APPS = [
|
|
26450
|
+
{
|
|
26451
|
+
id: "krita",
|
|
26452
|
+
name: "Krita",
|
|
26453
|
+
category: "gamedev",
|
|
26454
|
+
about: "Painting and texture editor (PSD, layers, brushes), checked against the SHA-256 download.kde.org publishes.",
|
|
26455
|
+
size: "450 MB",
|
|
26456
|
+
source: { resolve: "krita" },
|
|
26457
|
+
exe: "krita.exe",
|
|
26458
|
+
needs: ["mesa"]
|
|
26459
|
+
},
|
|
26460
|
+
{
|
|
26461
|
+
id: "inkscape",
|
|
26462
|
+
name: "Inkscape",
|
|
26463
|
+
category: "gamedev",
|
|
26464
|
+
about: "Vector graphics for UI, icons and 2D art (SVG), checked against the SHA-256 inkscape.org publishes.",
|
|
26465
|
+
size: "400 MB",
|
|
26466
|
+
source: { resolve: "inkscape" },
|
|
26467
|
+
exe: "inkscape.exe",
|
|
26468
|
+
needs: ["7zip"]
|
|
26469
|
+
},
|
|
26470
|
+
{
|
|
26471
|
+
id: "audacity",
|
|
26472
|
+
name: "Audacity",
|
|
26473
|
+
category: "gamedev",
|
|
26474
|
+
about: "Records and edits sound effects and music (WAV, OGG, FLAC).",
|
|
26475
|
+
size: "80 MB",
|
|
26476
|
+
source: { github: "audacity/audacity", asset: "^audacity-win-[\\d.]+-(?:64bit\\.zip|x86_64\\.7z)$" },
|
|
26477
|
+
exe: "Audacity.exe",
|
|
26478
|
+
needs: ["7zip"]
|
|
26479
|
+
},
|
|
26480
|
+
{
|
|
26481
|
+
id: "renderdoc",
|
|
26482
|
+
name: "RenderDoc",
|
|
26483
|
+
category: "gamedev",
|
|
26484
|
+
about: "Captures a frame of a game (Unreal's -d3d12/-vulkan builds) to inspect every draw call, texture and shader. Needs the sandbox's GPU (vGPU) for live captures.",
|
|
26485
|
+
size: "70 MB",
|
|
26486
|
+
source: { resolve: "renderdoc" },
|
|
26487
|
+
exe: "qrenderdoc.exe"
|
|
26488
|
+
},
|
|
26489
|
+
{
|
|
26490
|
+
id: "f3d",
|
|
26491
|
+
name: "F3D",
|
|
26492
|
+
category: "gamedev",
|
|
26493
|
+
about: "Fast 3D viewer (FBX, glTF/GLB, OBJ, STL, PLY, 3DS, USD); renders still previews from the command line.",
|
|
26494
|
+
size: "100 MB",
|
|
26495
|
+
source: { github: "f3d-app/f3d", asset: "^F3D-[\\d.]+-Windows-x86_64\\.zip$" },
|
|
26496
|
+
exe: "f3d.exe",
|
|
26497
|
+
needs: ["mesa"]
|
|
26498
|
+
},
|
|
26499
|
+
{
|
|
26500
|
+
id: "imagemagick",
|
|
26501
|
+
name: "ImageMagick",
|
|
26502
|
+
category: "gamedev",
|
|
26503
|
+
about: "Converts and thumbnails textures (TGA, PSD, DDS, EXR, HDR) and builds contact sheets (magick montage).",
|
|
26504
|
+
size: "150 MB",
|
|
26505
|
+
source: { github: "ImageMagick/ImageMagick", asset: "^ImageMagick-[\\d.]+-\\d+-portable-Q16-HDRI-x64\\.7z$" },
|
|
26506
|
+
exe: "magick.exe",
|
|
26507
|
+
cli: true,
|
|
26508
|
+
needs: ["7zip"]
|
|
26509
|
+
},
|
|
26510
|
+
{
|
|
26511
|
+
id: "nomacs",
|
|
26512
|
+
name: "nomacs",
|
|
26513
|
+
category: "gamedev",
|
|
26514
|
+
about: "Image viewer for textures (TGA, PSD, DDS, EXR).",
|
|
26515
|
+
size: "60 MB",
|
|
26516
|
+
source: { github: "nomacs/nomacs", asset: "^nomacs-portable-win\\.zip$" },
|
|
26517
|
+
exe: "nomacs.exe"
|
|
26518
|
+
},
|
|
26519
|
+
{
|
|
26520
|
+
id: "unity-mcp",
|
|
26521
|
+
name: "MCP for Unity",
|
|
26522
|
+
category: "agents",
|
|
26523
|
+
about: "Lets Claude Code and Codex work in an open Unity editor (CoplayDev/unity-mcp 10.3.0, MIT; Unity 2021.3 to 6.x). Your project needs its package (Unity page: Add the editor bridge). Telemetry is off.",
|
|
26524
|
+
size: "60 MB",
|
|
26525
|
+
source: { locked: "uv", package: "mcpforunityserver", version: UNITY_MCP_VERSION },
|
|
26526
|
+
exe: "mcp-for-unity.exe",
|
|
26527
|
+
service: true,
|
|
26528
|
+
mcp: {
|
|
26529
|
+
name: "sbx-unity-mcp",
|
|
26530
|
+
program: true,
|
|
26531
|
+
args: ["--transport", "stdio"],
|
|
26532
|
+
env: { DISABLE_TELEMETRY: "1", UNITY_MCP_DISABLE_TELEMETRY: "1", MCP_DISABLE_TELEMETRY: "1" },
|
|
26533
|
+
codex: true
|
|
26534
|
+
},
|
|
26535
|
+
plugsInto: "Claude Code and Codex as the MCP server sbx-unity-mcp",
|
|
26536
|
+
userOnly: true
|
|
26537
|
+
},
|
|
26538
|
+
{
|
|
26539
|
+
id: "openupm-cli",
|
|
26540
|
+
name: "openupm-cli",
|
|
26541
|
+
category: "gamedev",
|
|
26542
|
+
about: "Adds OpenUPM packages to Unity projects from the command line (openupm 4.5.3, BSD-3-Clause).",
|
|
26543
|
+
size: "15 MB",
|
|
26544
|
+
source: { locked: "npm", package: "openupm-cli", version: OPENUPM_CLI_VERSION },
|
|
26545
|
+
exe: "openupm.cmd"
|
|
26546
|
+
}
|
|
26547
|
+
];
|
|
26415
26548
|
|
|
26416
26549
|
// src/shared/apps/catalogue-mobile.ts
|
|
26417
26550
|
var MOBILE_APPS = [];
|
|
@@ -27284,6 +27417,21 @@ var CORE_APPS = [
|
|
|
27284
27417
|
];
|
|
27285
27418
|
var APPS = [...CORE_APPS, ...GAMEDEV_APPS, ...MODDING_APPS, ...MOBILE_APPS, ...AGENTS_WEB_APPS];
|
|
27286
27419
|
|
|
27420
|
+
// src/shared/apps/store-package.ts
|
|
27421
|
+
var GB = 1024 * 1024 * 1024;
|
|
27422
|
+
var FILE_NAME = /^[A-Za-z0-9._~+-]{1,200}\.(msix|appx|msixbundle|appxbundle)$/i;
|
|
27423
|
+
var StorePackageFileSchema = external_exports.strictObject({
|
|
27424
|
+
name: external_exports.string().regex(FILE_NAME),
|
|
27425
|
+
role: external_exports.enum(["main", "dependency"]),
|
|
27426
|
+
sha256: external_exports.string().regex(/^[0-9a-f]{64}$/),
|
|
27427
|
+
bytes: external_exports.number().int().positive().max(2 * GB)
|
|
27428
|
+
});
|
|
27429
|
+
var StorePackageManifestSchema = external_exports.strictObject({
|
|
27430
|
+
productId: external_exports.string().regex(/^[A-Z0-9]{12}$/),
|
|
27431
|
+
fetchedAt: external_exports.string().max(40),
|
|
27432
|
+
files: external_exports.array(StorePackageFileSchema).min(1).max(24)
|
|
27433
|
+
}).refine((m) => m.files.filter((f) => f.role === "main").length === 1, "exactly one file must be the app itself").refine((m) => new Set(m.files.map((f) => f.name.toLowerCase())).size === m.files.length, "file names repeat");
|
|
27434
|
+
|
|
27287
27435
|
// src/core/schema/apps.ts
|
|
27288
27436
|
var CATALOGUE_IDS = APPS.filter((a) => !a.setting).map((a) => a.id);
|
|
27289
27437
|
var AppIdSchema = external_exports.enum(CATALOGUE_IDS);
|
|
@@ -27418,6 +27566,9 @@ var VpnSchema = external_exports.strictObject({
|
|
|
27418
27566
|
var GithubSchema = external_exports.strictObject({
|
|
27419
27567
|
shareToken: external_exports.boolean().describe(
|
|
27420
27568
|
'Give each sandbox the GitHub token you saved in Accounts (best a fine-grained token limited to some repositories and permissions), so gh and https git work there without logging in. Only with provisioning.git.access "full". The agent in the sandbox can read the token and use it for whatever it allows. A project file (.sandbox-config.json) cannot turn this on.'
|
|
27569
|
+
),
|
|
27570
|
+
usePcLogin: external_exports.boolean().describe(
|
|
27571
|
+
'Give each sandbox the GitHub CLI (gh) login from this PC, when there is one, so gh and https git work there without logging in. Used when no token saved for sandboxes is handed over. Only with provisioning.git.access "full". Without a gh login on the PC nothing happens. The login reaches everything your account can, and the agent in the sandbox can read it. A project file (.sandbox-config.json) cannot turn this on.'
|
|
27421
27572
|
)
|
|
27422
27573
|
});
|
|
27423
27574
|
|
|
@@ -27466,7 +27617,9 @@ var SERVICE_SPECS = {
|
|
|
27466
27617
|
warnings: [
|
|
27467
27618
|
AGENT_CAN_USE,
|
|
27468
27619
|
ONE_PLACE,
|
|
27469
|
-
"
|
|
27620
|
+
"Unity Personal is activated by signing in: sign in to Unity once in a sandbox and the licence it makes is kept for the next ones (if Unity refuses it there, sign in again).",
|
|
27621
|
+
"A Plus or Pro serial is activated in each sandbox and handed back when the sandbox stops cleanly; a sandbox closed abruptly may keep the seat until you remove it at id.unity.com (My Seats).",
|
|
27622
|
+
"A licence file taken from this PC may not work in a sandbox: Unity ties it to the computer."
|
|
27470
27623
|
],
|
|
27471
27624
|
fields: [
|
|
27472
27625
|
{ name: "email", label: "Unity ID email", secret: false, optional: true },
|
|
@@ -27593,11 +27746,28 @@ var SERVICE_SPECS = {
|
|
|
27593
27746
|
"Several sandboxes can use it at once: the sign-in the last one hands back is kept."
|
|
27594
27747
|
],
|
|
27595
27748
|
fields: []
|
|
27749
|
+
},
|
|
27750
|
+
perplexityapp: {
|
|
27751
|
+
kind: "perplexityapp",
|
|
27752
|
+
label: "Perplexity desktop app",
|
|
27753
|
+
usedBy: ["perplexityapp"],
|
|
27754
|
+
sources: ["sandbox"],
|
|
27755
|
+
singleHolder: false,
|
|
27756
|
+
returns: true,
|
|
27757
|
+
maxBytes: 256 * 1024,
|
|
27758
|
+
warnings: [
|
|
27759
|
+
AGENT_CAN_USE + " It can act as you in the Perplexity app and spend your Perplexity Computer credits; the app acts on the pages it reads, which can try to steer it.",
|
|
27760
|
+
"Your sign-in in the Perplexity app can't be copied from this PC: Windows locks it to your PC account. Sign in once inside a sandbox and it is kept for the next ones.",
|
|
27761
|
+
"Only the perplexity.ai sign-in cookies are kept: never saved passwords, other sites, localStorage or history.",
|
|
27762
|
+
"Several sandboxes can use it at once: the sign-in the last one hands back is kept."
|
|
27763
|
+
],
|
|
27764
|
+
fields: []
|
|
27596
27765
|
}
|
|
27597
27766
|
};
|
|
27598
27767
|
var APP_USER_TEXT = {
|
|
27599
27768
|
perplexity: "the Perplexity MCP app",
|
|
27600
|
-
comet: "the Comet app"
|
|
27769
|
+
comet: "the Comet app",
|
|
27770
|
+
perplexityapp: "the Perplexity desktop app"
|
|
27601
27771
|
};
|
|
27602
27772
|
function usedByText(usedBy) {
|
|
27603
27773
|
return usedBy.map((u) => u in APP_USER_TEXT ? APP_USER_TEXT[u] : u).join(" or ");
|
|
@@ -27622,7 +27792,11 @@ var AccountsSchema = external_exports.strictObject({
|
|
|
27622
27792
|
expo: share("expo", "type the token in Accounts"),
|
|
27623
27793
|
appstore: share("appstore", "import the AuthKey.p8 file in Accounts"),
|
|
27624
27794
|
perplexity: share("perplexity", "type the API key in Accounts, or import it from a .env file"),
|
|
27625
|
-
comet: share("comet", "sign in to Comet once in a sandbox: it cannot be taken from this PC")
|
|
27795
|
+
comet: share("comet", "sign in to Comet once in a sandbox: it cannot be taken from this PC"),
|
|
27796
|
+
perplexityapp: share(
|
|
27797
|
+
"perplexityapp",
|
|
27798
|
+
"sign in to the Perplexity app once in a sandbox: it cannot be taken from this PC"
|
|
27799
|
+
)
|
|
27626
27800
|
}).describe("Service sign-ins for sandboxes (game stores, engines, app signing, Perplexity). Manage them in Accounts.");
|
|
27627
27801
|
|
|
27628
27802
|
// src/core/schema/pc-installs.ts
|
|
@@ -27640,15 +27814,20 @@ var PcInstallsSchema = external_exports.strictObject({
|
|
|
27640
27814
|
"Epic Games Launcher games (by their app name)",
|
|
27641
27815
|
'["Fortnite"]'
|
|
27642
27816
|
),
|
|
27643
|
-
unrealEngines:
|
|
27644
|
-
|
|
27645
|
-
"Unreal Engine versions installed with the Epic Games Launcher",
|
|
27646
|
-
'["5.4"]'
|
|
27817
|
+
unrealEngines: external_exports.union([external_exports.literal("auto"), external_exports.boolean(), external_exports.array(external_exports.string().regex(/^(UE_)?\d+\.\d+$/))]).describe(
|
|
27818
|
+
'Unreal Engine versions installed on this PC (with the Epic Games Launcher, or source builds it lists), read-only in the sandbox under C:\\PcInstalls\\unreal and registered there, so projects build with them without a download. "auto" = all of them whenever the sandbox is set up for Unreal, true = always, false = never, or a list (e.g. ["5.4"]).'
|
|
27647
27819
|
),
|
|
27648
|
-
|
|
27649
|
-
|
|
27650
|
-
|
|
27651
|
-
|
|
27820
|
+
unrealEngineFolders: external_exports.array(external_exports.string().min(3).max(260)).max(8).describe(
|
|
27821
|
+
"Unreal Engine folders of this PC to use in the sandbox, writable (a source build, or a copy you build plugins into): each must hold Engine\\Build\\Build.version. Mapped under C:\\PcInstalls\\unreal and registered there."
|
|
27822
|
+
),
|
|
27823
|
+
unrealAssets: external_exports.union([external_exports.literal("auto"), external_exports.boolean()]).describe(
|
|
27824
|
+
`The Epic Games Launcher's vault cache of this PC (the Fab and Marketplace packs you downloaded), read-only in the sandbox at C:\\PcInstalls\\unreal\\Vault: what you download on your PC is there for the agents at once. "auto" = whenever the sandbox is set up for Unreal, true = always, false = never.`
|
|
27825
|
+
),
|
|
27826
|
+
unityEditors: external_exports.union([external_exports.literal("auto"), external_exports.boolean(), external_exports.array(external_exports.string().regex(/^\d+\.\d+\.\d+[abfp]\d+$/))]).describe(
|
|
27827
|
+
`Unity editors installed on this PC (with Unity Hub), read-only in the sandbox under C:\\PcInstalls\\unity: a project opens with the PC's editor without a download. "auto" = all of them whenever the sandbox is set up for Unity, true = always, false = never, or a list (e.g. ["6000.0.32f1"]).`
|
|
27828
|
+
),
|
|
27829
|
+
unityAssets: external_exports.union([external_exports.literal("auto"), external_exports.boolean()]).describe(
|
|
27830
|
+
`This PC's Unity Asset Store downloads (.unitypackage files), read-only at C:\\PcInstalls\\unity\\AssetStore: what you download on your PC is there for the agents at once. "auto" = whenever the sandbox is set up for Unity, true = always, false = never.`
|
|
27652
27831
|
)
|
|
27653
27832
|
}).describe(
|
|
27654
27833
|
"Games, engines and editors installed on this PC, mapped read-only into sandboxes (no copy, no room on the sandbox's disk)."
|
|
@@ -28332,8 +28511,8 @@ var InstallRecordSchema = external_exports.object({
|
|
|
28332
28511
|
var InstallRecordsSchema = external_exports.object({ installs: external_exports.array(InstallRecordSchema).max(1e3) });
|
|
28333
28512
|
|
|
28334
28513
|
// src/guest/toolchains/persisted.ts
|
|
28335
|
-
var
|
|
28336
|
-
var LOCAL_RESERVE_BYTES = 13 *
|
|
28514
|
+
var GB2 = 1024 ** 3;
|
|
28515
|
+
var LOCAL_RESERVE_BYTES = 13 * GB2;
|
|
28337
28516
|
var MARKER = ".complete.json";
|
|
28338
28517
|
var MAX_WALK = 2e6;
|
|
28339
28518
|
var NAME = /^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$/;
|
|
@@ -28347,7 +28526,7 @@ function checkSpec(spec) {
|
|
|
28347
28526
|
function freeBytes(dir, deps = {}) {
|
|
28348
28527
|
return freeBytesAt(dir, deps.statfs) ?? 0;
|
|
28349
28528
|
}
|
|
28350
|
-
var gb = (bytes) => (bytes /
|
|
28529
|
+
var gb = (bytes) => (bytes / GB2).toFixed(1) + " GB";
|
|
28351
28530
|
function assertRoom(dir, needBytes, what, fix, deps = {}) {
|
|
28352
28531
|
const free = freeBytes(dir, deps);
|
|
28353
28532
|
if (free < needBytes)
|
|
@@ -29162,10 +29341,12 @@ var SteamPayloadSchema = external_exports.strictObject({
|
|
|
29162
29341
|
});
|
|
29163
29342
|
var UnityPayloadSchema = external_exports.strictObject({
|
|
29164
29343
|
ulf: external_exports.string().min(1).max(128 * KB).optional(),
|
|
29344
|
+
/** The named-user licence (UnityEntitlementLicense.xml) a Unity sign-in makes. */
|
|
29345
|
+
entitlement: external_exports.string().min(1).max(128 * KB).optional(),
|
|
29165
29346
|
email: external_exports.string().email().max(256).optional(),
|
|
29166
29347
|
password: secretText(1024).optional(),
|
|
29167
29348
|
serial: secretText(64).optional()
|
|
29168
|
-
});
|
|
29349
|
+
}).refine((p) => Object.keys(p).length > 0, "empty Unity sign-in");
|
|
29169
29350
|
var CfxPayloadSchema = external_exports.strictObject({
|
|
29170
29351
|
licenseKey: external_exports.string().max(256).regex(/^cfxk_[A-Za-z0-9_]+$/),
|
|
29171
29352
|
steamWebApiKey: external_exports.string().regex(/^[A-F0-9]{32}$/).optional()
|
|
@@ -29218,6 +29399,7 @@ var CometCookieSchema = external_exports.strictObject({
|
|
|
29218
29399
|
var CometPayloadSchema = external_exports.strictObject({
|
|
29219
29400
|
cookies: external_exports.array(CometCookieSchema).min(1).max(MAX_COMET_COOKIES)
|
|
29220
29401
|
});
|
|
29402
|
+
var PerplexityAppPayloadSchema = CometPayloadSchema;
|
|
29221
29403
|
var ServiceAccountsSchema = external_exports.strictObject({
|
|
29222
29404
|
epic: EpicPayloadSchema.optional(),
|
|
29223
29405
|
steam: SteamPayloadSchema.optional(),
|
|
@@ -29228,7 +29410,8 @@ var ServiceAccountsSchema = external_exports.strictObject({
|
|
|
29228
29410
|
expo: ExpoPayloadSchema.optional(),
|
|
29229
29411
|
appstore: AppstorePayloadSchema.optional(),
|
|
29230
29412
|
perplexity: PerplexityPayloadSchema.optional(),
|
|
29231
|
-
comet: CometPayloadSchema.optional()
|
|
29413
|
+
comet: CometPayloadSchema.optional(),
|
|
29414
|
+
perplexityapp: PerplexityAppPayloadSchema.optional()
|
|
29232
29415
|
});
|
|
29233
29416
|
var LaunchIdSchema = external_exports.string().regex(/^[A-Za-z0-9-]{1,64}$/);
|
|
29234
29417
|
|
|
@@ -29370,8 +29553,8 @@ function readScript(file2) {
|
|
|
29370
29553
|
// src/guest/toolchains/steam/apps.ts
|
|
29371
29554
|
import fs19 from "node:fs";
|
|
29372
29555
|
import path23 from "node:path";
|
|
29373
|
-
var
|
|
29374
|
-
var DEFAULT_APP_NEED_BYTES = 5 *
|
|
29556
|
+
var GB3 = 1024 ** 3;
|
|
29557
|
+
var DEFAULT_APP_NEED_BYTES = 5 * GB3;
|
|
29375
29558
|
var STEAM_APPS_RECORD = "steam-apps";
|
|
29376
29559
|
var MAX_WALK2 = 2e6;
|
|
29377
29560
|
var MAX_MANIFEST_BYTES = 256 * 1024;
|
|
@@ -29460,7 +29643,7 @@ function installedApps(deps = {}) {
|
|
|
29460
29643
|
}
|
|
29461
29644
|
|
|
29462
29645
|
// src/guest/devtools/steam.ts
|
|
29463
|
-
var
|
|
29646
|
+
var GB4 = 1024 ** 3;
|
|
29464
29647
|
var USAGE2 = [
|
|
29465
29648
|
"Usage: sbx-steam <command>",
|
|
29466
29649
|
" login <account> sign in to SteamCMD (it asks for the password and Steam Guard code)",
|
|
@@ -29518,7 +29701,7 @@ function account(p, anonymousOk) {
|
|
|
29518
29701
|
async function steamCmd(args2) {
|
|
29519
29702
|
return spawnAsync(requireSteamCmd(), args2, { cwd: STEAMCMD_DIR, stdio: "inherit", windowsHide: false });
|
|
29520
29703
|
}
|
|
29521
|
-
var gb2 = (bytes) => bytes === null ? "size unknown" : (bytes /
|
|
29704
|
+
var gb2 = (bytes) => bytes === null ? "size unknown" : (bytes / GB4).toFixed(2) + " GB";
|
|
29522
29705
|
async function login(p) {
|
|
29523
29706
|
const name2 = p.words[1] ?? p.values.get("--user");
|
|
29524
29707
|
if (!name2) throw new Error("Usage: sbx-steam login <account name>");
|
|
@@ -29535,9 +29718,9 @@ async function app(p) {
|
|
|
29535
29718
|
const appId = checkAppId(p.words[1] ?? "");
|
|
29536
29719
|
const given = p.values.get("--dir");
|
|
29537
29720
|
const dir = given ? path24.resolve(given) : steamAppDir(appId);
|
|
29538
|
-
const needGb = Number(p.values.get("--need-gb") ?? DEFAULT_APP_NEED_BYTES /
|
|
29721
|
+
const needGb = Number(p.values.get("--need-gb") ?? DEFAULT_APP_NEED_BYTES / GB4);
|
|
29539
29722
|
if (!Number.isFinite(needGb) || needGb < 0 || needGb > 1e4) throw new Error("--need-gb takes a number of GB");
|
|
29540
|
-
assertAppRoom(dir, needGb *
|
|
29723
|
+
assertAppRoom(dir, needGb * GB4, "app " + appId);
|
|
29541
29724
|
fs20.mkdirSync(dir, { recursive: true });
|
|
29542
29725
|
const beta = p.values.get("--beta");
|
|
29543
29726
|
const code = await steamCmd(
|
|
@@ -29560,7 +29743,7 @@ async function workshop(p) {
|
|
|
29560
29743
|
const appId = checkAppId(p.words[2] ?? "");
|
|
29561
29744
|
const items = p.words.slice(3);
|
|
29562
29745
|
const cache = workshopCache();
|
|
29563
|
-
assertAppRoom(cache,
|
|
29746
|
+
assertAppRoom(cache, GB4, "workshop items");
|
|
29564
29747
|
fs20.mkdirSync(cache, { recursive: true });
|
|
29565
29748
|
const code = await steamCmd(
|
|
29566
29749
|
workshopGetArgs({ appId, items, dir: cache, login: account(p, true), validate: p.flags.has("--validate") })
|
|
@@ -29664,15 +29847,8 @@ var steamTool = {
|
|
|
29664
29847
|
}
|
|
29665
29848
|
};
|
|
29666
29849
|
|
|
29667
|
-
// src/guest/devtools/unity.ts
|
|
29668
|
-
var unityTool = {
|
|
29669
|
-
name: "unity",
|
|
29670
|
-
summary: "install editors, list them, build with -executeMethod, the licence status",
|
|
29671
|
-
run: () => notAvailableYet("unity")
|
|
29672
|
-
};
|
|
29673
|
-
|
|
29674
29850
|
// src/guest/devtools/registry.ts
|
|
29675
|
-
var DEVTOOLS = [steamTool, fivemTool,
|
|
29851
|
+
var DEVTOOLS = [steamTool, fivemTool, androidTool];
|
|
29676
29852
|
function devToolByName(name2) {
|
|
29677
29853
|
return DEVTOOLS.find((t) => t.name === name2);
|
|
29678
29854
|
}
|