{"record":{"id":"e6302c7501ea4e22","repo":"diegosouzapw/OmniRoute","slug":"sudo-password-required-to-install-tailscale","errorCode":null,"errorMessage":"Sudo password required to install Tailscale","messagePattern":"Sudo password required to install Tailscale","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/lib/tailscaleTunnel.ts","lineNumber":1003,"sourceCode":"      const child = spawn(\"brew\", [\"install\", \"tailscale\"], {\n        windowsHide: true,\n        stdio: [\"ignore\", \"pipe\", \"pipe\"],\n        env: buildExecEnv(),\n      });\n      const log = createStreamLogger(onProgress);\n      child.stdout.on(\"data\", log);\n      child.stderr.on(\"data\", log);\n      child.on(\"close\", (code) => {\n        if (code === 0) resolve();\n        else reject(new Error(`brew install failed with code ${code}`));\n      });\n      child.on(\"error\", reject);\n    });\n    return;\n  }\n\n  if (!password.trim()) {\n    throw new Error(\"Sudo password required to install Tailscale\");\n  }\n\n  const pkgUrl = \"https://pkgs.tailscale.com/stable/tailscale-latest.pkg\";\n  const pkgPath = path.join(os.tmpdir(), \"tailscale.pkg\");\n\n  await new Promise<void>((resolve, reject) => {\n    const child = spawn(\"curl\", [\"-fL\", \"--progress-bar\", pkgUrl, \"-o\", pkgPath], {\n      windowsHide: true,\n      stdio: [\"ignore\", \"pipe\", \"pipe\"],\n      env: buildExecEnv(),\n    });\n    child.stderr.on(\"data\", createStreamLogger(onProgress));\n    child.on(\"close\", (code) => {\n      if (code === 0) resolve();\n      else reject(new Error(\"Failed to download the Tailscale package\"));\n    });\n    child.on(\"error\", reject);\n  });","sourceCodeStart":985,"sourceCodeEnd":1021,"githubUrl":"https://github.com/diegosouzapw/OmniRoute/blob/a179ffed5bb2e0b883b9ae7214ce8717b2a94c4d/src/lib/tailscaleTunnel.ts#L985-L1021","documentation":"Error \"Sudo password required to install Tailscale\" thrown in diegosouzapw/OmniRoute.","triggerScenarios":"Thrown at src/lib/tailscaleTunnel.ts:1003 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"}