-
Notifications
You must be signed in to change notification settings - Fork 3.2k
AppImage 使用 TUN模式 不太正常: setcap会无效, 而root执行则会有错 #312
Comments
只对clash或clash-meta内核执行文件setcap 或 root试试吧 |
问题就在于 AppImage 是一体只读的... 不过目前用下来, 一人血书大佬有空了之后看能不能支持下 |
这个path是clash执行文件的path吗,自定义这个是为了干啥 |
如果能用指定位置的 clash/meta 内核,就能对内核 setcap 之后用普通权限运行 verge 了……? |
1.3.0支持GUI了对clash内核赋权,然后开启TUN应该就没问题了,可以试试 |
1.3.0 appimage 会报 GLIBC 版本问题:
额但是按我理解, appimage这种发布形式的依赖不是应该都闭环了的吗? ... @zzzgydi 注:
|
Steps to have working tun mode with appimage format. Under apprun-hooks folder, delete the line with APPDIR= in linuxdepoly-plugin-gtk.sh sudo ./AppRun and give permissions to Clash/Meta under core settings. |
AppImage 挂载的 /tmp 路径应该就是没法用 setcap,即使 sudo 也一样: sqwwqw5 的方法可以,但实际就是把 AppImage 展开运行,不挂载到 /tmp |
亲测确实可行, 我这里稍微补充整理下具体操作: ./clash-verge_1.3.7_amd64.AppImage --appimage-extract
rsync -aP --delete --mkpath ./squashfs-root/ /tmp/.your_username.appimage/clash-verge
cd /tmp/.your_username.appimage/clash-verge
nano ./apprun-hooks/linuxdeploy-plugin-gtk.sh # and comment that line
sudo setcap cap_net_bind_service,cap_net_admin=+ep ./usr/bin/clash-meta
sudo setcap cap_net_bind_service,cap_net_admin=+ep ./usr/bin/clash # 碰巧发现目前用meta版本的时候ping就会必不通, 而原版则会必成功 ...
cd -
gio trash ./squashfs-root/
desktop-file-install --dir=$HOME/.local/share/applications $HOME/tmp/clash-verge.appimage.desktop 其中, [Desktop Entry]
Type=Application
Terminal=false
Categories=Development;Network;System;Settings;Utility;
Keywords=clash;proxy;
Name=clash-verge (appimage)
Comment=手动拆解再赋权
Icon=/tmp/.your_username.appimage/clash-verge/usr/share/icons/hicolor/256x256@2/apps/clash-verge.png
Path=/tmp/.your_username.appimage/clash-verge
# Exec 如果直接用 `./AppRun` 的话, dex 能正常启动, 但 KDE 就会报说找不到了...
Exec=sh -c "./AppRun" 注: debian stable 已经升级到了 bookworm 最新, 所以才能正常使用 1.3.7 的 appimage; 只不过直接跑 appimage 的话用不了 TUN模式, 所以才需要展开来运行 |
我也遇到了这个问题,但把appimage展开的话安装和升级都比较麻烦。还是希望能提供使用系统clash的选项。 |
环境:
setcap 无效
setcap
的方案 似乎是 不适用于 AppImage 的?不过似乎可以在链接构建前用
setcap
提前处理下 ?但是这个是否只能由每个用户自己构建才有用呢?
root 会有报错
用
root用户
来启动的话, 似乎也会有各种问题:要先把
~/.config/clash-verge/
软链到/root/.config/clash-verge/
启动之后会有这样的报错:
不过倒似乎基本也能正常工作
执行过程中, 终端里会有不少这样的warning:
另外在程序窗口里 点击更新profile 的时候, 也会报:
有时(我没留意到规律, 也没确认过是否跟 root执行 本身相关) gui 会出问题, 比如:
基本只能重启应用或者clash; (最后爆内存那个, 好像等待一段时间之后也有可能会恢复正常)
这个有可能会是因为 用 root 跑 GUI 本来就容易出各种问题 吗?
any workaround ?
比如: 支持自定义 clash path ?
或者, 就只是我漏做了什么操作吗 ?
The text was updated successfully, but these errors were encountered: