SkyJourney d90d2ecd03 初始化:私有维护版 Gemini-in-Chrome 安装脚本
从 appsail/Gemini-in-Chrome (MIT) fork 并重写 install.sh / install.ps1:
- 原脚本用正则/sed 做“仅替换已存在字段”,字段本不存在时静默不生效
- 改为 JSON 感知读写(jq 优先,探测/自动装失败时降级为 sed+awk 零依赖兜底)
- 修复过程中实测发现并修掉的坑:BSD sed 不支持 GNU 的 0,/re/ 插入语法、
  正则不容忍冒号后空格导致插入重复 key、macOS 系统自带 bash 3.2 在脚本文件模式下
  中文紧跟未加花括号的 $VAR 会解析错位丢字节
- 新增 test-fixtures/ 下完全人工构造(非真实数据脱敏)的多 profile 测试样本
- README 改为中文,下载链接指向本仓库,补充 MIT LICENSE 及上游致谢
2026-08-16 13:30:42 +08:00

Gemini in Chrome

Fork 自:appsail/Gemini-in-ChromeMIT License

一键脚本,用于强制启用 Chrome 内置的 Gemini AI 功能(绕过非美区的资格限制)。

基于上述原项目重写,修复了原脚本"字段不存在时静默不生效"的问题,改为 JSON 感知读写 (jq 优先,装不上时自动降级为 sed+awk 零依赖兜底方案),并支持同一台机器上的 多个 Chrome 账号(profile)。

快速开始

macOS / Linux

curl -fsSL https://gitea.rk-health.com/jiangshunzhi/Gemini-in-Chrome/raw/branch/main/install.sh | bash

Windows

打开 PowerShell 执行:

irm https://gitea.rk-health.com/jiangshunzhi/Gemini-in-Chrome/raw/branch/main/install.ps1 | iex

脚本做了什么

  1. 检查 Chrome 是否在运行(在运行的话会提示你先完全退出——Local State 会在 Chrome 退出时被覆写,不退出改了也白改)
  2. 💾 备份原配置文件(Local State.bak
  3. 🔧 修补以下字段(存在则替换、不存在则插入,而不是原脚本那种"只替换已存在字段"的逻辑):
    • 顶层 variations_country"us"
    • 顶层 variations_permanent_consistency_country[当前 Chrome 版本号, "us"]
    • profile.info_cache每一个 profile 的 is_glic_eligibletrue(不只是已存在该字段的那个)
  4. ✓ 写回前后都做合法性校验,sed+awk 兜底路径下用括号配平检查兜底;校验不过就自动放弃改动,不会覆盖原文件
  5. ✓ 汇报本次实际用的是 jq 路径还是 sed+awk 兜底路径,以及各字段是否生效

还原原始配置

macOS

mv ~/Library/Application\ Support/Google/Chrome/Local\ State.bak \
   ~/Library/Application\ Support/Google/Chrome/Local\ State

Linux

mv ~/.config/google-chrome/Local\ State.bak \
   ~/.config/google-chrome/Local\ State

Windows PowerShell

Move-Item -Path "$env:LOCALAPPDATA\Google\Chrome\User Data\Local State.bak" `
          -Destination "$env:LOCALAPPDATA\Google\Chrome\User Data\Local State" -Force

安全性

  • 改动前一定会先备份原配置
  • 只改本地 Chrome 配置,不上传任何数据、不访问网络(除了下载脚本本身,以及 jq 缺失时按需自动安装)
  • 改动前后都做合法性校验,写坏了会自动回滚、不覆盖原文件
  • 随时可还原
  • 非官方脚本,仅供个人研究/自用,风险自负

jq 依赖说明

macOS 上如果检测到 jq 就直接用;没有的话,检测到 Homebrew 会尝试 brew install jq, 没有 Homebrew 就直接走零依赖兜底,不会替你装 Homebrew。

Linux 上会按顺序探测 apt-get/dnf/yum/pacman/apk 并尝试自动安装(可能会弹 sudo 密码提示);装不上(比如设备网络受限)同样自动降级为 sed+awk 方案。

install.ps1Windows)用 PowerShell 原生的 ConvertFrom-Json/ConvertTo-Json,本身就不 依赖 jq

配置文件路径

系统 路径
macOS ~/Library/Application Support/Google/Chrome/Local State
Linux ~/.config/google-chrome/Local State
Windows %LOCALAPPDATA%\Google\Chrome\User Data\Local State

测试

test-fixtures/ 下有一份完全人工构造(非真实账号脱敏)的多 profile 测试样本, 覆盖了"字段缺失 / 已是 false / 已是 true"三种场景,用法见该目录下的 README。

License

MIT,见 LICENSE。基于 appsail/Gemini-in-Chrome 重写。

S
Description
No description provided
Readme MIT
48 KiB
Languages
Shell 69.8%
PowerShell 30.2%