setup proxy for emacs
我在 mac 上面使用 emacs 都是使用 daemon + emacsclient 模式。使用 paradox
包管理(其实就是比 list-package
稍微多了一点功能’),但是因为那些包什么的信息都在国外的网站,还有 github 什么的,导致速度巨慢甚至连不上,关键 emacs 单线程还得卡着别的操作,所以挺讨厌的(其实 paradox 提供了异步更新的方式,不会阻塞现在进程,但是有时候会不知道进度…)。
思路就是使用 proxychains
。
新建一个 /Library/LaunchAgents/gnu.emacs.daemon.plist
文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>gnu.emacs.daemon</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/proxychains4</string>
<string>-f</string>
<string>/Users/wd/.proxychains/proxychains.conf</string>
<string>/usr/local/opt/emacs-mac/bin/emacs</string>
<string>--daemon</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>ServiceDescription</key>
<string>Gnu Emacs Daemon</string>
<key>UserName</key>
<string>wd</string>
</dict>
</plist>
其中 /Users/wd/.proxychains/proxychains.conf
文件的内容如下
strict_chain
proxy_dns
remote_dns_subnet 224
tcp_read_time_out 15000
tcp_connect_time_out 8000
localnet 127.0.0.0/255.0.0.0
localnet 10.0.0.0/255.0.0.0
localnet 172.16.0.0/255.240.0.0
localnet 192.168.0.0/255.255.0.0
quiet_mode
[ProxyList]
#socks5 127.0.0.1 1080
http 127.0.0.1 6152