Package Details: wechat-universal-bwrap 4.0.1.7-1

Git Clone URL: https://aur.archlinux.org/wechat-universal-bwrap.git (read-only, click to copy)
Package Base: wechat-universal-bwrap
Description: WeChat (Universal) with bwrap sandbox
Upstream URL: https://linux.weixin.qq.com/
Licenses: GPLv3, proprietary
Conflicts: wechat-universal
Provides: wechat-universal
Replaces: wechat-beta, wechat-beta-bwrap
Submitter: 7Ji
Maintainer: 7Ji (devome, leaeasy)
Last Packager: 7Ji
Votes: 107
Popularity: 7.46
First Submitted: 2024-03-14 03:09 (UTC)
Last Updated: 2024-12-15 06:49 (UTC)

Pinned Comments

7Ji commented on 2024-03-14 06:21 (UTC) (edited on 2024-12-08 08:59 (UTC) by 7Ji)

本软件包在Github上亦有仓库: https://github.com/7Ji-PKGBUILDs/wechat-universal-bwrap/ (仓库未启用issues,有问题请直接在此页面提出)

各位如有改进意见,欢迎在Github仓库页提交PR :)

抓取新版本的脚本和PKGBUILD在同一层。执行python fetch_uos_wechat_release.py获取UOS仓库内的重打包版本,执行./fetch_tencent_wechat_release.sh获取腾讯官方的版本。如果发现软件过期,请善用本界面的标记过期功能。:)


默认配置下,只有~/Documents/WeChat_Data/home 作为容器内的~,其他宿主文件和文件夹均不暴露在容器内

可以编写~/.config/wechat-universal/binds.list来设置更多的被暴露到容器内的文件/文件夹,每行一个路径,绝对路径或相对于~的相对路径


要将微信文件的主要路径修改至 ~/Documents/WeChat_Data 外的其他路径,请设置环境变量 WECHAT_DATA_DIR,同理为绝对路径或相对于~的相对路径

Latest Comments

« First ‹ Previous 1 .. 19 20 21 22 23 24 25 26 27 28 29 .. 35 Next › Last »

7Ji commented on 2024-03-14 03:26 (UTC)

因为微信的原生Linux客户端现在已经作为“微信(Universal)”正式发布(见统信社区博客),不再为Beta版,本包将改名wechat-universal-bwrap。我已经将完整的git历史提交到了universal。

因AUR的限制,软件包不能直接改名,只能作为新软件包提交后,再提交合并请求。在合并前这两个PKGBUILD会共存。评论等内容在合并后也会转移到universal上。为了避免混乱(这个包名为beta却提供了universal的打包),新commit不会再往这边推送。

7Ji commented on 2024-03-14 03:20 (UTC)

@sfchen-cs6589043 这里保留了wechat-beta-bwrap的所有提交历史。我已经提交了将wechat-beta-bwrap merge到这个PKGBUILD的请求,通过的话,原来的评论等都会合并到这里。新更新就不推到-beta了,因为原生Linux客户端现在已经不是Beta了。

sfchen-cs6589043 commented on 2024-03-14 03:18 (UTC)

请问下 以后就到这里 wechat-beta-bwrap 后面会放弃维护吗

ihipop commented on 2024-03-14 03:08 (UTC) (edited on 2024-03-15 01:20 (UTC) by ihipop)

@XDwan 可能是因为这个作者封装的路径不一致

在另一个类似的bwrap wechat的aur包里面我测试过是好的。记得修改完毕重启UOS微信。

要解决也很简单的,如果内外真的不一样,调用dbus之前做一下路径转换就行。

具体作者进行一下适配就很简单。实际上传递给dbus的参数不需要真的存在于沙箱或者在沙箱内可以访问。 外部文件浏览器在外部能访问就行了。

核心逻辑是:底层还是应该进行dbus调用org.freedesktop.FileManager1而不是文件系统调用。

当然,DBUS通信的权限肯定是要给的。

7Ji commented on 2024-03-14 02:53 (UTC)

@wcz 我计划将本包改名为wechat-universal-bwrap,因为这个包的上游com.tencent.wechat是独立于原来的com.tencent.wexin的新包,uos的报导也是以微信Universal为名的。

@ihipop 谢谢提醒,我会照此测试更新下,没问题我会创建wechat-universal-bwrap并推到那边

XDwanj commented on 2024-03-14 02:46 (UTC) (edited on 2024-03-14 02:52 (UTC) by XDwanj)

@ihipop

我尝试直接修改 /usr/share/wechat-beta/usr/bin/dde-file-manager 的内容为 该脚本,又出现无法打开文件,nautilus 报错是找不到 $HOME/xwechat-files 文件夹

使用 org.freedesktop.FileManager1 API, 标准的dbus调用,Linux上知名的几个文件管理器都支持,而且不会受到文件系统沙盒的影响,只有这个失败了才应该进行hardcode的文件系统调用

我认为在文件路径上还是受到了沙箱的影响,毕竟沙箱内和沙箱外目录结构不一致。

dde-file-manager

#!/bin/bash
echo "$@" #>/tmp/fake-dde-call.log
dbus-send --print-reply --dest=org.freedesktop.FileManager1 \
        /org/freedesktop/FileManager1 \
        org.freedesktop.FileManager1.ShowItems \
        array:string:"file://${2}" \
        string:fake-dde-show-items &&  \
        exit 0
dolphin --select "$2" && exit 0
xdg-open $(dirname "$2")

日志

...
/sandbox/dde-file-manager
--show-item /home/xxx/xwechat_files/wxid_xxx/msg/file/2024-03/xxx.docx
method return time=1710384158.930300 sender=:1.165 -> destination=:1.193 serial=204 reply_serial=2
...

wcz commented on 2024-03-14 02:19 (UTC)

1.0.0.236版本的微信已经正式发布了,本软件是不是该改名wechat-bwrap了?

ihipop commented on 2024-03-14 01:56 (UTC) (edited on 2024-03-14 01:57 (UTC) by ihipop)

fake_dde-file-manager的实现方式是不对的,应该看这个文件

https://github.com/vufa/deepin-wine-wechat-arch/issues/273#issuecomment-1445156050

使用 org.freedesktop.FileManager1 API, 标准的dbus调用,Linux上知名的几个文件管理器都支持,而且不会受到文件系统沙盒的影响,只有这个失败了才应该进行hardcode的文件系统调用

sfchen-cs6589043 commented on 2024-03-14 01:52 (UTC) (edited on 2024-03-14 01:55 (UTC) by sfchen-cs6589043)

聊天中的图片 无法点击放大预览了, 图片查看器白色窗口 不显示 版本 :1.0.0.236