[Bug] Omarchy 上 AUR 安装的 Cindy 两个版本均出现登录异常及应用内更新失败
- Dominant language
- TypeScript
- Stars
- 2.7k
- Forks
- 401
- Avg merge
- 21h 48m
- Merged PRs (30d)
- 776
Description
### 问题描述 / What happened
在 Omarchy Linux 上,通过 AUR 使用 `yay` 安装 Cindy 中国大陆版后,遇到以下问题:
1. 手机号登录输入收到的验证码后,提示登录失败。
2. 企业 SSO 登录在浏览器完成授权后,Cindy 仍停留在“选择登录方式”页面。
3. 开启 Beta 渠道,下载 0.1.83 并执行重启安装后,客户端仍然是 0.1.82。
随后使用 AUR 安装的 Cindy(Global)进行体验,用户反馈基本现象一致。目前提供的日志来自 Cindy 中国大陆版 0.1.82;Global 的情况属于用户补充反馈,尚未提供对应日志,不能据此认定两个版本的底层错误完全相同。
#### 期望行为
- 手机号验证码登录及企业 SSO 授权后能够正常进入已登录状态。
- 系统凭据存储不可用时,应显示明确、可操作的提示。
- 应用内更新应兼容当前安装方式;如果 AUR 安装不支持现有更新路径,应明确说明并引导用户通过适用方式升级。
- 更新安装失败后,应明确告知用户失败原因与当前仍在运行的版本。
### 环境 / Environment
- Cindy 中国大陆版版本:0.1.82
- 目标更新版本:Beta 0.1.83
- Cindy(Global)版本:尚未提供具体版本号
- 操作系统:Omarchy Linux,具体系统版本尚未提供
- 架构:Linux x64 / amd64
- 安装来源:AUR,通过 `yay` 安装,不是用户直接安装 `.deb`
- 中国大陆版安装命令:`yay -S cindy-cn-bin`
- Global 安装命令,按用户最新提供内容记录:`yay -S cind-bin`
Global 包名待核对:此前描述为 `cindy-bin`,最新命令为 `cind-bin`。
- 中国大陆版日志日期:2026-09-16
### 复现步骤 / Steps to reproduce
以下步骤根据用户实际操作描述整理,尚未由排查者在 Omarchy 实机独立复现。
#### 手机号登录
1. 在 Omarchy 上启动通过 AUR 安装的 Cindy 中国大陆版 0.1.82。
2. 选择手机号登录,输入手机号并获取验证码。
3. 输入验证码并点击登录。
4. 实际结果:界面提示登录失败。
#### 企业 SSO 登录
1. 进入企业 SSO 登录流程。
2. 在系统浏览器中完成企业授权。
3. 返回 Cindy。
4. 实际结果:仍停留在“选择登录方式”页面。
#### Beta 更新
1. 开启 Beta 更新渠道。
2. 下载应用提示的 0.1.83 更新。
3. 执行重启安装。
4. 实际结果:重启后仍为 0.1.82,后续检查仍提示可更新至 0.1.83。
用户补充:通过 AUR 安装的 Cindy(Global)基本现象一致,具体版本及逐项日志仍待补充。
### 日志与截图 / Logs & screenshots
以下错误上下文来自 Cindy 中国大陆版,时间为 2026-09-16,UTC+8。
#### 登录错误
手机号验证码登录出现:
```text
encrypted auth account vault exists but is temporarily unreadable
login action failed action=verify-code status=503 code=CREDENTIAL_STORE_UNAVAILABLE
```
SSO 尝试出现:
```text
safeStorage encryption unavailable (atomic read)
encrypted auth account vault exists but is temporarily unreadable
login action failed action=start-browser status=503 code=CREDENTIAL_STORE_UNAVAILABLE
```
#### 更新错误
客户端成功发现并下载 Beta 0.1.83,下载进度达到 100%。应用内更新实际选择了 `.deb` 安装路径。
更新脚本出现:
```text
invoking elevated installer via pkexec
pkexec must be setuid root
install exit code: 127
INSTALL FAILED — relaunching previous binary
```
随后启动日志仍显示:
```text
=== App started === v0.1.82
```
再次检查更新时:
```text
Version check: current=0.1.82, latest=0.1.83
Update available: 0.1.82 → 0.1.83
```
### 源码定位与证据边界
- `apps/desktop/src/main/authManager.ts` 中,凭据库不可读时会抛出 `CREDENTIAL_STORE_UNAVAILABLE`;这直接阻断手机号验证码登录,并影响 SSO 登录结果处理。
- 登录动作失败后会恢复此前可用页面;SSO 因此可能回到“选择登录方式”。尚未确认浏览器授权回调本身存在独立故障。
- `apps/desktop/src/main/updateService.ts` 与 `apps/desktop/src/main/updateScriptLinux.ts` 的 Linux 更新路径使用 `pkexec` 安装 `.deb`,失败后重新启动原应用。
- 本次确定失败在提权阶段;版本未变化是安装未完成,不是版本号显示缓存。
- AUR 安装与现有 `.deb` 更新路径是否兼容仍需单独验证。
### 相关 Issue
- #1687:相关但聚焦 macOS 已登录后的刷新失败;本次是 Omarchy 新登录失败。
- #524:Linux Desktop 支持范围及 Omarchy 桌面集成相关讨论。
- #3195、#3859:Linux `.deb` 应用内安装与 Beta 渠道相关记录。
Contributor guide
Research direction
Start by reading apps/desktop/src/main/authManager.ts and apps/desktop/src/main/updateService.ts, then inspect apps/desktop/src/main/updateScriptLinux.ts and reproduce on an Omarchy Linux AUR installation. Confirm whether credential-store failures and pkexec installation failures are independent, and verify the AUR update path. Done means the login flows and supported update behavior are clear, with actionable failure messages and the running version reported accurately.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- electron, typescript
- Domain
- authentication, desktop, release
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100