PocketShell v1.6.1
PocketShell v1.6.1
修复
- Linux 上应用内更新失败:v1.6.0 的
install子命令把二进制装在 root 拥有的/usr/local/bin,而服务以你自己的用户身份运行。更新时需在二进制旁写临时文件再原子替换,要求的是目录写权限,因此失败并报EACCES: permission denied, copyfile '…' -> '/usr/local/bin/.pocketshell.new'。本版把二进制改放/opt/pocketshell/(归服务用户所有),/usr/local/bin/pocketshell-agent变为指向它的符号链接,命令仍在全局 PATH 上,sudo pocketshell-agent uninstall照常可用。macOS 不受此问题影响(LaunchAgent 装在用户目录下,本就有写权限)。
升级
已安装 v1.6.0 的,在服务器上重跑一次安装命令即可迁移,密钥目录不受影响、已配对的手机不掉线:
sudo pocketshell-agent install --advertise wss://your.domain --name 我的服务器PocketShell v1.6.1
Fixed
- In-app updates failed on Linux: the
installsubcommand shipped in v1.6.0 put the binary in root-owned/usr/local/binwhile running the service as your own user. An update writes a temporary file next to the binary and renames it into place, so it needs write access to the directory — henceEACCES: permission denied, copyfile '…' -> '/usr/local/bin/.pocketshell.new'. The binary now lives in/opt/pocketshell/, owned by the service user, and/usr/local/bin/pocketshell-agentis a symlink pointing at it, so the command stays on the global PATH andsudo pocketshell-agent uninstallkeeps working. macOS was never affected — a LaunchAgent installs under your home directory, which you can already write.
Upgrade
If you already installed v1.6.0, re-run the install command on your server to migrate. Your key directory is untouched and paired phones stay paired:
sudo pocketshell-agent install --advertise wss://your.domain --name my-server