[BUG] Installation failed Failed to fetch version from stable: AxiosError: timeout of 30000ms exceeded
Status Open
Maintainer reply None cached
Activity 13 comments · opened Dec 9, 2025
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
The native installer fails with timeout errors on Ubuntu 22.04, despite curl successfully reaching all required endpoints. The installer times out at two different stages:
- Initial version fetch - 30-second timeout fetching from https://storage.googleapis.com/.../stable
- Binary download - 10-second timeout downloading from https://downloads.claude.ai/claude-code-releases/2.0.61/linux-x64/claude
Both endpoints respond successfully to curl commands with 200 OK responses.
The same installer works successfully on Ubuntu 24.04.
What Should Happen?
Installer should successfully download and install Claude Code, as it does on Ubuntu 24.04.
Error Messages/Logs
Key error from logs:
2025-12-09T19:02:39.044Z [ERROR] Error: Failed to fetch version from https://storage.googleapis.com/claude-code-dist-86c565f3-f756-42ad-8dfa-d59b1c096819/claude-code-releases/stable: timeout of 30000ms exceeded
2025-12-09T19:02:39.045Z [ERROR] Install command failed: Error: Failed to fetch version from stable: AxiosError: timeout of 30000ms exceeded
Network connectivity verified - all succeed with 200 OK:
curl -I https://storage.googleapis.com/claude-code-dist-86c565f3-f756-42ad-8dfa-d59b1c096819/claude-code-releases/stable
curl -I https://downloads.claude.ai/claude-code-releases/2.0.61/manifest.json
curl -I https://downloads.claude.ai/claude-code-releases/2.0.61/linux-x64/claude
Steps to Reproduce
- On Ubuntu 22.04, run: curl -fsSL https://claude.ai/install.sh | bash
- Installer times out fetching version from stable channel
- Retry with specific version: curl -fsSL https://claude.ai/install.sh | bash -s 2.0.61
- Installer times out downloading the binary (~100MB file)
Claude Model
None
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
2.0.61
Platform
Anthropic API
Operating System
Ubuntu/Debian Linux
Terminal/Shell
Other
Additional Information
OS: Ubuntu 22.04 LTS
Installation method: Native installer (curl -fsSL https://claude.ai/install.sh | bash)
Claude Code version: Attempting to install 2.0.61 (stable)
Works on: Ubuntu 24.04 with same installer
Showing cached comments. Read the full discussion on GitHub ↗
12 Comments
This error also occurs when installing from npm on Ubuntu 22.04 LTS
for my case the npm version worked immediately on Ubuntu 22 LTS, confirming it was not a network problem
Same here.
I was having a similar issue, seems to be an IPv6 problem.
Try this to force IPv4
for me, it was when it was running the downloaded ~/.claude/downloads/claude-2.1.9-linux-x64 for the final part of the install, and Cisco CSA VPN was interfering.
Likely due to IPv6 not being available on your side and missing IPv4 fallback in the script
I was able to fix it for me (thanks Claude code for helping me fixing the Claude code installer):
After this the script worked and I could enabled the config again:
Btw this was the feedback Claude suggested:
@timkalkus nice! Claude is both polite and sensible about Claude's recommendation for how to fix the Claude installer. We should have asked Claude sooner.
For anyone still hitting this: a cleaner fix than disabling IPv6 entirely is to tell the system resolver to prefer IPv4 when both are available:
This is a permanent, one-line fix. No need to toggle IPv6 on and off.
Why this works: The root cause (as several commenters identified) is that Bun/Node resolves
storage.googleapis.comto an IPv6 address, but the IPv6 path is broken — the connection either times out or gets refused, depending on the network setup. Meanwhilecurlworks fine because it often tries IPv4 first by default.The
gai.confline sets a higher precedence for IPv4-mapped addresses (::ffff:0:0/96), sogetaddrinfo()returns IPv4 (A records) before IPv6 (AAAA records). This fixes the installer,claude update, and any other Bun-based HTTP requests to GCS, without disabling IPv6 system-wide.nice to see it work on linux. now, i guess fixing the install script as pointed out by @seanGSISG should be the way to go because we're seeing this on macos, too, using the mise package manager:
Neither @timkalkus solution of disabling IP6 nor @yuxi-liu-wired solution of setting precedence worked for me. Running Ubuntu 24.04.4 LTS via WSL.
I still get
even though a direct curl download works