Linux下为Chrome开启代理

 Linux  Chrome  Proxy  Linux 󰈭 463字

由于没有使用集成的桌面环境, 因而chrome没法读取全局代理的信息, 每次更新AUR chrome后都需要手动修改对应的桌面文件… 这里小小mark一下解决办法, 并给出 ALPM 钩子代码

命令行配置代理

Rofi命令行启动的应该是桌面程序(?), 在这个地方:/usr/share/applications/google-chrome.desktop

其中有三个入口:

Text
 1[Desktop Entry]
 2...
 3Exec=/usr/bin/google-chrome-stable --proxy-server="127.0.0.1:7890" %U
 4...
 5
 6[Desktop Action new-window]
 7...
 8Exec=/usr/bin/google-chrome-stable --proxy-server="127.0.0.1:7890"
 9
10[Desktop Action new-private-window]
11...
12Exec=/usr/bin/google-chrome-stable --incognito --proxy-server="127.0.0.1:7890"

不使用无痕的话应该不需要改第三个, 但是前两个好像是有必要的(大概确切来说只有某一个是真正在其中起作用的, 但是我懒得测试了), 之前某一次就是只改了一个却没有看到第二个, 导致一直不成功; 此外rofi也需要重启电脑应该, 不重启的话还是不走代理, 重启后即可.

ALPM 自动化钩子

/usr/share/libalpm/hooks 创建自动化钩子, 在 chrome 安装/更新后, 执行 sed 进行自动化地添加.

Text
 1# /usr/share/libalpm/hooks/chrome-proxy.hook
 2[Trigger]
 3Type = Package
 4Operation = Install
 5Operation = Upgrade
 6Target = google-chrome
 7
 8[Action]
 9Description = Adding proxy settings to Google Chrome desktop entry
10When = PostTransaction
11Exec = /usr/bin/sed -i 's/^Exec=\/usr\/bin\/google-chrome-stable/Exec=\/usr\/bin\/google-chrome-stable --proxy-server="http:\/\/127.0.0.1:7890"/' /usr/share/applications/google-chrome.desktop

参考:

Gnu Stow 管理配置文件

使用 Stow 可以同步管理这些细琐、零散的配置文件, 目前已更新到对应的 dotfiles 仓库中.

嗨! 这里是 rqdmap 的个人博客, 我正关注 GNU/Linux 桌面系统, Linux 内核 以及一切有趣的计算机技术! 希望我的内容能对你有所帮助~
如果你遇到了任何问题, 包括但不限于: 博客内容说明不清楚或错误; 样式版面混乱; 加密博客访问请求等问题, 请通过邮箱 rqdmap@gmail.com 联系我!
修改日志
  • Wed Feb 12 17:11:05 2025 +0800 更新: 使用 ALPM 钩子自动化 Chrome 代理
  • Mon May 29 23:05:14 2023 +0800 博客结构与操作脚本重构
  • Mon May 8 21:44:36 2023 +0800 博客架构修改升级
  • Wed Dec 7 23:08:40 2022 +0800 Linux下为Chrome开启代理