MCPcopy Index your code
hub / github.com/zq1997/deepin-wine

github.com/zq1997/deepin-wine @main sqlite

repository ↗ · DeepWiki ↗
34 symbols 105 edges 3 files 0 documented · 0%
README

deepin-wine

deepin-wine环境与应用在Debian/Ubuntu上的移植仓库

使用deepin官方原版软件包

安装QQ/微信只需要两条命令

跳转查看

快速开始

常见问题

卸载清理

高级文档

版权与致谢

快速开始

  1. 添加仓库

首次使用时,你需要运行如下一条命令将移植仓库添加到系统中。

sh wget -O- https://deepin-wine.i-m.dev/setup.sh | sh

  1. 应用安装

自此以后,你可以像对待普通的软件包一样,使用apt-get系列命令进行各种应用安装、更新和卸载清理了。

比如安装微信只需要运行下面的命令,

sh sudo apt-get install com.qq.weixin.deepin

com.qq.weixin.deepin替换为下列包名,可以继续安装其他应用:

应用 包名
微信 com.qq.weixin.deepin
QQ com.qq.im.deepin
TIM com.qq.office.deepin
钉钉 com.dingtalk.deepin
阿里旺旺 com.taobao.wangwang.deepin
QQ音乐 com.qq.music.deepin
QQ视频 com.qq.video.deepin
爱奇艺 com.iqiyi.deepin

完整列表参见https://deepin-wine.i-m.dev

  1. 遇到问题?

别急,也许issue里面也有很多人碰到了和你类似的问题,搜一搜也许就有解决方案。

常见问题

没有应用图标

重新登入即可,可注销或重启。

微信/QQ等无法启动

最新版本可能会遇到这个问题,与WINEPREDLL环境变量有关,参考issue#310

QQ/微信托盘小图标显示异常

这和桌面环境有关,Linux发行版桌众多,面布局千奇百怪,并不是每一个都具有与【Windows系统托盘】对应的控件。

  • 如果是Linux Mint的Cinnamon桌面环境,那基本能直接正常使用。(不过多显示屏情况下有些问题,需要把左侧显示屏的设置为主屏幕)

  • 如果是Gnome桌面环境,任务栏就很别扭,成了个悬浮对话框,可以安装Gnome Shell插件:

  • Gnome 3.36以上版本安装 Tray Icons: Reloaded
  • Gnome 3.36及以下版本安装 TopIcons Plus

至于插件安装的方法,出门左转搜索引擎。 - Gnome 老版本的一种方法是sudo apt-get install gnome-shell-extension-top-icons-plus gnome-tweaks,注销重新登录后在tweak工具中启用对应插件。 - Gnome 新版本可以使用扩展管理器sudo apt install gnome-shell-extension-manager -y, 打开 扩展管理器, 在浏览标签页搜索Tray Icons: Reloaded并安装,然后切换到已安装标签页,确保Tray Icons: Reloaded已启用。

  • KDE之类,我没试过,请自行探索。

没办法进行QQ远程/视频通话

视频相关的功能对硬件和底层驱动的依赖很大,Wine毕竟不是Windows,100%完美模拟是不可能的。

字体相关问题

新版本的deepin-wine似乎已经能比较好地解决字体问题了,一般装上去就能用了。如果有问题,可以先尝试复制一份完整的Windows字体到Linux中。

安装依赖问题

依赖: xxxx 但是它将不会被安装

Depends: xxxx but it is not going to be installed

这说明系统试图安装xxxx但是无法装上去,这一般是你已有的软件源配置问题、或者安装过了一些有冲突的东西。

那么,你应该试着安装xxxx,执行apt-get install -s xxxx(不需sudo,只是模拟,放心测试),它一般又会接着告诉你依赖: yyyy 但是它将不会被安装,说明更底层的错误出在了yyyy,不断尝试,找到罪魁祸首,可以尝试先解决这个罪魁祸首。

更多问题

  1. 尽量多测试,排除偶然因素,可能是一个重启/删除重装就能解决的事。

  2. 多多搜索已有issues,大家都列出了各种原因探讨和解决方案了,值得一看。

  3. 新的欢迎提issue,但是也请提供Linux发行版名称与版本号、桌面环境、APT源列表等信息。

  4. Linux不是Windows,Wine也不是Windows,不要期待100%丝滑享受。

卸载清理

卸载与清理按照层次从浅到深可以分为如下四个层级。

如果只是想清除APP账户配置啥的那么请按照1清理;如果你发现程序奔溃之类的,请按照1-2清理;如果需要卸载APP,按照1-2-3清理;如果你想把一切回到最初的起点,执行1-2-3-4清理。

  1. 清理应用运行时目录

例如QQ/TIM会把帐号配置、聊天文件等保存~/Documents/Tencent Files目录下,而微信是~/Documents/WeChat Files,删除这些文件夹以移除帐号配置等数据。

  1. 清理wine容器

deepin-wine应用第一次启动后会在~/.deepinwine/目录下生成一个文件夹(名字各不相同)用于存储wine容器(可以理解我一个“Windows虚拟机”),如果使用出了问题,可以试试删除这个目录下对应的子文件夹。

  1. 卸载软件包

执行sudo apt-get purge --autoremove <包名>命令把你安装过的包给移除。

  1. 移除软件仓库

sh sudo rm /etc/apt/preferences.d/deepin-wine.i-m.dev.pref \ /etc/apt/sources.list.d/deepin-wine.i-m.dev.list \ /etc/profile.d/deepin-wine.i-m.dev.sh sudo apt-get update

高级文档

如果你是资深Linux用户,可以了解一下这部分。

移植原理

Deepin把QQ/微信之类的deepin-wine应用打包放在了deepin仓库中,因此先提取出这些应用及依赖的软件包,再减去Debian/Ubuntu等发行版官方仓库中固有的软件包,就可以打包成一个移植于对应发行版的“差量仓库”,然后把这个差量仓库的索引发布出来即可,其中的.deb可以直接重定向到Deepin官方仓库地址去。

配置过程详解

环境配置其实就是添加我自行构建的软件仓库为源,具体包括以下几步。

  1. 添加i386架构

因为deepin-wine相关的软件包都是i386的,而现在的系统基本是64位的,所以需要先添加i386架构支持。

通过dpkg --print-architecturedpkg --print-foreign-architectures命令查看系统原生和额外添加的架构支持,如果输出结果不含i386,则需要手动添加支持。

sh sudo dpkg --add-architecture i386

  1. 添加软件源

创建/etc/apt/sources.list.d/deepin-wine.i-m.dev.list文件,编辑其内容如下,

deb [trusted=yes] https://deepin-wine.i-m.dev /

  1. 设置源优先级

这步是为了降低本仓库的优先级,尽可能使用发行版仓库中固有的软件包而不是Deepin仓库的软件包,最小化风险。

创建/etc/apt/preferences.d/deepin-wine.i-m.dev.pref文件,编辑其内容如下,

Package: * Pin: release l=deepin-wine Pin-Priority: 400

  1. 添加XDG_DATA_DIRS配置

这是为了让应用图标能正常显示,创建/etc/profile.d/deepin-wine.i-m.dev.sh文件,编辑其内容如下,

sh XDG_DATA_DIRS=${XDG_DATA_DIRS:-/usr/local/share:/usr/share} for deepin_dir in /opt/apps/*/entries; do if [ -d "$deepin_dir/applications" ]; then XDG_DATA_DIRS="$XDG_DATA_DIRS:$deepin_dir" fi done export XDG_DATA_DIRS

  1. 刷新软件源

sh sudo apt-get update

版权与致谢

这个git仓库中的代码只包括了移植版软件仓库的构建工具,最后仓库中软件包的下载地址会被301重定向到deepin的官方仓库(或者镜像)中去,其版权由 deepin 所有。

本项目受 wszqkzqk/deepin-wine-ubuntu 项目启发,改进了一下安装方式,因此兼容原项目,已经按照deepin-wine-ubuntu项目安装好后,依然可以再按此项目进行配置,可以更方便地进行后续更新。

Core symbols most depended-on inside this repo

open
called by 6
repo.py
log
called by 6
make.py
add
called by 5
repo.py
close
called by 5
repo.py
dump
called by 5
repo.py
split_items
called by 4
repo.py
get_package_entries
called by 4
repo.py
thread_run
called by 3
make.py

Shape

Method 17
Function 14
Class 3

Languages

Python100%

Modules by API surface

repo.py22 symbols
make.py12 symbols

For agents

$ claude mcp add deepin-wine \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact