{"record":{"id":"12705eddf4f82e0a","repo":"diegosouzapw/OmniRoute","slug":"unsupported-platform-for-tailscale-install-os-p","errorCode":null,"errorMessage":"Unsupported platform for Tailscale install: ${os.platform()}","messagePattern":"Unsupported platform for Tailscale install: (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/lib/tailscaleTunnel.ts","lineNumber":1164,"sourceCode":"      } catch {\n        // Ignore cleanup errors.\n      }\n      if (code === 0) resolve();\n      else reject(new Error(`msiexec exited with code ${code}`));\n    });\n    child.on(\"error\", reject);\n  });\n}\n\nexport async function installTailscale({\n  sudoPassword,\n  onProgress,\n}: {\n  sudoPassword?: string;\n  onProgress?: (message: string) => void;\n} = {}) {\n  if (!isSupportedPlatform()) {\n    throw new Error(`Unsupported platform for Tailscale install: ${os.platform()}`);\n  }\n\n  const password = toNonEmptyString(sudoPassword) || getCachedPassword() || \"\";\n  if (password) {\n    setCachedPassword(password);\n  }\n\n  onProgress?.(\"Checking existing Tailscale installation...\");\n  const existingBinary = await resolveBinary();\n  if (existingBinary.binaryPath) {\n    onProgress?.(\"Tailscale is already installed.\");\n  } else if (getCurrentPlatform() === \"win32\") {\n    onProgress?.(\"Downloading and installing Tailscale for Windows...\");\n    await installTailscaleWindows(onProgress);\n  } else if (getCurrentPlatform() === \"darwin\") {\n    onProgress?.(\"Installing Tailscale on macOS...\");\n    await installTailscaleMac(password, onProgress);\n  } else if (getCurrentPlatform() === \"linux\") {","sourceCodeStart":1146,"sourceCodeEnd":1182,"githubUrl":"https://github.com/diegosouzapw/OmniRoute/blob/a179ffed5bb2e0b883b9ae7214ce8717b2a94c4d/src/lib/tailscaleTunnel.ts#L1146-L1182","documentation":"Error \"Unsupported platform for Tailscale install: ${os.platform()}\" thrown in diegosouzapw/OmniRoute.","triggerScenarios":"Thrown at src/lib/tailscaleTunnel.ts:1164 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"a179ffed5bb2e0b883b9ae7214ce8717b2a94c4d","analyzedAt":"2026-08-25T18:35:09.898Z","schemaVersion":2},"datasetVersion":"2026-08-25T21:54:21.419Z"}