[BUG] Linux: login dead-ends at "Finish sign-in in the Claude app"
Status Fixed / completed
Reported on v2.1.273
Maintainer reply None cached
Workaround ✓ Mentioned in thread ↓
Activity 3 comments · opened Sep 16, 2026 · closed Sep 30, 2026
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?
when trying to login (check steps to reproduce)
The page triggers a claude:// deep link. GNOME has no registered handler,
so it opens "Open With… / No Apps Available — No apps installed that can
open '..._nonce=...'". Sign-in never completes.
Notes
- Reproduces with both Google auth and the email verification code path,
so it is not provider-specific — the failure is the app handoff.
- The desktop app ships for macOS/Windows only, so on Linux there is
nothing for the deep link to open. The web/CLI flow appears to be
reusing the desktop handoff.
What Should Happen?
Sign-in completes on Linux — e.g. redirect to a localhost callback, or
show a code to paste back into the terminal.
Error Messages/Logs
Steps to Reproduce
Environment
- OS: Linux (GNOME), kernel 7.0.0-31-generic
- Browser: Firefox
- Entry point: <claude /login in terminal | claude.ai in browser>
Steps to reproduce
- Start sign-in on Linux.
- Authenticate with Google (also reproduces with email code).
- Browser lands on claude.ai/login/popup-google-auth showing
"Finish sign-in in the Claude app" with an "Open Claude" button.
- Click "Open Claude".
Claude Model
Opus
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
2.1.273
Platform
Anthropic API
Operating System
Ubuntu/Debian Linux
Terminal/Shell
Other
Additional Information
_No response_
3 Comments
same, Ubuntu 22.04.5 LTS. Installed and logged in just fine, but when I entered my first prompt it told me I had to login, and getting the same deeplink error.
That said, i was able to work around it (thanks to claude web....) It looks like there might be the link already, it just needs to be updated with:
update-desktop-database /usr/share/applications ~/.local/share/applicationshowever that was at the end of setting it up manually, which I did before reading the whole prompt...
Since this is the official Anthropic .deb build, the binary lives at /usr/bin/claude-desktop. Here's how to register the claude:// handler manually (which also worked...):
Adding a data point that narrows this down, plus one correction to the environment assumption in the original report: the desktop app does ship for Linux now (apt repo,
claude-desktop2.2553.0), so on Ubuntu the deep link does have something to open — and it still dead-ends.Environment
claude-desktop2.2553.0 from Anthropic's apt repo.deb, not snap/flatpak)The handler was registered correctly the whole time
Both
/usr/share/applications/com.anthropic.Claude.desktopand~/.local/share/applications/com.anthropic.Claude.desktopexist withMimeType=x-scheme-handler/claude;.xdg-open "claude://claude.ai/new"andgio open "claude://claude.ai/new"both launch the app.So @adammarr's step 4 passes here, and the manual handler entry isn't what's missing in my case — yet sign-in still fails identically.
Where it actually breaks
Chrome reports success. From
--enable-logging=stderr --v=1:The app never sees it.
~/.config/Claude/logs/main.logat the same moment:Nothing about an incoming callback, ever. Instead GNOME shows the app chooser ("No Apps Available — ...
_nonce=...") andjournalctl --user -flogs:The app process is alive throughout (confirmed with
ps), so this isn't a failed launch — the URL just never reaches the running instance.The IPC path itself is fine
Delivering a URL manually to the already-running app works:
It's received, routed to the main instance, and correctly rejected because the code is fake. So single-instance delivery works; the gap is between Chrome's external-protocol launch and the app.
One thing that supports @adammarr's
update-desktop-databasehintMy user mimeinfo cache had the entry but the system one did not:
After
sudo update-desktop-database /usr/share/applicationsit reads1. I can't confirm whether that alone fixes sign-in, because by then I'd already gotten in via the workaround below — but it's worth others testing first, since the package's postinst apparently doesn't refresh the system cache.Workaround that got me in
Capture the real callback URL and hand it to the app yourself while the code is still valid:
Sign-in completes normally. Move quickly — the code is short-lived.
Things that did not help: reinstalling
claude-desktop, clearing claude.ai site data in Chrome, and forcing--ozone-platform=x11instead of native Wayland.i think they fixed it because its working fine now. i am closing the issue.